MP Fallback models
MP Fallback models allow an aircraft developer to set what aircraft model be used to render their aircraft over multiplayer if a user does not have their aircraft installed or if the aircraft is outside the level of detail range.
Using a fallback model with your aircraft
To make use of this feature, simply set /sim/model/fallback-model-index in the aircraft-set.xml file to one of the indexes in flightgear/fgdata/next/AI/Aircraft/fallback_models.xml.
This is then transmitted over the MP system and used by other clients.
For example;
<sim>
<model>
<fallback-model-index>6</fallback-model-index>
...
will use the Cub model, as index 6 refers to it in fallback_models.xml:
<PropertyList>
<!-- Default aircraft. Will also be used if an AI model is not found -->
<model n="0" type="string">/Models/Geometry/glider.ac</model>
<!-- 1-50 Single engine GA aircraft -->
<model n="1" type="string">AI/Aircraft/c172/c-fgfs.xml</model>
<model n="2" type="string">AI/Aircraft/c177/c177-g-brdo.xml</model>
<model n="3" type="string">AI/Aircraft/c182/Models/c182-ai.xml</model>
<model n="4" type="string">AI/Aircraft/c182rg/Models/c182rg-ai.xml</model>
<model n="5" type="string">AI/Aircraft/Cessna208Caravan/Models/Cessna208-ai.xml</model>
<model n="6" type="string">AI/Aircraft/Cub/Models/Cub-ai.xml</model>
...
</PropertyList>
Testing fallback models
The easiest way to test if a fallback model is working is by using two instances of flightgear connecting locally with each other for MP. To do this you first need to ensure that you have no FG_AIRCRAFT paths set (this ensures that flightgear will use the FGDATA AI/Aircraft).
Then start two separate instances, e.g.
# Instance loading the aircraft (in this case the spitfire)
fgfs --multiplay=out,10,127.0.0.1,5000 --multiplay=in,10,127.0.0.1,5001 --callsign=Test1 --disable-fullscreen --aircraft=spitfireVb --airport=EG32 --geometry=800x600 --fg-aircraft=/home/stuart/FlightGear/fgaddon/Aircraft
# Instance loading the ufo to view the above aircraft
fgfs --multiplay=out,10,127.0.0.1,5001 --multiplay=in,10,127.0.0.1,5000 --callsign=Test2 --disable-fullscreen --aircraft=ufo --airport=EG32 --geometry=1280x1000 --altitude=100 --offset-distance=0.1
Fallback model guidelines
Ideally fallback models should meet the following guidelines.
- a single .ac model which is less that 3mb
- a single texture file recommended 1024x2014 (ideally jpg, for size); less than 1mb, but ideally 300kb. resolution isn't as important as size.
- no transparent textures; and a minimum of transparent elements.
- animations (gear, control surfaces, flaps, canopy etc) are optional but good to have.
The guidelines are to ensure the fast loading of the fallback model. Generally I'd try to keep the total size less than 3mb; but ideally less than 2mb. Using 300kb for a jpeg texture is fine - but 2048x2048 is also acceptable - providing that the file size isn't too large (again jpg is good here).
How to create fallback models
Remove as much geometry as possible and then use the various simplify geometry options usually on a per mesh basis - again using your judgement to get something that still looks reasonable.
See also
Related content
Wiki articles
- Pilot List dialog