Optimizing a Plan for Low-Poly Export


YoderW
 Share

Recommended Posts

I've been toying with this on my own for a couple months, but I figured it was time to ask the Chief experts for advice. Sorry in advance for how wordy it may get!

 

So for our workflow, Chief is just the starting point. We import a CAD file of a home's floorplan, build the walls, doors and cabinets, place appliances, make sure the exterior looks right, then export a Collada file and send it to Lumion to render. Lumion support pointed out that our house models are pretty high-poly, so I've been using trial-and-error to find ways to reduce the poly count of our models before exporting. Earlier this year, I tried importing a 3D symbol with mostly quad geometry and it would always come in broken. I spoke to someone from Chief's support team and got confirmation from them that Chief works entirely with triangulated geometry, both importing and exporting. They said the team might be changing that for X13, but during the first public demo another support team member confirmed that change hadn't happened. In case anyone doesn't know, triangulating a model effectively double the poly count which can have a severe impact on render times. Since Lumion works similar to a game engine with aspects of real-time rendering, this also severely impacts performance just trying to decorate and set up the house. Even with our 2080 Tis and 128 GB of RAM, it can get laggy pretty quickly. Occasionally I need to model and render some of our manufacturing plants, which is when these issues get much more apparent. 

 

So my question is, do you all have any tips for lowering the poly count? I've followed the Chief article about optimizing a plan to export to the 3D viewer, but even some of our simple homes still reach 1-2 million polygons (surfaces) by the time we're done. A lot of that is detailed custom 3D symbols for most of the hardware and doors, but that's mostly thanks to the requirement of tri geometry. Since our Chief use is entirely for appearance rather than function or structural accuracy, I've been trying to remove any unseen parts I can. We place furniture and decorate entirely in Lumion now to help with that. So far I have:

  • Turned off nearly all the framing layers in the Camera View Set. I'm not sure which others are safe to turn off, but most of what's left are layers I know I need.
  • Made sure none of the cabinets have shelves or actual drawers (though that sometimes increased the surface count?)
  • Simplified the structural layers for the ceilings, roof planes, walls and floors.

 

Typing it out that doesn't sound like much, but it's been a lot of small tweaking and figuring out fixes to new issues that pop up. For example, changing interior walls to one solid drywall layer means going into the door defaults Framing section and making the Rough Opening smaller, otherwise a gap shows above doors with a smaller casing. 

 

Do you all have any other ideas, or things you've tried to lower the surface count? I've hit a wall in my own testing, but I doubt I've thought of everything. 

Link to comment
Share on other sites

6 hours ago, YoderW said:

Typing it out that doesn't sound like much, but it's been a lot of small tweaking and figuring out fixes to new issues that pop up. For example, changing interior walls to one solid drywall layer means going into the door defaults Framing section and making the Rough Opening smaller, otherwise a gap shows above doors with a smaller casing. 

 

I would disagree with who you spoke to at Lumion. Chief really uses decently low poly counts for everything. Your best bet for optimizing is taking it into a 3d optimizer program but even then the reduction will only be a few percent. NOT worth the time at all and 2M polygons is NOTHING for a 2080 TI. And in terms of RAM, your VRAM is what's important here. I run full walkthroughs on a 25M model in Twinmotion using a 1070 GTX. 
My guess is this, the models you are adding in Lumion are what is slowing things down, or the texture resolution of your material files. Want to speed things up? switch to 1K resolution textures. Really easy to cripple a computer if you're maxing out its VRAM, which happens with 4K+ textures pretty quickly. Also consider phasing your project..all of the top pros do it. I turn off parts of scenes that are not in shot. My layer stack is very organized in Twinmotion for this very reason.

Just so you know, Lumion doesn't take advantage of SLI so the second card isn't doing anything in this case.
image.thumb.png.bb1b0f23a36d4dd2f9ad1f2b30343a4a.png

  • Like 1
Link to comment
Share on other sites

