Need guidance regarding lighting for large engineering models

I think there’s some requirements in there that don’t mesh together too well.

First of all, having THOUSANDS of individual Meshes is going to kill your performance as your DrawCalls will skyrocket. You absolutely have to pack large amounts of them together or you will not get any good performance which is essential for VR. And yes, this includes rethinking your UV Maps and Materials. You can pack them together per Material, for example. That on the other hand might mean that some meshes are always going to be visible and never culled. Let’s say you give all the bolts on the machine the same Material and pack those bolts into a single Mesh. There will be bolts everywhere on screen, no matter where you look, so those will never be culled and always be rendered. You have to be smart about how you approach this.

Depending on how highres your shadows will be it’s absolutely possible to shadowmap a large mesh. In the end, it’s always about your target hardware. Again, you can split up that terrain into parts.

What most likely won’t work is 200% Screenpercentage, Forward Shading AND Dynamic Lighting. For VR to work you have to cut corners, think out of the box. Most VR projects use static lighting wherever they can because it’s increadibly cheap, once baked. Dynamic Shadows and VR are not a good idea and should be used in small scale cases, if at all.

  • Ambient Occlusion just as several ScreenSpace effects (ScreenSpaceReflections, …) do not work in Forward Shading.
  • Distance Field Shadows look nice but are pretty expensive as they are, again, a realtime shadowing technique.
  • Cascaded Shadowmaps is the shadowing technique that the directional light uses for it’s dynamic lighting. It’s like a series of shadowmaps with shrinking resolution that get blended in the farther the shadow is from the camera.