Lighting practices for static and skeletal meshes

Platform: Mobile (iOS)

I’m wondering what the best practices are for matching lighting between skeletal and static meshes. I understand both receive light differently and from different light sources and that is why I’m having an issue. In the scene below, I have three lights in my scene; two PointLights set to Static, and one DirectionalLight set to Stationary. As you can see, I have my main kitchen cabinet base as a static mesh, and the cabinet doors as skeletal meshes, since they will open and close. My directional light is at an extreme angle to exaggerate this example, but it is annoying matching the lighting for a skeletal mesh to match a static mesh and seems impossible. My next idea was to just make the cabinet base a skeletal mesh as well, but I’m not sure if that’s the best idea. Thoughts?

When lighting skeletal meshes with static lighting there is no way for the skeletal mesh to cast shadows or be properly lit as accurately as a dynamic light would be able to do.

To calculate how a movable/skeletal mesh should be lit there are volume lighting samples placed around the world within the lightmass importance volume that get the light intensity for that part of the scene. These are used a volume texture that is applied to the skeletal/movable mesh when moving through the world or placed in the world to give a more accurate look.

By default the lighting volume samples is set to 1. If you lower this it will place more samples within the lightmass importance volume to provide more accurate results.

You can adjust the sample placement by going to World Settings > Lightmass > Volume Lighting Sample placement scale.

Lower the value to something between 0.1 and 1 to place more samples. Using more samples will use more sample memory and increase light build times.

You can view the samples by placing a lightmass importance volume in your world around the playable area. Build Lighting. Then go to Show > Visualize > Volume Lighting Samples

I hope this helps.


Thanks Tim,
you solved my problem :slight_smile: