As you can see, the static mesh shows Normal Maps, Roughness, Metallic, Ambient Occlusion properties but the skeletal mesh doesn’t.
Both of these are the same meshes, with same UVs and have the same material applied to them. The only difference I can think of is that the static mesh is only the Weapon while the skeletal mesh is Weapon combined with Hands.
The material has checked on ‘Used wit Skeletal Meshes’ and ‘Used with Morph Targets’. But it still doesn’t seem to work.
Am I missing something? How can I fix this?
Well, I don’t exactly know what the problem was. But previously, the gun and the hands in the skeletal mesh were combined into a single mesh. I separated them into two meshes and the materials apply correctly now.
But there’s still a problem. The lighting seems to be incorrect on the skeletal mesh.
At the same place where it looks smooth in the Asset Window, You can see the polygons in the game. That is not the normal map, those are polygon outlines. It looks like a low poly mesh compared to the static mesh.
After some searching, It seems that Static Meshes and Skeletal Meshes receive lighting differently. Can that be the problem? Or is there anything else I am missing?
In modern 3D graphics, surfaces can be shaded smooth or flat. These ultimately determine the final normals of the mesh. On the static mesh, the round area is shaded smooth. On the skeletal mesh, the round area is shaded flat. So, although it looks like its from the lighting, it’s really the smoothing, which affects the normals. It should be easy to fix in a 3d editor, or it’s just incorrect export settings from your 3d editor.
I don’t think smoothing is the problem here. Because If it was, then the static mesh would have also looked like that, but it doesn’t. Also, as I said, both meshes are the same. One is exported with a skeleton and other without the skeleton. Topologically, they are the same.
I tried setting the faces to smooth shading in Blender and while the artifacts have gone, the mesh still looks different. Because the static mesh is not smoothed.
I expected the skeletal mesh to look exactly like the static mesh (Well because it’s the same mesh), but it just doesn’t seem to work.
Well, I found the problem. After some tinkering, I noticed that the skeletal mesh would look fine without any animation applied. But as soon as I added an Animation Blueprint, the artifacts would appear.
Turns out my skeleton had a scale of (0.01, 0.01, 0.01) and that does not work well.
I applied the scale in Blender and redid the animations and now it looks correct.
Thanks for the help, Much Appreciated!