The SDK documentation explains what's required:
docs.flightsimulator.com
Hi Rob:
That is certainly a helpful part of the documentation to be considered.
It was interesting to read what I believe may be new info, in the inferred disclaimer Asobo included on that web page:
"
SCENERY LODs
NOTE: Due to the addition of
SimPropContainers to the simulation, this page is only relevant to the
legacy method of modelling scenery, ie: large-scale modelling.
In order to ensure optimal performance in Microsoft Flight Simulator 2024 for the models created for your add-ons (scenery, airports, aircraft, etc..) it is important to have a series of
LODs created for each model. This is because levels of detail will be loaded into memory
only when necessary, ie: only the data necessary to display a model will be loaded into memory at any time. To make sure this actually functions as designed by optimising performance,
it is important that lower resolution LODs use less memory. Note though that the sum of the LODs in memory can still be relevant if an object is instantiated multiple times all around the player. In that case, multiple (or even all) LODs may be loaded and displayed at the same time, thus exist in memory at the same time, making optimising everything of paramount importance."
It was interesting as well, to read what i believe may be new content in the first part of this web page on SimPropContainers (linked above):
https://docs.flightsimulator.com/ms...ling/Landscape/Modeling_SimPropContainers.htm
"
Overview
In Microsoft Flight Simulator 2020, airport buildings were generally comprised of large meshes with a lot of details, and as such were often very expensive in terms of framerate and memory. Their large dimensions meant that many of the smaller elements were displayed at all times, regardless of the distance to the camera or the size on screen of those elements, and for very large buildings the
LOD system didn't help much since the camera could be close to one part of the building but far from another - so a large number of polygons would be computed and some memory would be used for objects that are at the opposite end of the building, and either not visible or meaningless from the user point of view."
Of note (to me, at least,
and intriguing, as it was IMHO, originally not clearly explained for a lay person) ...is this content on SimPropContainers:
https://docs.flightsimulator.com/ms...Editor/Objects/ProceduralInstance_Objects.htm
PROCEDURAL INSTANCE OBJECTS
A
prodecural instance object is an object element that has procedural properties and that - when spawned - will look different based on numerous factors like geographic location, weather, etc... These objects can
only be used inside
SimPropContainer Objects and include things like airport workers, vehicles, and passengers, and can be used to add life and colour to a scene.
When you select this object type you will be presented with a list of different procedural instance elements listed in the
Objects window:
The exact number and kind of elements listed will depend on
the version of Microsoft Flight Simulator 2024 that you are running as well as what packages you have installed and whether you have added any
custom ProceduralAssets packages.
https://docs.flightsimulator.com/msfs2024/html/2_DevMode/Project_Editor/Asset_Types.htm#h3
ProceduralAssets
This asset type is used for the materials and models and other base assets that are used to generate procedural assets (ie: buildings and other scenery objects that are generated randomly from a few base assets and parameters). For more information please see here:
https://docs.flightsimulator.com/ms...ssets_Editor/The_Procedural_Assets_Editor.htm
THE PROCEDURAL ASSETS EDITOR
COMING SOON !
IIUC, these entities will be distinct from SimPropContainer "Library" objects ?
https://docs.flightsimulator.com/msfs2024/html/2_DevMode/Project_Editor/Asset_Types.htm#h2
SimPropContainerLib
This asset type is used for storing
SimPropContainer Objects. These assets are comprised of multiple Scenery objects or SimObj objects which are collected together in a single "container" so they can be placed as a single object within
The Scenery Editor. For more information, please see here:
https://docs.flightsimulator.com/ms...y_Editor/Objects/SimPropContainer_Objects.htm
Also of interest (to me) was that Google cited an excerpt from MSFS 'Release Notes' stating "New
Instancing option added to the Scenery...";
https://www.google.com/search?q=sit...GHfvLMMUQ8tMDegQIKxAE&biw=960&bih=469&dpr=1.5
...when the pertinent link is clicked and the page searched:
https://docs.flightsimulator.com/msfs2024/html/1_Introduction/Release_Notes.htm
...that text: "New
Instancing option added to the Scenery..." is missing.
Chris Brittain (aka "Rotornut44") asked a question on this in March 2025 at MSFSDevSupport;, curiously, he has not (yet ?) received a reply.
https://devsupport.flightsimulator.com/t/properties-use-instancing/13660
Chris cited an SDK Doc that I had also read with great interest (and some uncertainty as to what was being inferred):
https://docs.flightsimulator.com/ms...de/Scenery_Editor/Objects/Scenery_Objects.htm
"
Use Instancing
This option can be used to enable
object instancing for the object being placed. This means that each time you place the object in the scene, you will be adding an "instance", and all instances will be batched and drawn in a
single draw call. For an object to be instanced, it cannot be animated nor have multiple nodes - although it can use
fast lights - and the property options will be limited."
Note that this is from MSFS 2024 SDK Docs "
flighting".
When I first read through all info I could find on this in MSFS SDK Docs, it seemed to be alluding only to "
Batching" 3D objects as in FS2Kx.
If that is the case, I am not seeing how this is true "instancing" by the MSFS run time rendering engine, and is IIUC only "
batched draw calls".
https://docs.scenery.graphics/scenery/advanced-topics/instancing
https://github.com/microsoft/DirectXTK/wiki/Multistream-rendering-and-instancing
https://blender.stackexchange.com/questions/254591/instancing-objects-new-kinda-feature
It was not clear as to whether Asobo has yet implemented true DirectX-12
View Instancing:
https://www.google.com/search?q=Dir...AuMbgHb8IHAzItMsgHDIAIAQ&sclient=gws-wiz-serp
https://learn.microsoft.com/en-us/w...d3d12-id3d12graphicscommandlist-drawinstanced
IIUC, Unity already has implemented this:
https://docs.unity3d.com/2020.1/Documentation/Manual/GPUInstancing.html
A NVidia web page explains the distinctions when referring to "instancing", that IIUC, has been available since DX-9 hardware shipped.
https://developer.nvidia.com/gpugem...mplexity/chapter-3-inside-geometry-instancing
But perhaps promoting "
non-legacy"
SimPropContainer 3D modeling in MSFS is the 1st step towards 'phasing in' DX-12 View Instancing ?
I am generally encouraged by what I see (Asobo
did previously state SimPropContainers was a work-in-progress still being developed).
GaryGB