Dynamic Vs Baked Static Lighting for Archviz

I’m a beginner in Unreal, and trying to understand the best workflow for archviz.

Typically, my projects involve bringing in architecture models of buildings from 3DS Max with millions of polygons/objects.

I prefer to add materials within Unreal, instead of trying to import from datasmith or manually.

Lumen is so desirable for many reasons, but my research tells me that baked lighting is better for archviz.

Here are the main differences as far as I understand them:

Lumen:

PROS

  • Way faster to light a scene from scratch in real time without waiting around during “build lighting”
  • Very straightforward to import a scene from 3DS max using Datasmith

CONS

  • Lower quality- (and mirror reflections are currently impossible to achieve)
  • Requires higher hardware performance (lower FPS for packaged projects on slower machines, unideal for Pixelstreaming)

Baked Lighting:

PROS

  • Higher quality lighting + accurate reflections
  • Does Not require high spec hardware (great FPS for packaged projects on slow machines and ideal for pixelstreaming)

CONS

  • Building lighting from scratch is not real time, takes a long time to build lighting. GPU light building crashes often.
  • Not a straightforward process of importing from 3DS Max and manually adjusting lightmaps.

Essentially, using lumen is ideal as it works so easily to set up lighting with datasmith imports from 3ds Max right away.

On my machine with a RTX 3080, my scenes run smoothly with decent FPS once I have fully developed them with materials and lighting. The issue is that I need our packaged projects to run smoothly on clients lower end machines, or through pixel streaming, and the FPS is just so bad. I can deal with the loss of quality from Lumen for reflections, but I need things to run smoothly…

Lightmaps to me just seem so nuanced and complicated, but If baking the light is the only answer to this issue- I need to understand if this is even possible with the scale of the scenes I work with.

For my 3Ds Max models to bake correctly in UE5, what exactly is it that needs to be done in order for the datasmith imports to work? Going in manually to millions of different objects to adjust the lightmaps for these huge building models just is not a feasible option. Is there an automated process for this?

Feeling overwhelmed, and would much appreciate any clarity that could be given to me on this topic!

Any solution ?

but with ray tracing you can get the intended photorealistic results just like baked lighting but yea the hardware requirement is huge

I’d suggest forgetting about lumen vs static baked lighting for arcviz altogether. Use Path Tracing for the best possible quality.

Use nanite for your meshes and in movie render queue settings put this in the console variables: r.RayTracing.Nanite.Mode 1

Setting up Lightmaps can be cumberstone, but it is not impossible though.

I suggest some form of automation during the Datasmith import process could be handy: basically automatically enable lightmaps for each imported mesh (“Generate Lightmap UV” setting), and scaling lightmap resolution according to the size of the mesh (“Min Lightmap Resolution” setting).

I think it is feasible to automate this step with some custom import pipeline.

Once this have been automated, then the rest should just to manually build the lightmap (which could take a lot of processing time indeed).

Start small:

  • Have a sample 3DSMax scene, with a few objects of various sizes
  • For each mesh, adjust the mesh settings to generate lightmaps correctly
  • Generate the lightmap, and see what happens
  • Tweak the settings until you find what’s right for your typical objects
  • Once you found the best settings, try to automate this in a custom import pipepline (if this is feasible)

Good luck !

Hint: the “Lightmap density” view mode might help you to find the best lightmap resolutions according to the object sizes

my 2 cents: the engine could use some defaults for lightmapping. like 5 cm per luxel for average gi smear. the world space bounding box scale could make automatic adjustments to the lightmap scale of any prop or blockout mesh. that’s unless you need more shadow detail and tweaks. also… light (GI) and shadow could be decoupled and deliver different light map and shadow map resolutions. or hybrid light and shadow code. baked lighting with realtime shadows. you know?1?

in terms of performance for archviz: it will almost always be mostly static lighting. there’s no point computing dynamic lighting. just bake it offline. it will run on a toaster to present it to a customer.

if you modify it on the fly you gonna need a decent laptop to run lumen, but simple lighting is very much achievable without using path tracing.

it depends, really. if you render a previz for a customer? you bake or render a pathtraced video. if you’re on site with them, deal with the computation. archviz be archviz. hmm