First a general comment, I think you might be placing too much importance on the difference between quads and triangles.  Triangles are inherently simpler to deal with and historically most video cards have been optimized to deal with very large numbers of triangles.  I suspect your performance problems in lumion wouldn't really change much even if we added the ability to export as quads.

 

That said, if your main goal is to reduce surface counts, then you really need to pay attention to the surface count for your Chief model.  We report the current surface count on the status bar for the current camera view.  You should be able to track your changes to see what kind of affect they have on the overall surface count. 

 

In general, typical things that have a large affect on surface count are when you use lots of high surface count symbols (especially if you have imported high count symbols from other sources), highly detailed molding profiles, and pretty much anything with curves.  Combining these things can very quickly increase your surface count.

 

For example, if I take a new plan and just draw a single wall and drop a window in it, I only have about 510 surfaces.  If I change the window casing to CA-10, which is pretty detailed, I get about 1,482 surfaces.  If I then change the window to a round top, I get about 20,400 surfaces.

 

If you have a lot of these windows in your plan, you can see how quickly your surface count increases.  Assuming that you are OK with making a visual change to the model, one way to significantly reduce the surface count is to change the casing back to a simple rectangular one, which will bring the surface count back down to 3229.

 

Another example of something that can have a large affect on surface count is railings.  If I take a new plan and draw a simple 10' railing with square balusters and newels, I get about 344 surfaces.  If I change the baluster to D-05, which is pretty detailed, I now have 18,472 surfaces.  If I then change my newel post and add a molding profile for the top rail, it jumps to 21,288.  The surface count in your model will pretty much go up proportional to how many lineal feet of this railing style you have.

 

Some things probably won't have nearly as much of an affect as you might think.  A standard base cabinet has about 688 surfaces.  Turning off the drawer box and shelf will still have 615 surfaces.  In my opinion, this is probably not worth doing.  If you only need an exterior view and can't see any of the cabinets, you would be much better off just turning off their layer instead.

 

Hope this helps.

 

  • Like 1
Link to comment
Share on other sites

14 hours ago, Renerabbitt said:

I would disagree with who you spoke to at Lumion. Chief really uses decently low poly counts for everything. Your best bet for optimizing is taking it into a 3d optimizer program but even then the reduction will only be a few percent. NOT worth the time at all and 2M polygons is NOTHING for a 2080 TI. And in terms of RAM, your VRAM is what's important here. I run full walkthroughs on a 25M model in Twinmotion using a 1070 GTX. 
My guess is this, the models you are adding in Lumion are what is slowing things down, or the texture resolution of your material files. Want to speed things up? switch to 1K resolution textures. Really easy to cripple a computer if you're maxing out its VRAM, which happens with 4K+ textures pretty quickly. Also consider phasing your project..all of the top pros do it. I turn off parts of scenes that are not in shot. My layer stack is very organized in Twinmotion for this very reason.

Just so you know, Lumion doesn't take advantage of SLI so the second card isn't doing anything in this case.
image.thumb.png.bb1b0f23a36d4dd2f9ad1f2b30343a4a.png

 

Thank you for your response! Yeah, I didn't think having two graphics cards would help us much unless we had a bridge. We've got dual-monitor setups, so each graphics card is going to a different monitor. If I understand correctly this should help split the workload if I have Chief on one monitor and Lumion on the other, but I can't tell much of a difference. I haven't been able to research it much, honestly. 

