F EXT (PW/GE)

This commit is contained in:
Kilian Hofmann 2025-01-27 03:03:29 +01:00
parent b596baf3e5
commit 8521aec917
12 changed files with 547 additions and 1295 deletions

View File

@ -113,8 +113,13 @@
<ANIM_CODE>(L:#NODE_NAME#)</ANIM_CODE>
</False>
</Condition>
<Condition Check="ID">
<False>
<ID>#NODE_NAME#</ID>
</False>
</Condition>
</Parameters>
<Component ID="#NODE_NAME#" Node="#NODE_NAME#">
<Component ID="#ID#" Node="#NODE_NAME#">
<Animation Name="#ANIM_NAME#" Length="#ANIM_LENGTH#" Type="Sim" TypeParam="AutoPlay">
<Parameter>
<Code>#ANIM_CODE#</Code>

View File

@ -6,9 +6,17 @@
<Behaviors>
<Include RelativeFile="..\..\TFDi_Design_MD-11_Shared\TFDi_MD11_EXT_BASE.xml" />
<Include RelativeFile="..\..\TFDi_Design_MD-11_Shared\TFDi_MD11_EXT_GE.xml" />
<Include RelativeFile="..\..\TFDi_Design_MD-11_Shared\TFDi_MD11_EXT_F.xml" />
<Component ID="TFDi_MD11_EXT_BASE">
<UseTemplate Name="MD11_BASE" />
</Component>
<Component ID="TFDi_MD11_EXT_GE">
<UseTemplate Name="MD11_GE" />
</Component>
<Component ID="TFDi_MD11_EXT_F">
<UseTemplate Name="MD11_F" />
</Component>
</Behaviors>
</ModelInfo>

View File

@ -6,9 +6,17 @@
<Behaviors>
<Include RelativeFile="..\..\TFDi_Design_MD-11_Shared\TFDi_MD11_EXT_BASE.xml" />
<Include RelativeFile="..\..\TFDi_Design_MD-11_Shared\TFDi_MD11_EXT_GE.xml" />
<Include RelativeFile="..\..\TFDi_Design_MD-11_Shared\TFDi_MD11_EXT_F.xml" />
<Component ID="TFDi_MD11_EXT_BASE">
<UseTemplate Name="MD11_BASE" />
</Component>
<Component ID="TFDi_MD11_EXT_GE">
<UseTemplate Name="MD11_GE" />
</Component>
<Component ID="TFDi_MD11_EXT_F">
<UseTemplate Name="MD11_F" />
</Component>
</Behaviors>
</ModelInfo>

View File

@ -6,9 +6,17 @@
<Behaviors>
<Include RelativeFile="..\..\TFDi_Design_MD-11_Shared\TFDi_MD11_EXT_BASE.xml" />
<Include RelativeFile="..\..\TFDi_Design_MD-11_Shared\TFDi_MD11_EXT_PW.xml" />
<Include RelativeFile="..\..\TFDi_Design_MD-11_Shared\TFDi_MD11_EXT_F.xml" />
<Component ID="TFDi_MD11_EXT_BASE">
<UseTemplate Name="MD11_BASE" />
</Component>
<Component ID="TFDi_MD11_EXT_PW">
<UseTemplate Name="MD11_PW" />
</Component>
<Component ID="TFDi_MD11_EXT_F">
<UseTemplate Name="MD11_F" />
</Component>
</Behaviors>
</ModelInfo>

View File

@ -6,9 +6,17 @@
<Behaviors>
<Include RelativeFile="..\..\TFDi_Design_MD-11_Shared\TFDi_MD11_EXT_BASE.xml" />
<Include RelativeFile="..\..\TFDi_Design_MD-11_Shared\TFDi_MD11_EXT_PW.xml" />
<Include RelativeFile="..\..\TFDi_Design_MD-11_Shared\TFDi_MD11_EXT_F.xml" />
<Component ID="TFDi_MD11_EXT_BASE">
<UseTemplate Name="MD11_BASE" />
</Component>
<Component ID="TFDi_MD11_EXT_PW">
<UseTemplate Name="MD11_PW" />
</Component>
<Component ID="TFDi_MD11_EXT_F">
<UseTemplate Name="MD11_F" />
</Component>
</Behaviors>
</ModelInfo>

View File

@ -6,9 +6,13 @@
<Behaviors>
<Include RelativeFile="..\..\TFDi_Design_MD-11_Shared\TFDi_MD11_EXT_BASE.xml" />
<Include RelativeFile="..\..\TFDi_Design_MD-11_Shared\TFDi_MD11_EXT_GE.xml" />
<Component ID="TFDi_MD11_EXT_BASE">
<UseTemplate Name="MD11_BASE" />
</Component>
<Component ID="TFDi_MD11_EXT_GE">
<UseTemplate Name="MD11_GE" />
</Component>
</Behaviors>
</ModelInfo>

View File

@ -0,0 +1,69 @@
<?xml version="1.0" encoding="utf-8"?>
<ModelBehaviors>
<Include ModelBehaviorFile="Asobo\Exterior.xml" />
<Include ModelBehaviorFile="Asobo\Common.xml" />
<Include ModelBehaviorFile="Asobo\Generic\FX.xml" />
<Include ModelBehaviorFile="TFDi_Design_MD-11\TFDi_MD11_INT_Templates.xml" />
<Template Name="MD11_F">
<!-- NOTE: Node names extracted from blender -->
<!-- DOORS START -->
<UseTemplate Name="MD11_Animation">
<ID>MD11_EXT_DOOR_PAX_1R</ID>
<NODE_NAME>f_door_1R</NODE_NAME>
<ANIM_NAME>MD11_EXT_DOOR_PAX_1R</ANIM_NAME>
<ANIM_CODE>(L:MD11_EXT_DOOR_PAX_1R)</ANIM_CODE>
<ANIM_LENGTH>100</ANIM_LENGTH>
<ANIM_LAG>1000</ANIM_LAG>
</UseTemplate>
<UseTemplate Name="MD11_Animation">
<ID>MD11_EXT_DOOR_PAX_4R</ID>
<NODE_NAME>f_door_4R</NODE_NAME>
<ANIM_NAME>MD11_EXT_DOOR_PAX_4R</ANIM_NAME>
<ANIM_CODE>(L:MD11_EXT_DOOR_PAX_4R)</ANIM_CODE>
<ANIM_LENGTH>100</ANIM_LENGTH>
<ANIM_LAG>1000</ANIM_LAG>
</UseTemplate>
<UseTemplate Name="MD11_Animation">
<ID>MD11_EXT_DOOR_PAX_1L</ID>
<NODE_NAME>f_door_1L</NODE_NAME>
<ANIM_NAME>MD11_EXT_DOOR_PAX_1L</ANIM_NAME>
<ANIM_CODE>(L:MD11_EXT_DOOR_PAX_1L)</ANIM_CODE>
<ANIM_LENGTH>100</ANIM_LENGTH>
<ANIM_LAG>1000</ANIM_LAG>
</UseTemplate>
<UseTemplate Name="MD11_Animation">
<ID>MD11_EXT_DOOR_PAX_4L</ID>
<NODE_NAME>f_door_4L</NODE_NAME>
<ANIM_NAME>MD11_EXT_DOOR_PAX_4L</ANIM_NAME>
<ANIM_CODE>(L:MD11_EXT_DOOR_PAX_4L)</ANIM_CODE>
<ANIM_LENGTH>100</ANIM_LENGTH>
<ANIM_LAG>1000</ANIM_LAG>
</UseTemplate>
<UseTemplate Name="MD11_Animation">
<ID>MD11_EXT_DOOR_CARGO_MAIN</ID>
<NODE_NAME>freighter_door</NODE_NAME>
<ANIM_NAME>MD11_EXT_DOOR_CARGO_MAIN</ANIM_NAME>
<ANIM_CODE>(L:MD11_EXT_DOOR_CARGO_MAIN)</ANIM_CODE>
<ANIM_LENGTH>100</ANIM_LENGTH>
<ANIM_LAG>1000</ANIM_LAG>
</UseTemplate>
<!-- DOORS END -->
<!-- NOTE: Node names extracted from blender
Permanently hidden because they clash with ones defined in the INT.xml
-->
<!-- CARGO PALLET START -->
<UseTemplate Name="MD11_Vistag">
<ID>MD11_CARGO_PALLET_1</ID>
<NODE_NAME>Box1175</NODE_NAME>
<VIS_CODE>0</VIS_CODE>
</UseTemplate>
<UseTemplate Name="MD11_Vistag">
<ID>MD11_CARGO_PALLET_2</ID>
<NODE_NAME>Box1176</NODE_NAME>
<VIS_CODE>0</VIS_CODE>
</UseTemplate>
<!-- CARGO PALLET END-->
</Template>
</ModelBehaviors>

View File

@ -0,0 +1,48 @@
<?xml version="1.0" encoding="utf-8"?>
<ModelBehaviors>
<Include ModelBehaviorFile="Asobo\Exterior.xml" />
<Include ModelBehaviorFile="Asobo\Common.xml" />
<Include ModelBehaviorFile="Asobo\Generic\FX.xml" />
<Include ModelBehaviorFile="TFDi_Design_MD-11\TFDi_MD11_INT_Templates.xml" />
<Template Name="MD11_GE">
<!-- NOTE: Node names extracted from blender -->
<!-- REVERSERS START -->
<UseTemplate Name="MD11_Animation">
<NODE_NAME>GE_engine_1_reversers</NODE_NAME>
<ANIM_NAME>MD11_EXT_L_REV</ANIM_NAME>
<ANIM_CODE>(L:MD11_EXT_L_REV)</ANIM_CODE>
<ANIM_LENGTH>100</ANIM_LENGTH>
<ANIM_LAG>1000</ANIM_LAG>
</UseTemplate>
<UseTemplate Name="MD11_Animation">
<NODE_NAME>GE_tail_reversers</NODE_NAME>
<ANIM_NAME>MD11_EXT_C_REV</ANIM_NAME>
<ANIM_CODE>(L:MD11_EXT_C_REV)</ANIM_CODE>
<ANIM_LENGTH>100</ANIM_LENGTH>
<ANIM_LAG>1000</ANIM_LAG>
</UseTemplate>
<UseTemplate Name="MD11_Animation">
<NODE_NAME>GE_engine_3_reversers</NODE_NAME>
<ANIM_NAME>MD11_EXT_R_REV</ANIM_NAME>
<ANIM_CODE>(L:MD11_EXT_R_REV)</ANIM_CODE>
<ANIM_LENGTH>100</ANIM_LENGTH>
<ANIM_LAG>1000</ANIM_LAG>
</UseTemplate>
<!-- REVERSES END -->
<!-- NOTE: Node names extracted from blender -->
<!-- ER ENGINE START -->
<UseTemplate Name="MD11_Vistag">
<ID>MD11_EXT_ER_TAIL</ID>
<NODE_NAME>GE_Main_Engine_ER</NODE_NAME>
<VIS_CODE>(L:MD11_EXT_ER_TAIL, bool)</VIS_CODE>
</UseTemplate>
<UseTemplate Name="MD11_Vistag">
<ID>MD11_EXT_NON_ER_TAIL</ID>
<NODE_NAME>GE_Main_Engine</NODE_NAME>
<VIS_CODE>(L:MD11_EXT_NON_ER_TAIL, bool)</VIS_CODE>
</UseTemplate>
<!-- ER ENGINE END-->
</Template>
</ModelBehaviors>

View File

@ -0,0 +1,34 @@
<?xml version="1.0" encoding="utf-8"?>
<ModelBehaviors>
<Include ModelBehaviorFile="Asobo\Exterior.xml" />
<Include ModelBehaviorFile="Asobo\Common.xml" />
<Include ModelBehaviorFile="Asobo\Generic\FX.xml" />
<Include ModelBehaviorFile="TFDi_Design_MD-11\TFDi_MD11_INT_Templates.xml" />
<Template Name="MD11_GE">
<!-- NOTE: Node names extracted from blender -->
<!-- REVERSERS START -->
<UseTemplate Name="MD11_Animation">
<NODE_NAME>PW_PW_engine_0_reverser</NODE_NAME>
<ANIM_NAME>MD11_EXT_L_REV</ANIM_NAME>
<ANIM_CODE>(L:MD11_EXT_L_REV)</ANIM_CODE>
<ANIM_LENGTH>100</ANIM_LENGTH>
<ANIM_LAG>1000</ANIM_LAG>
</UseTemplate>
<UseTemplate Name="MD11_Animation">
<NODE_NAME>PW_PW_engine_1_reverser</NODE_NAME>
<ANIM_NAME>MD11_EXT_C_REV</ANIM_NAME>
<ANIM_CODE>(L:MD11_EXT_C_REV)</ANIM_CODE>
<ANIM_LENGTH>100</ANIM_LENGTH>
<ANIM_LAG>1000</ANIM_LAG>
</UseTemplate>
<UseTemplate Name="MD11_Animation">
<NODE_NAME>PW_PW_engine_2_reverser</NODE_NAME>
<ANIM_NAME>MD11_EXT_R_REV</ANIM_NAME>
<ANIM_CODE>(L:MD11_EXT_R_REV)</ANIM_CODE>
<ANIM_LENGTH>100</ANIM_LENGTH>
<ANIM_LAG>1000</ANIM_LAG>
</UseTemplate>
<!-- REVERSES END -->
</Template>
</ModelBehaviors>

View File

@ -1,4 +1,5 @@
# Observations
# Interior
## Observations
- `rev_handle_l` is not parented to `THR_L`, but to `MD11_THR_L_RNG`.
This is unlike the other levers.
- Vistags were done via an animation turned PartInfo, that no longer works
@ -15,7 +16,7 @@
the indicator due to the parent being hidden when the analog standby option
is used.
# Nodes that were defined but do not exist in model
## Nodes that were defined but do not exist in model
- `MD11_OVHD_LTS_CREW_REST_LT`
- `MD11_OVHD_LTS_MID_ATTND_LT`
- `MD11_OVHD_LTS_ALL_STA_LT`
@ -57,13 +58,84 @@
- `MD11_CTR_FLTNO3_SW`
- `MD11_CTR_FLTNO4_SW`
# Missing animations
## Missing animations
- `MD11_MIP_STBY_AI_OFF_RNG`
- `MD11_PED_ADG_LVR`
- `MD11_OVHD_PNEU_DITCHING_GRD`
- `box392` (actual ditching button node)
- `MD11_THR_R_ATS_BT`
# Exterior
## Nodes that were defined but do not exist in model
- `MD11_LTS_EXT_BCN`
- `MD11_LTS_EXT_LOGO`
- `MD11_EXT_DOOR_PAX_1R_ARMED`
- `MD11_EXT_DOOR_PAX_2R_ARMED`
- `MD11_EXT_DOOR_PAX_3R_ARMED`
- `MD11_EXT_DOOR_PAX_4R_ARMED`
- `MD11_EXT_DOOR_PAX_1L_ARMED`
- `MD11_EXT_DOOR_PAX_2L_ARMED`
- `MD11_EXT_DOOR_PAX_3L_ARMED`
- `MD11_EXT_DOOR_PAX_4L_ARMED`
- `MD11_EXT_DOOR_PAX_1R_DISARMED`
- `MD11_EXT_DOOR_PAX_2R_DISARMED`
- `MD11_EXT_DOOR_PAX_3R_DISARMED`
- `MD11_EXT_DOOR_PAX_4R_DISARMED`
- `MD11_EXT_DOOR_PAX_1L_DISARMED`
- `MD11_EXT_DOOR_PAX_2L_DISARMED`
- `MD11_EXT_DOOR_PAX_3L_DISARMED`
- `MD11_EXT_DOOR_PAX_4L_DISARMED`
- `MD11_EXT_ENG1_WOBBLE`
- `MD11_EXT_ENG2_WOBBLE`
- `MD11_EXT_TIRE_NOSE_1_STD`
- `MD11_EXT_TIRE_NOSE_2_STD`
- `MD11_EXT_TIRE_LEFT_1_STD`
- `MD11_EXT_TIRE_LEFT_2_STD`
- `MD11_EXT_TIRE_LEFT_3_STD`
- `MD11_EXT_TIRE_LEFT_4_STD`
- `MD11_EXT_TIRE_CTR_1_STD`
- `MD11_EXT_TIRE_CTR_2_STD`
- `MD11_EXT_TIRE_RIGHT_1_STD`
- `MD11_EXT_TIRE_RIGHT_2_STD`
- `MD11_EXT_TIRE_RIGHT_3_STD`
- `MD11_EXT_TIRE_RIGHT_4_STD`
- `MD11_EXT_TIRE_NOSE_1_BURST`
- `MD11_EXT_TIRE_NOSE_2_BURST`
- `MD11_EXT_TIRE_LEFT_1_BURST`
- `MD11_EXT_TIRE_LEFT_2_BURST`
- `MD11_EXT_TIRE_LEFT_3_BURST`
- `MD11_EXT_TIRE_LEFT_4_BURST`
- `MD11_EXT_TIRE_CTR_1_BURST`
- `MD11_EXT_TIRE_CTR_2_BURST`
- `MD11_EXT_TIRE_RIGHT_1_BURST`
- `MD11_EXT_TIRE_RIGHT_2_BURST`
- `MD11_EXT_TIRE_RIGHT_3_BURST`
- `MD11_EXT_TIRE_RIGHT_4_BURST`
- `MD11_CAB_SEATBELT_LT`
- `MD11_CAB_NOSMOKE_LT`
- `MD11_CAB_LIGHTS_SRC`
- `MD11_CARGO_PALLET_3`
- `MD11_CARGO_PALLET_4`
- `MD11_CARGO_PALLET_5`
- `MD11_CARGO_PALLET_6`
- `MD11_CARGO_PALLET_7`
- `MD11_CARGO_PALLET_8`
- `MD11_CARGO_PALLET_9`
- `MD11_CARGO_PALLET_10`
- `MD11_CARGO_PALLET_11`
- `MD11_CARGO_PALLET_12`
- `MD11_CARGO_PALLET_13`
- `MD11_CARGO_PALLET_14`
- `MD11_CARGO_PALLET_15`
- `MD11_CARGO_PALLET_16`
- `MD11_CARGO_PALLET_17`
- `MD11_CARGO_PALLET_18`
- `MD11_CARGO_PALLET_19`
- `MD11_CARGO_PALLET_20`
- `MD11_CARGO_PALLET_21`
- `MD11_CARGO_PALLET_22`
# Conclusion
With the current model, feature parity was achieved with the sole exception of
`MD11_MIP_STBY_AI_SLIP_RNG`. Fixes for this node as well as the missing
@ -77,4 +149,23 @@ in blender.
Clickspot for this feature is the captain side window crank (I originally
planned to use the rubber grommet, for some reason this didn't work and the
clickspot never appeared, probably due to the, what I assume to be, skinned
mesh).
mesh).
# Notes as reference
While it is not necessary to attach an animation to the node that uses it,
out of keeping a logical structure I did do so (the base Asobo templates do so
as well). I have tried to keep to this as best as possible, but on animations
driving multiple nodes, I generally tried to use the top most.
Special care had to go into VisTag nodes due to their parent-hides-child
relation. Where possible, when hiding multiple objects with one VisTag, a
suitable parent was used. In all other cases, the individual nodes were
VisTag-ed.
Splitting of the behavior files the way I have done is not required and
for a generator based solution ill-advised. It is to note however, that,
when possible, a base file for behaviors shared for all types is advised.
Employing such a base file with only the type-specific extras (like done here)
cuts down on the errors the game will generate while loading. An example of
such an error when using one-size-fits-all files would be the missing of the
main cargo door node on the pax.

View File

@ -1,3 +1,6 @@
# EXT
- 1LR/4LR DOOR for PAX (PAX.xml)
# FIXES for Model
Use Submodel Merging to fix the following