I am creating a complex scenery package that includes a multitude of custom
scenery objects imported from blender, as well as hundreds of SimObjects
(aircraft, vehicles, people). Due to the nature of the scenery, I cannot
reduce the number of SimObjects. This can be quite taxing on mid and low end
machines, so I’m looking for ways to optimize performance. I’d like to create
low poly, static display versions of the default MSFS aircraft to be used
solely for scenery, but this process can be a bit time consuming. I’d also
like customizable animated people to be used around the airport, but I’m not
skilled enough with Blender to be able to successful get these into my
scenery. Any & all tips would be appreciated. Thank you! Scott
The main things that helps with performances for complex sceneries in MSFS
are: - Use LOD Levels, extensively. Like up to 5-6 LOD for each model. Make
each LOD level to be roughly half polygons of the previous one, and use the
LOD debugging tool to optimize the loading distance based on the object size.
- If you have lots of repeating objects, use Instances. I don’t know how if
these are supported in the Blender exporter but, in 3DS Max, “Instances” can
help reducing both the .GLTF size and memory usage and fps as well, especially
if you have lots of medium/high poly identical objects repeated many times,
for example in a parking lot with many cars, but not so many different models.
If you’re not super fussed about your own movements for animated people this
technique using Mixamo animations works.
<https://www.fsdeveloper.com/forum/threads/quest-for-animated-people-
distorted-animation-in-msfs.452304/post-885790> You’ll need to add your own
xml and there’s a sample file here -
<https://www.fsdeveloper.com/forum/threads/animated-people-character-
animation.449256/post-902506> All you have to do is change the GUIDs and the
name of the XML itself. The animation name remains the same for all the models
you download. You only use Blender for exporting the inital static model.
After that you don’t need it. The range of animations is pretty limited and
largely static so you won’t have people walking everywhere but it works.
Thanks. Is there a way to force lower LODs for anyone who downloads the
scenery? I can edit the LOD in Devmode, but it doesn’t affect the SimObjects
included in the project in subsequent loads. The custom models I’ve added to
the game are pretty low poly, it’s the MSFS SimObjects that I’m suspecting to
be frame killers. Blender seems to allow instances, so I’m going to attempt to
create groups of scenery rather than 1 object at a time. Some generic
character movements will be nice with various persons, but I do need a
specific movement (aircraft marshalling but in areas not near assigned
parking). Mixamo doesn’t have that movement in their library.
Hello @Eaglepilot6 If you want to have low poly static versions of SimObjects,
you can reuse the GLTF to create a ModelLib. There’s no way to force the LOD
selection for an existing SimObject, the behaviour will depend on their
graphic settings. Regards, Sylvain
Thanks Raccoon, I thought that was the case and am just about finished
building a library of static aircraft.