Is Unreal optimised for complex scenes? (Pics inside)

Just wondering if Unreal is suitable for doing complex scenes with lots of detail like the attached images. This is only one level of a 46 storey high-rise! and the boss is thinking maybe we could go down the VR route and put some of these highly complex models in Unreal. I’ve only every done simple residential house scenes – and I can already see how big of a job something like this is by cleaning up from Revit and optimising. That’s before I even consider Unwrapping. Is this just because I’m not experienced enough or is it something that isn’t achievable in Unreal?

With real time engines, generally you want to cheat as much as possible, hiding things that aren’t currently visible, merging things together that share the same materials textures, reusing textures and meshes that tile, etc.

For a project like this, how you approach it really depends on how the scene is going to be used. You might have a separate model for viewing the building from the outside and the inside. UE4 does a great job at instancing and culling so you can get away with complex scenes, but you have to be smart with how you approach them.

I agree with ZacD. It depends on the project and if you need photorealism or not. Right now I’m doing the Neue Nationalgalerie in ue4. The max model has 4700 objects. It’s too heavy to import separately (with 16gb of ram at least) and would take forever to build in HQ. Since that particular building is very wide open, i’m going the full dynamic route. I’ll try to cheat to make it look good. It’s possible if you use clever camera shots, I think. The new planar reflection actor is a huge bonus in this case because the whole building is made of glass and steel.

So what I’ve done is to import the 4700 objects model with ‘‘combine meshes’’. All objects have different material IDs in max. I’m not relying on lightmaps for this one. Just dynamic sun/sky (with lower atmosphere off to simulate a bit of G.I). I’ll use some AO so it doesn’t look too flat. I plan to put a lot of emphasis on materials and decals to add wear and tear to make up for the sub-par lighting. I’ll most probably do a lot of close up shots with slight depth of field too, to hide the fact that the G.I won’t be super realistic. I also increase dynamic shadows resolution, etc. There are many many tweaks you can do to make it look a bit better.

This is my 1st test. Everything is placeholder. But I think for this particular building, I don’t need baked G.I.


The problem with huge revit files like yours, I think, is the objects are big, too big for good lightmaps. Breaking the model into small parts isn’t always easy. Hopefully the model isn’t already triangulated!!!

It would be a great help if they made the replace functions better. Right know i dont think you can replace actors without moving its location. You need to break it up and import it as combined mesh. If you go in to the mesh editor later you can set the minimum lightmap resolution. Seems to work. I just made i test with a large building from a ifc file.

What’s the issue with meshes being triangulated on export? I thought 3ds max chamfer tool triangulates your meshes (which I use all the time) but it doesn’t seem to create issues?
I’m breaking this model up into levels. Definately. 3Ds struggles to rotate in the viewport with this model – that’s how heavy it is. I think I’m getting 10FPS lol

I just mentioned the triangulation because unreal works with triangles and modifying a triangulated model is a nightmare imo. But I suppose revit works with quads, like max.

The scene I posted above, if I import all 4700 objects separately the scene is laggy but if I use combine all meshes, i’m running at 120 fps in the editor. same polycount but 1 big object instead of 4700 small objects.

Ahh. That’s interesting. So I’ll just check “combine meshes” on import to Unreal rather that seperate meshes. Cheers Phil!

Yeah but keep in mind that using ‘‘combine meshes’’ nullify your lightmaps and you won’t be able to bake lighting. You’re going to need to rely on movable objects/lights.
Depends on your project.

The Merge Actors tool keeps lightmaps.

I’m talking about combining meshes on import. Since all meshes are now 1 single mesh… lightmaps won’t work, I’m pretty sure but I’d have to re-verify.

But I didn’t know about the merge actors tools, does it give the same clean result as combine meshes on import?

I am also curious about this. Will this have the same performance effect as that of Combine Meshes option?

I am with @heartlessphil about lightmaps not working when we combine meshes. Also, problem with using Dynamic lighting is the trade off between Quality and Performance.
@heartlessphil Is there any way to combine Static and Dynamic lighting for such huge/complex scenes?

I haven’t done enough testing, but I would assume it would have the same performance of combined meshes. What I used it for was doing a physics sim on an asset with a small light map (64x64), 64 of those meshes could fit on a 512x512 light map at the same resolution (relatively), but only count as one draw call after combined with merge actors.

If you use stationary lights, they will affect both static and movable objects. You can also have a static skylight (baked) and a movable sunlight if you want, or vice versa. It’s less realistic than all static/stationary but less ugly than 100% dynamic :slight_smile: