Lightmapping in Unity for skinned mesh renderer

Hey all,

I'm a beginner in Unity and I have been using the Lightmapping in unity which is great. The problem is everything works fine with mesh renderer but when I import a character from 3D max I have skinned mesh renderer which isn't working with the lightmapping. Help?



Lightmapping only works with static objects since it's precalculated (but i guess you know that). The SkinnedMeshRenderer is used for animated meshes. I'm not sure, but i think unity automatically add a mesh renderer when your fbx/model/asset contains an animation. Maybe you can export your char without animations and try it again. Anyway, you can just use the Mesh of your imported model.

  1. Create an empty GameObject
  2. Add a MeshFilter and a MeshRenderer component
  3. Drag-drop the Mesh (not the whole model) onto the mesh property of the MeshFilter.
  4. Finally you can turn it into a prefab for multi instantiating.

ps. the Mesh is nested in your imported model. if you have an instance of your skinnedmeshrenderer in the scene, just click on the mesh property to view the mesh location inside the model asset.

I tried placing multiple directional lights in the scene and assigning a culling mask only for the character. I also can place a light over the character's head to become part of it with the addition of the culling mask as well.

These works but surely there's a more efficient way to light up my character!

Finally! I have solved it!

If anyone faces the problem as I did, simply go to the materials assigned to your character and select for each texture "self-illumin" then "diffuse", instead of the normal "diffuse". And there it is, an animated character that looks just as good as it does in max :)