Also das mit dem Code ist recht simpel.
Der Entwickler von SODE hat diesen Code selbst verfasst. Er muss in die bestehende modeldef.xml kopiert werden. Die modeldef.xml befindet sich im SDK: "...\SDK\Environment Kit\Modeling SDK\bin". Man kann die Datei mit einem normalen Texteditor öffnen.
Hier der Code:
Code: Alles auswählen
<!-- ### SIMOBJECT DISPLAY ENGINE ### -->
<Animation name="SODE_Trigger_1_4SEC" guid="0e586c0a-1e20-4a01-a077-25f74198b650" length="100" type="Sim" typeParam2="SODE_Trigger_1_4SEC" typeParam="AutoPlay"/>
<Animation name="SODE_Trigger_1_10SEC" guid="0e586c0a-1e20-4a01-a077-25f74198b651" length="100" type="Sim" typeParam2="SODE_Trigger_1_10SEC" typeParam="AutoPlay"/>
<Animation name="SODE_Jetway_Leg_Extension_CTRL" guid="0e586c0a-1e20-4a01-a077-25f74198b656" length="100" type="Sim" typeParam2="SODE_Jetway_Leg_Extension_CTRL" typeParam="AutoPlay"/>
<Animation name="SODE_Jetway_Hood_Extension_Front_5SEC" guid="0e586c0a-1e20-4a01-a077-25f74198b658" length="100" type="Sim" typeParam2="SODE_Jetway_Hood_Extension_Front_5SEC" typeParam="AutoPlay"/>
<Animation name="SODE_Jetway_Hood_Extension_Aft_5SEC" guid="1e586c0a-1e20-4a01-a077-25f74198b658" length="100" type="Sim" typeParam2="SODE_Jetway_Hood_Extension_Aft_5SEC" typeParam="AutoPlay"/>
<Animation name="SODE_Jetway_Stair_Rotation_CTRL" guid="0e586c0a-1e20-4a01-a077-25f74198b659" length="100" type="Sim" typeParam2="SODE_Jetway_Stair_Rotation_CTRL" typeParam="AutoPlay"/>
<Animation name="SODE_Jetway_Bridge_Dip_CTRL" guid="24586c0a-1e20-4a01-a077-25f74198b654" length="100" type="Sim" typeParam2="SODE_Jetway_Bridge_Dip_CTRL" typeParam="AutoPlay"/>
<Animation name="SODE_Jetway_Bridge_Extension_CTRL" guid="24946255-16e6-438f-b6ae-016dd7d15feb" length="100" type="Sim" typeParam2="SODE_Jetway_Bridge_Extension_CTRL" typeParam="AutoPlay"/>
<Animation name="SODE_Jetway_Head_Rotation_CTRL" guid="24586c0a-1e20-4a01-a077-25f74198b655" length="100" type="Sim" typeParam2="SODE_Jetway_Head_Rotation_CTRL" typeParam="AutoPlay"/>
<Animation name="SODE_Jetway_Root_Rotation_CTRL" guid="24f71080-1053-46c1-aa98-12f3ad23f6a1" length="100" type="Sim" typeParam2="SODE_Jetway_Root_Rotation_CTRL" typeParam="AutoPlay"/>
<Animation name="SODE_Jetway_WheelAxis_Rotation_CTRL" guid="24586c0a-1e20-4a01-a077-25f74198b657" length="100" type="Sim" typeParam2="SODE_Jetway_WheelAxis_Rotation_CTRL" typeParam="AutoPlay"/>
<Animation name="SODE_Jetway_WheelSpin_Rotation_CTRL" guid="24586c0a-1e24-4a24-a024-25f74198b624" length="100" type="Sim" typeParam2="SODE_Jetway_WheelSpin_Rotation_CTRL" typeParam="AutoPlay"/>
<AnimationGroup name="SimObject Display Engine" guid="0xB331C7EF,0xE2BA4276,0x254A10A1,0x4B457465">
<AnimationRef guid="0e586c0a-1e20-4a01-a077-25f74198b650"/>
<AnimationRef guid="0e586c0a-1e20-4a01-a077-25f74198b651"/>
</AnimationGroup>
<!-- Part Visibility Code -->
<PartInfo>
<Name>#_SODE_SepPlane_Display_Flag</Name>
<Visibility>
<Parameter>
<Code> <!-- Masks bit 0 out of the SimVar -->
(A:VELOCITY BODY Y, number) near 0x0001 & 0x0001 == if{ 1 } els{ 0 }
</Code>
</Parameter>
</Visibility>
</PartInfo>
<PartInfo>
<Name>#_SODE_SepPlane_Hide_Flag</Name>
<Visibility>
<Parameter>
<Code> <!-- Masks bit 0 out of the SimVar -->
(A:VELOCITY BODY Y, number) near 0x0001 & 0 == if{ 1 } els{ 0 }
</Code>
</Parameter>
</Visibility>
</PartInfo>
<PartInfo>
<Name>#_SODE_Anim_FWD_Play_Flag</Name>
<Visibility>
<Parameter>
<Code> <!-- Masks bit 1 out of the SimVar -->
(A:VELOCITY BODY Y, number) near 0x0002 & 0x0002 == if{ 1 } els{ 0 }
</Code>
</Parameter>
</Visibility>
</PartInfo>
<PartInfo>
<Name>#_SODE_Anim_REV_Play_Flag</Name>
<Visibility>
<Parameter>
<Code> <!-- Masks bit 2 out of the SimVar -->
(A:VELOCITY BODY Y, number) near 0x0004 & 0x0004 == if{ 1 } els{ 0 }
</Code>
</Parameter>
</Visibility>
</PartInfo>
<!-- End Part Visibility Code -->
<!-- Jetway Code -->
<PartInfo>
<Name>#_SODE_Jetway_Operation_Flag</Name>
<Visibility>
<Parameter>
<Code> <!-- Masks bit 0 out of the SimVar -->
(A:VELOCITY WORLD Z, number) near 0x0001 & 0x0001 == if{ 1 } els{ 0 }
</Code>
</Parameter>
</Visibility>
</PartInfo>
<PartInfo>
<Name>SODE_Jetway_Root_Rotation_CTRL</Name>
<AnimLength>100</AnimLength>
<Animation><Parameter><Code>(A:VELOCITY BODY X, number)</Code></Parameter></Animation>
</PartInfo>
<PartInfo>
<Name>SODE_Jetway_Bridge_Dip_CTRL</Name>
<AnimLength>100</AnimLength>
<Animation><Parameter><Code>(A:VELOCITY WORLD Y, number)</Code></Parameter></Animation>
</PartInfo>
<PartInfo>
<Name>SODE_Jetway_Bridge_Extension_CTRL</Name>
<AnimLength>100</AnimLength>
<Animation><Parameter><Code>(A:VELOCITY WORLD X, number)</Code></Parameter></Animation>
</PartInfo>
<PartInfo>
<Name>SODE_Jetway_Head_Rotation_CTRL</Name>
<AnimLength>100</AnimLength>
<Animation><Parameter><Code>(A:ACCELERATION BODY Y, number)</Code></Parameter></Animation>
</PartInfo>
<PartInfo>
<Name>SODE_Jetway_Leg_Extension_CTRL</Name>
<AnimLength>100</AnimLength>
<Animation><Parameter><Code>(A:VELOCITY BODY Z, number)</Code></Parameter></Animation>
</PartInfo>
<PartInfo>
<Name>SODE_Jetway_WheelAxis_Rotation_CTRL</Name>
<AnimLength>100</AnimLength>
<Animation><Parameter><Code>(A:ACCELERATION BODY X, number)</Code></Parameter></Animation>
</PartInfo>
<PartInfo>
<Name>SODE_Jetway_WheelSpin_Rotation_CTRL</Name>
<AnimLength>100</AnimLength>
<Animation><Parameter><Code>(A:ACCELERATION BODY Z, number)</Code></Parameter></Animation>
</PartInfo>
<PartInfo>
<Name>SODE_Jetway_Stair_Rotation_CTRL</Name>
<AnimLength>100</AnimLength>
<Animation><Parameter><Code>(A:VELOCITY BODY Y, number)</Code></Parameter></Animation>
</PartInfo>
<PartInfo>
<Name>SODE_Jetway_Hood_Extension_Front_5SEC</Name>
<AnimLength>100</AnimLength>
<Animation>
<Parameter>
<Code> <!-- Masks bit 17-23 out of the SimVar, shift 17bits right and use the value as target keyframe -->
(A:VELOCITY WORLD Z, number) near 0x00FE0000 & 17 >>
</Code>
<Lag>20</Lag> <!-- Defines duration of animation: 100Frames/25 = 4 seconds -->
</Parameter>
</Animation>
</PartInfo>
<PartInfo>
<Name>SODE_Jetway_Hood_Extension_Aft_5SEC</Name>
<AnimLength>100</AnimLength>
<Animation>
<Parameter>
<Code> <!-- Masks bit 24-30 out of the SimVar, shift 24bits right and use the value as target keyframe -->
(A:VELOCITY WORLD Z, number) near 0x7F000000 & 24 >>
</Code>
<Lag>20</Lag> <!-- Defines duration of animation: 100Frames/25 = 4 seconds -->
</Parameter>
</Animation>
</PartInfo>
<!-- End Jetway Code -->
<!-- Animation Code -->
<PartInfo>
<Name>SODE_Trigger_1_4SEC</Name>
<AnimLength>100</AnimLength>
<Animation>
<Parameter>
<Code> <!-- Masks bit 0 (0x0001) out of the SimVar and checks if set -->
(A:VELOCITY BODY Z, number) near 0x0001 & 0x0001 == if{ 100 } els{ 0 }
</Code>
<Lag>25</Lag> <!-- Defines duration of animation: 100Frames/25 = 4 seconds -->
</Parameter>
</Animation>
</PartInfo>
<PartInfo>
<Name>SODE_Trigger_1_10SEC</Name>
<AnimLength>100</AnimLength>
<Animation>
<Parameter>
<Code> <!-- Masks bit 0 (0x0001) out of the SimVar and checks if set -->
(A:VELOCITY BODY Z, number) near 0x0001 & 0x0001 == if{ 100 } els{ 0 }
</Code>
<Lag>10</Lag> <!-- Defines duration of animation: 100Frames/10 = 10 seconds -->
</Parameter>
</Animation>
</PartInfo>
<!-- End Animation Code -->
<!-- ### END SIMOBJECT DISPLAY ENGINE ### --
Das sieht natürlich alles sehr wild und unübersichtlich aus. Interessiert uns aber nicht. Der Inhalt sind meist "Böhmische Dörfer". Wichtig ist nur, dass der text der bestehenden modeldef.xml hinzugefügt werden muss. Und weil es sicherer ist, habe ich die bereits bearbeitete modeldef.xml hier angehängt. Sie gehört an den oben angegeben Ort: "...\SDK\Environment Kit\Modeling SDK\bin"
Die Datei bitte nur für das FSX SDK und unter GMax einsetzten!
Jedenfalls sollte nach erfolgreicher Implementierung sofort ein neuer SODE-Eintrag im Animations Manager von Gmax sein. Der Tick18-Eintrag auf Deinem Screenshot deutet darauf hin, dass das noch die alte Animationsmethode via CAT-Tool war.