The majority of information on these pages focuses on static meshes; I’m working with a skeletal mesh that has not many of these options. Since the lighting isn’t being baked onto this model, things like light map resolution don’t seem like they would help reduce the artifacts.
It seems like a higher poly count and possibly a better normal map bake from a higher-res model are the only ways to improve the shading quality on a skeletal mesh. Would that be accurate? Or am I missing something?
EDIT: Just now I threw my marshmallow material on a built-in primitive sphere that has about the same level of topology as my mallow man and got significantly less grid-like artifacts. It seems there may also be a problem with Blender’s smoothing on export?
That seems to be the likely cause. I’m going to try getting ahold of Maya somehow and see if it spits out better results, which would be a shame; if the problem can’t be solved because Blender just can’t spit out a proper model, then this project is kind of dead in the water.
It definitely is possible to get proper smoothing imported from Blender, though I can remember it being problematic till getting the settings figured out. Let me see if I can dig of a screen grab of my export settings.
Further information: I acquired Maya for some quick tests and found that Maya’s exporter produces meshes with the same problem, which tells me that it’s not Blender (which is encouraging). Looking at the documentation that Logan provided below, I noticed that some of the images showed the same grid-like shadowing on sphere primitives.
The only thing I have left to try is to generate a high-quality normal map in xNormal (I’ll have to use a friend’s PC, xNormal doesn’t have a Mac version) and see if that works. If it doesn’t, I may have to decide that it isn’t possible to reduce this effect.
Curious: how to you mean smoothing is interpreted as tesselation? I want to make sure that we’re using terminology to mean the same thing to avoid confusion, since I just noticed that Maya has a “smooth model” option that Blender refers to as subdivision; I’m concerned with shading on a deliberately low-poly model.
Hmm, I was under the impression that smooth shading simply effected how the surface normals are shaded, and was a completely separate thing from tessellation which actually modifies the underlying polygons at runtime.
I know with smoothing groups when exporting from maya you need to turn on triangulate. This will tell the engine not to try and interpret the smoothing groups on its own but leave it up to the modeling software.
First off, importing as a static mesh dramatically reduced the grid effect.
Secondly, while turning off Ambient Occlusion didn’t solve the problem, turning off dynamic shadows did. This leads me to believe that the problem rests in the directional light and the shadows that it is casting. I’ll fiddle with some settings and post updates.
Not sure tessellation applies; it says tessellation is a DX11 feature and I’m on a Mac. Does it function in OpenGL?
In regard to light map resolution, that seems to be for static meshes; the problems I’m having are on skeletal meshes. In response to Hyperloop above I tried importing the mesh as a static mesh and the problem was not present, and as I discovered below, turning off dynamic shadows made the effect disappear. I’m fiddling with settings on the light source (a directional light) to see if that solves the problem. Do you have any suggestions?
Took a new screenshot. The mesh on the left is using a standard diffuse material (pure white), while the one on the right is using a preintegrated skin material (also pure white, with white subsurface color). Notice that the effect is much more present on the right mesh.
There doesn’t seem to be much else I can do to improve the shading on the subsurface models, so I may just have to emulate the effect, perhaps with careful application of emission materials.
Since your character has no surface color and you don’t have to do any tricky hue shifting for the scattered light, you could probable emulate the effect on the right pretty well with an emissive channel with a parameter that you tie to the brightness of the light in your level. Also check out the “Fuzzy Shading” node, if you are going for a marshmallow look, that may help get you there as well since marshmallows have a sort of velvety texture.