• Which the release of FS2020 we see an explosition of activity on the forun and of course we are very happy to see this. But having all questions about FS2020 in one forum becomes a bit messy. So therefore we would like to ask you all to use the following guidelines when posting your questions:

    • Tag FS2020 specific questions with the MSFS2020 tag.
    • Questions about making 3D assets can be posted in the 3D asset design forum. Either post them in the subforum of the modelling tool you use or in the general forum if they are general.
    • Questions about aircraft design can be posted in the Aircraft design forum
    • Questions about airport design can be posted in the FS2020 airport design forum. Once airport development tools have been updated for FS2020 you can post tool speciifc questions in the subforums of those tools as well of course.
    • Questions about terrain design can be posted in the FS2020 terrain design forum.
    • Questions about SimConnect can be posted in the SimConnect forum.

    Any other question that is not specific to an aspect of development or tool can be posted in the General chat forum.

    By following these guidelines we make sure that the forums remain easy to read for everybody and also that the right people can find your post to answer it.

MSFS24 SimPropContainers

rhumbaflappy

Administrator
Staff member
Resource contributor
Messages
6,447
Country
us-wisconsin
Just to start a conversation about SimPropContainers.
This is a new thing introduced in MSFS 2024. Why do we need to be concerned with it?
Why.png


You can create quite complex scenery models (and aircraft?) with this method. For example, instead of modeling windows into your wooden_shack_027 model, you can create a SimPropContainer to add SimProp windows.
That means you can create assets (windows, doors, vents, chairs, rooftop AC units...) as library objects with proper LODs for their size and complexity, and stick them onto other objects. The result is an XML file which will be compiled to .spb and each object having it's own LOD setup.

The SimPropContainer system allows a modular approach to creating objects in the sim by controlling LODs to it's modular parts, without the need for massive destructive decimation to a single model. Examining some of the default SimPropContainers (for example, the oil rigs) shows just how complex a container can become, while easily controlling LODs for the object, and allowing higher FPS for the sim.

So let's start a discussion. Is anyone doing this with their scenery models or SimObjects? How is this done? How hard is this? Are there assets already in the default objects we can use for our own SimPropContainers?
AirportLFPG2024 in the SDK samples has a complex usage of SimPropContainers for us to look at. But there may be some advantage to using SPCs for less complex projects.
 
KPNN-terminal-Simprop.png


My SimPropContainer proof of concept. Four parts: the main building (converted into a SimPropContainer), 3 outdoor lamps (two on the other sides) and AC unit as simple SimObject with a rotating fan that turns on when the temperature exceeds 65°F.

All works very well and i kind of like it. Process is simple, like a block constructor, each part is a separate object with your own LODs, so its easy to made another building with the same AC unit for example. In this particular case SimProp maybe not necessary, but in more complex constructions very usefull imho.

Have to make lights with "invisible cube" trick, but its okey, i think.
 
An interesting topic!

@Heermeyer
May I ask how you created the building? Did you first create the entire model with all its details and then detach the details from the model? And how did you process the detached parts, as Scenery Objects or as Simobjects?

My questions relate to a problem I'm having with a model. The model is very large, both in its dimensions (80m x 80m x 95m) and in the number of polygons/verticals (5.5 million polygons/2.7 million vertices). Yesterday, I de-engineered the model, leaving only the basic structure. The basic structure now has 1 million polygons and 540,000 vertices. The level of detail (LOD) representation has improved somewhat. But what's the next step? Do I need to export all the 33 detached parts as individual objects and create them as scenery objects with their own LODs? Or do they need to be Sim objects?
 
First Scenery Object: building with only dummy cubes instead of lamps and AC just for AO baking in Substance Painter. LODs in WIP right now, but i suggest about 5 levels of it.
Second Scenery Object: lamp with standard "MSFS2024 Advanced Light" with same texture but different material. 2 LODs and invisible cube.
Third SimObject: AC unit with four LODs.
All three separated from the beginning and combined within SimPropContainer with standard sdk gizmo tool.

The same as putting them together right in SDK, but now it is a single object.
For large objects, I would probably do the same: a main big object, to which attach the remaining smaller ones. A kind of detailing. But such large objects is uncharted territory for me too, want to try a little later.
Do I need to export all the 33 detached parts as individual objects and create them as scenery objects with their own LODs? Or do they need to be Sim objects?
So i think answer is yes on first question. And no, they don't need to be done as SimObject. I did one just for testing purpose.
 
