World space bound shadow maps
I'm new to Unreal Engine, so please forgive me if this feature is something that already exists.
I'm lighting a huge environment for VR where the actor will stay inside a very limited area. It's important that the props around the player are always lit and shadowed in a visually consistent way - particularly for my sunlight. Cascading Shadow Maps are doing a decent job, but I'm struggling with "fly in" style shots, where the camera sweeps in to the game area from a distance, before the game starts (these will be part of a pre rendered demo). Is there are a better approach than CSM for this type of scenario, where the camera ends up close to the "game area", so I need high quality shadows for that particular area of my level, but the visual impact of CSM for large camera moves is too high?
I have a long background in VFX for movies, and Unreal feels a lot like Pixar's Renderman back in the day, with lots of tricks involving baking, shadow maps, tons of knobs everywhere etc. What we used for scenarios like this, which is similar to CSM in a way, is to have world space bound shadow maps. You'd place a bounding box in an area of a scene, and this area gets its own shadow map for a given lightsource (you'd set the wanted resolution on the box). You could then carefully place several bounding boxes for any areas that needs high detail lighting, and the rest of the scene would get the "regular" shadow map which bounds the whole scene. Very akin to how Reflection Probes works in Unreal. Is this - or something similar - achievable in Unreal?
asked Sep 16 '15 at 08:03 AM in Rendering
If you want dynamic shadows from a distance and crisp shadows up close you could use the approach that Epic did with the Kite Demo by using a combination of CSM and Distance Field Shadows.
Using this method you don't have to worry as much about the higher performance cost of CSM in the distance for each mesh. Using Distance Fields will use a low resolution mesh to calculate the shadow at a lower cost.
As for High Detail lighting, this is where a Lightmass Importance Volume would come in handy if you were using Static/Stationary lighting, because anything within the LMV would use the World Settings values for Lightmass, and anything outside of this volume simply get a single bounce of light and lower resolution lighting. There isn't currently any option for something like this with any dynamic lighting though.
I think this should be a feasible option, given from our previous conversation on the other post that VR in this instance is not referring the Oculus or similar VR HMDs. If I'm mistaken and it is, the Distance Field option does not currently support VR HMDs.
Let me know your thoughts and if you have any follow up questions. I'm happy to help where I can.
answered Sep 28 '15 at 08:47 PM
Tim Hobson ♦♦ STAFF
Follow this question
Once you sign in you will be able to subscribe for any updates here