Difference between revisions of "Documentation/Engine/Units/accessory cargo data"

From SCS Modding Wiki
Jump to navigation Jump to search
(Draft.)
 
(Add new dynamic_cargo_data owner pointer attribute)
 
(5 intermediate revisions by 2 users not shown)
Line 12: Line 12:
 
|string
 
|string
 
|
 
|
|Path to the high level-of-detail mesh.
+
|Path to the detailed mesh model descriptor (.pmd). This is used only for vehicles used by player. Additionally they are used in vehicle previews & browser windows.
 
|-
 
|-
 
|model
 
|model
 
|string
 
|string
 
|
 
|
|Path to the standard level-of-detail mesh. If only a single LOD is used, it should be set up as '''model''', and the other attributes (detail_model, lods) should not be defined.
+
|Path to the model descriptor (.pmd). If only a single LOD is used, it should be set up as '''model''', and the other attributes (detail_model, lods) should not be defined.
 
|-
 
|-
 
|lods
 
|lods
|string array
+
|array<string>
 
|
 
|
|Paths to the reduced level-of-detail meshes, in order of increasing viewing distance (decreasing model complexity).
+
|Paths to the reduced level-of-detail model descriptors (.pmd), in order of increasing viewing distance (decreasing model complexity).
 
|-
 
|-
 
|collision
 
|collision
 
|string
 
|string
 
|
 
|
|Path to the collision mesh (.pmc).
+
|Path to the collision descriptor (.pmc).
 +
|-
 +
|animations
 +
|array<owner_ptr>
 +
|
 +
|Points to units of the type ''anim_idle'' or ''anim_random'' in order to assign dynamic animations to skinned cargo models.
 
|-
 
|-
 
|variant
 
|variant
 
|token
 
|token
|default
+
|
|Selects the variant to be used for all models/collisions defined.
+
|Name of the variant to be used on all descriptors of this accessory.
 
{{Note|All models defined for this '''accessory_cargo_data''' must have this variant name.}}
 
{{Note|All models defined for this '''accessory_cargo_data''' must have this variant name.}}
 
|-
 
|-
 
|look
 
|look
 
|token
 
|token
|default
+
|
|Selects the look to be used for all models defined.
+
|Name of the look to be used on all descriptors of this accessory.
 
{{Note|All models defined for this '''accessory_cargo_data''' must have this look name.}}
 
{{Note|All models defined for this '''accessory_cargo_data''' must have this look name.}}
 
|-
 
|-
|animations
+
|dynamic_cargo_data
|owner_ptr_array
+
|owner_ptr
|null
+
|
|Points to units of the type ''anim_idle'' or ''anim_random'' in order to assign dynamic animations to skinned cargo models.
+
|Points to a unit of the type [[Documentation/Engine/Units/dynamic_cargo_data|dynamic_cargo_data]] where data related to dynamic cargo (un)loading are stored.
 
|}
 
|}
 
== Raw Unit Definition ==
 
<pre style="max-height:300px;overflow:auto">  "accessory_cargo_data":{
 
  "superclass":"accessory_data",
 
  "attrs":{
 
    "name":{
 
    "type": "string"
 
    },
 
    "short_name":{
 
    "type": "string"
 
    },
 
    "icon":{
 
    "type": "string"
 
    },
 
    "info":{
 
    "type": "string_array"
 
    },
 
    "price":{
 
    "type": "s64"
 
    },
 
    "unlock":{
 
    "type": "uint"
 
    },
 
    "suitable_for":{
 
    "type": "string_array"
 
    },
 
    "conflict_with":{
 
    "type": "string_array"
 
    },
 
    "defaults":{
 
    "type": "string_array"
 
    },
 
    "require":{
 
    "type": "token_array"
 
    },
 
    "detail_model":{
 
    "type": "string"
 
    },
 
    "model":{
 
    "type": "string"
 
    },
 
    "lods":{
 
    "type": "string_array"
 
    },
 
    "collision":{
 
    "type": "string"
 
    },
 
    "variant":{
 
    "type": "token"
 
    },
 
    "look":{
 
    "type": "token"
 
    },
 
    "animations":{
 
    "type": "owner_ptr_array"
 
    }
 
  }
 
  },</pre>
 

Latest revision as of 08:48, 3 June 2024

The accessory_cargo_data unit class configures visible cargo models for trailers and can be used to bind animations if the model is skinned. Units of this type are found in /def/vehicle/trailer/<trailer_name>/.

Attributes

Many common attributes are inherited from accessory_data.

Name Type Default Value Description
detail_model string Path to the detailed mesh model descriptor (.pmd). This is used only for vehicles used by player. Additionally they are used in vehicle previews & browser windows.
model string Path to the model descriptor (.pmd). If only a single LOD is used, it should be set up as model, and the other attributes (detail_model, lods) should not be defined.
lods array<string> Paths to the reduced level-of-detail model descriptors (.pmd), in order of increasing viewing distance (decreasing model complexity).
collision string Path to the collision descriptor (.pmc).
animations array<owner_ptr> Points to units of the type anim_idle or anim_random in order to assign dynamic animations to skinned cargo models.
variant token Name of the variant to be used on all descriptors of this accessory.

Note: All models defined for this accessory_cargo_data must have this variant name.

look token Name of the look to be used on all descriptors of this accessory.

Note: All models defined for this accessory_cargo_data must have this look name.

dynamic_cargo_data owner_ptr Points to a unit of the type dynamic_cargo_data where data related to dynamic cargo (un)loading are stored.