I'm not sure commercial projects could use the simprop objects already in the game, but for non-commercial projects, There are a bunch of objects ready for use. You just assemble them in DevMode. They have their own LODs, and you could study them by using the vfsprojection and MCX to break down the LOD system used.
 
I just tried twice to convert the rebuilt model to a SimProbContainer, but both times it resulted in an MSFS24 crash. I've reached the end of the line with this model. It simply doesn't work, and I suspect the problem lies with the model itself. I've been trying for three days to get it working properly, but nothing has helped. All my other models work fine; only this one is causing problems. It seems the model has become unusable in MSFS24 :-(
 
On my first attempt, i created an empty container and placed the models in it, "the right way," according to the documentation, but it didn't work. But when i "converted" the model into container, everything worked fine. On a global scale, i think this tool is best suited for Asobo itself, when you need many similar complex objects, oil platforms is a good example. For individual scenery objects it's simply a matter of structural organization.
 
Things like antennas or light enclosures or posts should disappear from your models as you decimate the model for more distant LODs. If those are separate models, you can control the decimation of the main building without worrying about how they are handled by the sim. I think you can also snap elements to curved surfaces in DevMode when creating the simpropcontainer.
 
Untitled.png


This is a Microsoft SimPropContainer. All these elements have their own LODs. What if you wanted a campsite with a dozen tents and reusable accessory objects? You'd need a library of the tents and objects. To make a scene with the tents and objects without the container feature might be more difficult, as the SimPropCreation has snapping, so each tent would have accessories snapped in place, and the whole container can then me moved around with everything properly placed. The chair, for example could be used in several different tent containers, and when you adjust the position of the tents, the chairs would all be aligned. Maybe the chair needs only 4 LODs. The tent needs six? Not a problem because they are separate.

So the SimPropContainers solve some LOD problems, but also solve some placement problems. And it becomes one object in case you want a library of tents or complex camping sub-scenes. Or maybe a library of pickup truck SimPropContainers, with different items loaded or near the trucks. There are lots of possibilities. And the sim has lots of assets that can be used in containers, just like the above tent scene. You could have a collection of basic barns or watertowers that reuse assets and can be configured more easily. You can reuse windows, doors, vents, aircons, lights, antennas... and SimPropContainers have that snapping feature that makes their creation easy.
 
While studying MSFS 2024 SDK Docs on SimPropContainers last night, (1) of multiple linked sub-topics in the docs was this:

https://docs.flightsimulator.com/msfs2024/html/2_DevMode/Scenery_Editor/Objects/Light_Objects.htm

"LIGHT OBJECTS

A Light object is an object element that is used to add different kinds of lights to a SimPropContainer Object only. When you select this object type you will be presented with a list of different light object elements listed in the Objects window:


The Light Object Elements Listed In The Objects Window

Light object elements are a visual effect that can be used to create different types of lights within a SimProp Container object, and initially you can create one of the four main light types: Disk, Point, Spot and Street Light. Note that the different light types shown in the Objects window are simply different configurations of the same properties, so you can quickly place lights of the same type, but once placed, they are all fully configurable."


IIRC, MSFS "visual effect" lights can also be used to create different types of lights NOT within a SimPropContainer object ? :scratchch


What about the info in this (and other) threads:

https://www.fsdeveloper.com/forum/threads/msfs-scenery-lights.455868/

https://www.fsdeveloper.com/forum/attachments/light-preset-png.85454/


Also, consider MCX' ability to "attach" light objects to 3D models (not explicitly specified via XML as SimPropContainers) ? o_O


Is Asobo changing the rules for the SDK (again), or is it just... "Broken English" ?:duck:

Code:
https://www.youtube.com/watch?v=90WD_ats6eE

Code:
https://www.youtube.com/watch?v=gHrsv0NVa6k

GaryGB
 
Last edited:
We used SimPropContainers in this project. We exported the Main Terminal / Control Tower / Terminal 2 and others in different parts each with their LODs. Then all the separate parts are put together in the SDK.

The only feature I wish it had would be to create empties or nodes in Blender and have the parts attach to those nodes of the main object by just typing the node name or selecting it. Kind of how the beacons are attached to objects

 
Back
Top