# Secondary bones

## Visual details

Meshes of additional geometric elements that introduce visual variety to the model without affecting its functionality are referred to as `detail` bones. When the model spawns in-game, these bones are selected randomly, creating different visual variations.&#x20;

<figure><img src="/files/aGgXZ7MoM4nIi2kvE1eq" alt=""><figcaption></figcaption></figure>

Each `detail` bone must have a unique name in the format detail\<N> , \<N> is a sequential number, and be linked in the bone hierarchy to the **primary bone** of the **Component** it visually belongs to. For example, if it adds elements to the hull, it should be linked to the `body` bone (`id=body`), while one affecting the turret should be linked to the `turret` bone (`id=turret`).

Each `detail` bone must have a unique name, achieved by adding a sequential number to its name, e.g., `detail1`, `detail2`, etc.

**Properties of `detail` bones:**

<table data-header-hidden><thead><tr><th width="170">Property</th><th>Description</th></tr></thead><tbody><tr><td><code>poly</code></td><td>Indicates that the bone will be visible.</td></tr><tr><td><code>ID=&#x3C;value></code></td><td>Specifies the identifier of the component to which the bone belongs.</td></tr><tr><td>Animation (optional)</td><td></td></tr></tbody></table>

{% hint style="warning" %}
No volumes are required for `detail` bones.\
The game engine does not support volumes of this type.
{% endhint %}

***

## Hatches

Meshes representing hatches are assigned to `cover` bones.&#x20;

<figure><img src="/files/hSafKnnkYEsbzqG8WFrz" alt=""><figcaption><p>Cover bones</p></figcaption></figure>

Depending on the functional design of the hatch, it may consist of multiple independent parts. In this case, each part must be represented by a separate `cover` bone.

Each `cover` bone must be linked in the bone hierarchy to the primary bone of the **Component** to which the hatch belongs. \
The bone name must be unique and follow the format `cover<N>`, where `<N>` is a sequential number (`cover1`, `cover2`, etc.).

The `ID` of the `cover` bone must match the identifier of the **Component** to which the hatch belongs.&#x20;

**Properties of `cover` bones:**

<table><thead><tr><th width="309">Property</th><th>Description</th></tr></thead><tbody><tr><td><code>poly</code></td><td>Indicates that the bone will be visible.</td></tr><tr><td><code>ID=&#x3C;value></code></td><td>Specifies the identifier of the <strong>Component</strong> to which the hatch belongs.</td></tr><tr><td><code>AnimationResume=open,cover</code></td><td>Defines the animation name. <br>This animation plays when the tank crew member enters or exits the vehicle.</td></tr></tbody></table>

{% hint style="warning" %}
No volumes are required for `cover` bones. \
The game engine does not support volumes of this type.
{% endhint %}

***

## Add-on armor shields bones

f the model includes **add-on armor**, it can be configured as part of the vehicle's armor system.\
Each armor piece can be set up as a unique element by separating the mesh into individual shields and assigning each a unique identifier: `ID=shield<N>`, where `<N>` is a unique identifier segment.

In most cases, add-on armor shields are symmetrical. Therefore, the `<N>` index in the name can include a combination of `L`or `R` to indicate whether the shield belongs to the left or right side, along with a sequential number.\
For example: `shieldL1`, `shieldR1`.

<figure><img src="/files/8cAaGob8qOMrGfaDsJ2C" alt=""><figcaption><p>Add-on armor shields and their bones</p></figcaption></figure>

**Properties of `shield` bones:**

<table data-header-hidden><thead><tr><th width="178">Property</th><th>Description</th></tr></thead><tbody><tr><td><code>poly</code></td><td>Makes the armor shield visible.</td></tr><tr><td><code>ID=shield&#x3C;N></code></td><td>Unique identifier of the shield. <br><code>&#x3C;N></code> represents the shield number.</td></tr></tbody></table>

A **volume** `shield<N>_vol` is linked to the corresponding `shield<N>` bone, defining the physical volume of the armor.

<figure><img src="/files/obyQUzyrYbvubpL0kdeg" alt="Shield bone hierarchy"><figcaption><p>Shield bone hierarchy</p></figcaption></figure>

### **Shield attachment bones**

Each shield is also linked to its own attachment bone, `shield_binding<N>`.\
These bones serve as anchor points for the shields and define their movement and destruction behavior.&#x20;

A `shield_binding` bone can be either:

* An auxiliary invisible bone that exists purely for positioning and hierarchy purposes.
* A part of the shield mesh itself, acting as the attachment point.

In the bone hierarchy, `shield_binding<N>` bones must be linked to the primary bone of the **Сomponent** to which the shield is attached. For example:

* If the shield is part of the hull, the attachment bone should be linked to `body`.
* If the shield is part of the turret, it should be linked to `turret`.

If the model supports destruction effects for shields, animations or physics constraints can be applied to these attachment bones.

**Properties of `shield_binding` bones:**

| `poly` (optional)      | If the attachment bone is part of the mesh, this property determines its visibility.                  |
| ---------------------- | ----------------------------------------------------------------------------------------------------- |
| `ID=shield_binding<N>` | <p>Unique identifier of the attachment point. <br><code>\<N></code> represents the shield number.</p> |

{% hint style="warning" %}
No volumes are required for `shield_binding` bones.\
The game engine does not support volumes of this type.
{% endhint %}

***

## Vehicle identification number

The `enumerator` bone represents a model composed of three (or six for U.S. vehicles) polygons, each assigned a unique `id material` corresponding to textures displaying the identification number.

<figure><img src="/files/geGMYJI20kWhcGdxnJeG" alt=""><figcaption><p>Enumerator bone hierarchy</p></figcaption></figure>

**Number attachment to a model component**

In the bone properties, the `ID` of the component where the unit number is visually applied must be specified.\
For tank models, this is typically `ID=body` or `ID=turret`.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.bestway.com.ua/modeling/vehicle-model-setup-pipeline/bone-hierarchy-in-vehicle-models/secondary-bones.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