I suspected Lumion itself was probably the actual problem, I just haven't had a chance to test our models out in other programs yet. I just figured it would be easier to import our decor models directly into Lumion's library rather than bog Chief down and split all the faces into tris. And unfortunately, Lumion doesn't seem to phase the model at all. When I was talking to support, they implied that Lumion is essentially always loading the entire scene except when it's rendering a specific camera shot. We can use proxies for their nature models to increase editor performance, but that's it. I try to keep most of our textures at 2K or below, with 256x256 versions for Chief. I've been trying to push for us to switch to another rendering engine for a little over a year now, it's just been a while since we had time between projects to try and learn a new program well enough to introduce it to our workflow. Usually it slows down around the holidays, so hopefully we can soon. We've used Twinmotion in the past to show some of our homes in VR, but the co-worker that set all of that up moved to another department and we've been too busy to really sit down and learn the program ourselves. We were also looking at D5 Render at one point, but last time I looked they didn't have support for any of the file formats that Chief can export. I've tried using Blender as a middleman to convert all tris to quads which usually cuts the poly count in half, but it doesn't seem to help much with performance. 

Link to comment
Share on other sites

15 hours ago, Dermot said:

First a general comment, I think you might be placing too much importance on the difference between quads and triangles.  Triangles are inherently simpler to deal with and historically most video cards have been optimized to deal with very large numbers of triangles.  I suspect your performance problems in lumion wouldn't really change much even if we added the ability to export as quads.

 

That said, if your main goal is to reduce surface counts, then you really need to pay attention to the surface count for your Chief model.  We report the current surface count on the status bar for the current camera view.  You should be able to track your changes to see what kind of affect they have on the overall surface count. 

 

In general, typical things that have a large affect on surface count are when you use lots of high surface count symbols (especially if you have imported high count symbols from other sources), highly detailed molding profiles, and pretty much anything with curves.  Combining these things can very quickly increase your surface count.

 

For example, if I take a new plan and just draw a single wall and drop a window in it, I only have about 510 surfaces.  If I change the window casing to CA-10, which is pretty detailed, I get about 1,482 surfaces.  If I then change the window to a round top, I get about 20,400 surfaces.

 

If you have a lot of these windows in your plan, you can see how quickly your surface count increases.  Assuming that you are OK with making a visual change to the model, one way to significantly reduce the surface count is to change the casing back to a simple rectangular one, which will bring the surface count back down to 3229.

 

Another example of something that can have a large affect on surface count is railings.  If I take a new plan and draw a simple 10' railing with square balusters and newels, I get about 344 surfaces.  If I change the baluster to D-05, which is pretty detailed, I now have 18,472 surfaces.  If I then change my newel post and add a molding profile for the top rail, it jumps to 21,288.  The surface count in your model will pretty much go up proportional to how many lineal feet of this railing style you have.

 

Some things probably won't have nearly as much of an affect as you might think.  A standard base cabinet has about 688 surfaces.  Turning off the drawer box and shelf will still have 615 surfaces.  In my opinion, this is probably not worth doing.  If you only need an exterior view and can't see any of the cabinets, you would be much better off just turning off their layer instead.

 

Hope this helps.

 

 

I probably am, I went to school for game design but focused on 3D modeling where they hammered into our heads that clean quad topology should be our priority. Admittedly I didn't do much in game engines, so I only recently learned that tris usually render faster. But Lumion support put such an importance on poly count when I was talking to them that I figured quads would be better. Thus why I started cutting out anything I could, even if it only saved me a few surfaces I figured every little bit helped. Since Lumion works a lot like a game engine, switching to tris may be our best bet. 

 

We don't usually do complex moldings or casings, as much as we would sometimes love to. I suspect our biggest problem is the custom symbols I've made for hardware and appliances, but I've optimized them as much as I know how to without losing quality. I'll look into it more when I have the chance, I know if I can find the time to learn how to make proper normal maps that can help a lot. My biggest hurdle is trying to make it as simple as possible for my co-workers since I'm the only one with an actual background in 3D. 

 

Thank you for the response and breaking it down like that, it helps a lot!

Link to comment
Share on other sites

1 hour ago, YoderW said:

We were also looking at D5 Render at one point, but last time I looked they didn't have support for any of the file formats that Chief can export.

 

I was looking at D5 too, but unfortunately Chief decided not to work with D5, so they were unable to make a Plugin for CA, like they have for other 3D Programs.

 

M.

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
 Share