Optimize an existing MSFS scenery project¶
Open Blender, then select Google Earth Decoder Optimization Tools
> 2. Optimize an existing MFSF scenery project
in the top menu.
Set up the project optimization¶
- check the path to the folder containing the Arcachon MSFS scenery project, in the
Path of the project
field: here F:\MSFSProjects\ - check the project name, in the
Project name
field: here Arcachon. - check the author of the project in the
Author of the project
field: here Thalixte. - indicate the number of parallel Blender tasks in the in the field
Number of parallel Blender tasks
: here 4. - the Lily texture packer Blender addon is installed, so enable the texture baking by ticking the
Bake textures enabled
checkbox.
What is texture baking ?
Here, texture baking is the process of merging all the textures of a 3D object into one single texture, respecting the UV map of the 3D object corresponding to the photogrammetry tile. It can reduce by a factor of 10 the number of textures of the MSFS scenery project, reducing the CPU cost of your scenery by decreasing the number of I/O operations.
Run the optimization process¶
If all the settings are correctly set, the Optimize an existing MSFS project scenery... button should be enabled.
Just click on this button, and a Blender window console will appear on the screen.
The Blender window console will appear on the screen. Once finished, you should see this on the console:
The building process is automatically executed by the MFS fspackagetool exe. At the end of the process, you should see this window:
In MSFS, the resulting tiles after the optimization process are presented here (to ease the understanding, the tiles have been moved over the sea):
Note that the tiles that are entirely in the water have bee removed.
Unknown tiles
As some tiles are removed by the optimization process (for instance, tiles that are entirely in the water), this can result in "unknown" tiles in the Scenery Editor window (in dev mode). Those "unknown" tiles can be safely removed from the scenery.
In the Arcachon MSFS scenery folder, if you open a gltf file corresponding to a tile (which is in a json format), you should see this as the first lines of the gltf:
{
"asset": {
"generator": "Scenery optimized Khronos glTF Blender I/O v1.2.75",
"version": "2.0",
"extensions": {
"ASOBO_normal_map_convention": {
"tangent_space_convention": "DirectX"
}
}
},
"extensionsUsed": [
"ASOBO_normal_map_convention",
"ASOBO_tags",
"ASOBO_material_fake_terrain",
"ASOBO_material_day_night_switch",
"ASOBO_asset_optimized"
],
In the material definitions, ASOBO extensions (road traffic, collision detection, day night switch and lightning adaptation for ground tiles) have been added:
"materials": [
{
"doubleSided": false,
"name": "Material_0",
"pbrMetallicRoughness": {
"baseColorTexture": {
"index": 0
},
"metallicFactor": 0
},
"extensions": {
"ASOBO_tags": {
"tags": [
"Road",
"Collision"
]
},
"ASOBO_material_day_night_switch": {
"enabled": true
},
"ASOBO_material_fake_terrain": {
"enabled": true
}
}
},
...
]
As Lily texture packer Blender addon is installed and the texture backing is enabled, the number of textures has decreased:
Arcachon
└───PackageSources
├───modelLib
└───texture
21537373625050516_LOD00_0.png
21537373625050516_LOD00_1.png
21537373625050516_LOD00_10.png
21537373625050516_LOD00_11.png
21537373625050516_LOD00_12.png
21537373625050516_LOD00_13.png
21537373625050516_LOD00_14.png
21537373625050516_LOD00_15.png
21537373625050516_LOD00_16.png
21537373625050516_LOD00_17.png
21537373625050516_LOD00_18.png
21537373625050516_LOD00_19.png
21537373625050516_LOD00_2.png
21537373625050516_LOD00_3.png
21537373625050516_LOD00_4.png
21537373625050516_LOD00_5.png
21537373625050516_LOD00_6.png
21537373625050516_LOD00_7.png
21537373625050516_LOD00_8.png
21537373625050516_LOD00_9.png
21537373625050516_LOD01_0.png
21537373625050516_LOD01_1.png
21537373625050516_LOD01_2.png
21537373625050516_LOD01_3.png
21537373625050516_LOD01_4.png
21537373625050516_LOD02_0.png
21537373625050516_LOD02_1.png
...