subject to change
Many thanks to u/TheStoneFox for his incredible YouTube tutorial, from which all these notes derive
TODO
- further Blender investigations around colour correction and texture 'blending'/merging into single texture file
- possible 'setup script' that sorts out the first 'file management' aspects
- further investigation into MSFS Dev tools to add lights etc within the Dev Editor
- fall down a 3D modeling/scenery creation rabbithole
- Install all pre-reqs as per notes on the YouTube tutorial (further notes to come)
- Copy
SimpleSceneryfrom Sample SDK library into a 'projects area' - Rename
SimpleSceneryfolder to a project name, refered to as<project_folder>in this documentation - Rename
<project_folder>\SceneryProject.xmlto<project_name>.xml - Rename folder
<project_folder>\PackageDefinitions\mycompany-sceneto<project_name> - Rename
<project_folder>\PackageDefinitions\mycompany-scene.xmlto<project_name>.xml - Delete all subfolders in
<project_folder>\PackageSources\modelLib - Create folder in
<project_folder>\PackageSources\modelLibcalled texture - Create folder in
<project_folder>\PackageSources\modelLibcalled <project_name>Model - Delete
object.xmlfrom<project_folder>\PackageSources\scene - Edit
<project_folder>\<project_name>.xml- Line 5 - replace
'mycompany-scene'with<project_name>
- Line 5 - replace
- Edit
<project_folder>\PackageDefinitions\<project_name>.xml- Line 1 - replace
'mycompany-scene'with<project_name> - Line 16 - replace
'mycompany-scene'with<project_name> - line 17 - replace
'mycompany-scene'with<project_name>
- Line 1 - replace
- Run RenderDoc
- Open a CMD prompt and use the following two lines
note your target for Chrome may be different - adjust accordingly
> set RENDERDOC_HOOK_EGL=0
> "C:\Program Files\Google\Chrome\Application\chrome.exe" --disable-gpu-sandbox --gpu-startup-dialog
- Make a note of the PID but don't 'OK' dialog box
- In RenderDoc, go to
File->Inject into Process - Filter by the Chrome PID and click
Inject - Ensure
Connection StatusshowsEstablished - Go back to Chrome and click 'OK' in the PID dialog
- Go find scenery in prefered Photogrammetry viewer and consider hiding any text/labels
- Once found and in 3D, in RenderDoc, click
Capture Frame(s) Immediately - Return to Google Chrome and 'wiggle' the view a bit in the map to ensure good capture of data in RenderDoc
- Double click on the capture thumbnail and ensure you see at least 3 color passes in the Event Broswer, but no more than 4
-
File->Save Capture As-> give filename and save somehwere sensible, but not in scenery project folder area - Close RenderDoc
- Run Blender
- Delete the default cube and camera
-
File->Import->Google Maps Capture - Select the RDC file from Renderdoc
- User Blender to clean up and trim down model to required size
- Tips
- Go into 'X-Ray' mode.
- Select all by pressing 'a' and select
jointo bring all objects together. - Hit TAB to enter edit mode and 'paint' the verticies you don't want and hit DELETE
- Once ready, press 'a' followed by CTRL + J to 'join' all the textures together
- Press 'a' to ensure whole model is selected and remains selected until you finish the export
-
File->Export->extended glTF 2.0 (.glb/.gltf) for MSFS - Navigate to
<project_folder>\PackageSources\modelLib\<Project_name>Model - Provide filename
<project_name>File Properties:- Format =
glTF Seperate - Textures =
..\texture\ - MSFS
- Generate/Append XML = Selected
- XML Filename =
<project_name> - Generate GUID = Selected
- Include
- Selected Object = Selected
- Custom Properties = Selected
- Geometry
- Apply Modifiers = Selected
- Leave all other options as default
- Format =
- Click export (might take a few seconds)
- Check texture folder for a bunch of images (no textures? You probably didn't select the entire model)
- Check
<project_folder>\PackageSources\modelLib\<Project_name>Modelfolder for 3 files - Edit
<project_folder>\PackageSources\modelLib\<Project_name>Model\<project_name>.xml- Line 1 - change XML version number to '1.1' and add 'encoding="utf-8"
- *Note - this is slighly different from the video, but testing has shown only these two minimal edits are enought to get this working
- Example 'fixed' XML - your GUID will be different
<?xml version="1.1" encoding="utf-8"?><ModelInfo guid="{9e69ed10-c8df-4a97-2aa0-ba2106c665c1}" version="1.1"/>
- Run MSFS
- Get yourself onto the map near where you want your model to go
-
Options->Pause Simulation -
Camera->Developer Camera -
Tools->Project Editor -
Project->Open... - Open the project using the root <projecct_name>.xml created at the start of the Process
- 'View' -> 'Inspector'
- Fill out details of the project if you wish
- Click 'Build Packages' (may take a few seconds)
- Click 'myscene' (from Project Editor) and click 'Load in Editor' from the Inspector
- Scenery Editor ->
View->Objects - Select
Polygonfrom dropdown and click 'Add' - Place exclusion Polygon around scenery you do not want any autogen scenery to show.
- Right click on the centre point of the polygon and select 'Properties'.
- Select
Exclude All - Scenery Editor ->
View->Objects - Select
Sceneryfrom dropdown - Search for your model and click 'Add'
- Place model and scale/rotate etc using the 'Gizmo' tool
- Highlight the top level project name in the Project Editor and in the Inspector, click
Build Packages - Once happy with placement and location, click
Save Sceneryin the Scenery Editor- Save
<project_name>SHPinto<project_folder>\PackageSources\scene - Save
<project_name>SCNinto<project_folder>\PackageSources\scene
- Save
- Close MSFS
- Copy
<Project_folder>\Packages\<Project_Name>folder into your MSFSCommunityfolder. - Launch Game and go have a look...