> For the complete documentation index, see [llms.txt](https://docs.gta.clothing/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.gta.clothing/game-mechanics/skin-tone-data.md).

# Skin Tone Data

## **What Skin Tone Data Does**

Some clothing models include visible body parts, such as ankles attached to shoes, legs attached to pants, or skin around the upper body. If that skin were baked as one fixed color, it would only match a small number of player appearances.

Enabling **Has skin tone data** configures those exposed areas to follow the ped's current skin appearance. The clothing texture and its embedded blend mask must be prepared for the matching body region.

{% hint style="info" %}
Skin Tone Data is not a color picker. The final result depends on the ped's current head blend and can fall between the preset examples shown in the preview.
{% endhint %}

## **When to Enable It**

Use Skin Tone Data only when the drawable contains exposed, modeled skin that must follow the player ped.

| Drawable type | Typical use                                                                        |
| ------------- | ---------------------------------------------------------------------------------- |
| **Head**      | A head drawable prepared to match the ped's skin tone                              |
| **Body**      | Tops or torsos containing exposed chest, shoulders, arms, or other upper-body skin |
| **Legs**      | Pants or lower-body models containing exposed legs or waist skin                   |
| **Shoes**     | Shoes containing modeled feet, ankles, or lower-leg skin                           |

Leave it disabled for ordinary opaque clothing and for components that do not contain exposed body skin. Transparency by itself is not a reason to enable it.

{% hint style="warning" %}
The supported body-skin regions are **Body**, **Legs**, and **Shoes**. Other clothing component types should remain universal. Head is handled separately and is not previewed as a body region.
{% endhint %}

## **Setting It Up in Durty Cloth Tool**

1. Select the drawable in your project.
2. Enable **Has skin tone data** in the drawable details.
3. Make sure the model, external texture, alpha, and embedded blend textures were authored for skin-tone composition.
4. Open the 3D preview and try several skin presets.
5. Build the resource and test the same item on multiple in-game appearances.

Durty Cloth Tool handles the generated naming and metadata for you:

* A component without Skin Tone Data uses a model ending in `_u.ydd` and textures ending in `_uni.ytd`.
* A component with Skin Tone Data uses a model ending in `_r.ydd` and textures ending in `_whi.ytd`.

The `_whi` suffix is part of the required naming. It does **not** lock the final result to one skin color.

If you import files that are already named, keep the model and texture pair consistent. See [Files Naming](/game-mechanics/files-naming.md) for the complete naming pattern.

## **Texture and Model Requirements**

Skin-tone composition depends on more than the filename. A working item normally needs:

* a compatible `_r` model;
* a matching `_whi` external texture dictionary;
* correctly authored transparency in the clothing diffuse;
* a correctly named and authored embedded spec/blend texture in the model.

Keep the intended clothing diffuse as the first, and preferably only, texture in its external YTD. Embedded normal and spec textures should keep the component prefix, for example `uppr_normal_000` and `uppr_spec_000` for a Body drawable. Durty Cloth Tool reports naming problems it can detect.

{% hint style="warning" %}
A transparent diffuse is not enough on its own. A missing or incorrectly authored embedded blend mask can produce solid patches, incorrect skin coverage, or an item that does not match the ped as expected.
{% endhint %}

## **Using the 3D Preview**

For skin-toned **Body**, **Legs**, and **Shoes** drawables, the Clothes preview can show these representative presets:

* `whi`
* `ara`
* `chi`
* `lat`
* `bla`
* `pak`

These are legacy preset labels used to inspect contrast and alpha coverage. They are not a list of six exact player skin colors. An in-game head blend can produce results between the preview examples.

The preview is an approximation. The in-game result can differ depending on the current head blend, the authored textures, graphics settings, and target game build.

{% hint style="info" %}
Use the preview to catch obvious coverage and contrast problems, then use in-game testing as the final check.
{% endhint %}

## **Texture Resolution**

For skin-toned **Body**, **Legs**, and **Shoes** drawables, use a maximum of **512 × 512** for the external diffuse texture. Durty Cloth Tool warns when a skin-toned texture exceeds this size because a larger source does not add detail to the final body-skin result.

This guidance applies to **Body**, **Legs**, and **Shoes**. **Head** uses a separate skin-tone workflow and is not covered by this 512 × 512 recommendation. Durty Cloth Tool does not automatically resize an oversized source during the build, so resize and optimize it yourself when the warning appears.

## **FiveM Resources**

No extra client script is required just to apply Skin Tone Data. The generated collection metadata and streamed model/texture files carry the required setting, and the component can be selected normally.

For addon collections, prefer FiveM's collection-name and collection-local-index natives. This avoids global drawable IDs that can move when base-game or DLC content changes.

Always test the built resource on the GTA edition, game build, and FiveM client version used by your server. Legacy and Enhanced should not be assumed to render every custom material identically without a test.

## **Troubleshooting**

| Problem                             | What to check                                                                                              |
| ----------------------------------- | ---------------------------------------------------------------------------------------------------------- |
| Skin remains one fixed color        | Confirm **Has skin tone data** is enabled and the model/texture pair uses `_r` and `_whi`                  |
| Solid or invisible patches          | Check the diffuse alpha and the embedded spec/blend texture                                                |
| Texture is missing                  | Check that drawable type, index, texture letter, and suffix all match                                      |
| Skin looks soft or blurry           | Keep the skin-toned diffuse at or below 512 × 512 and check compression/mipmaps                            |
| Preview and game look different     | Test several head blends; the preview is a representative approximation                                    |
| It works on one ped but not another | Check multiple genders and head-parent combinations, then verify the resource uses the intended collection |

## **Recommended Test Checklist**

Before publishing a skin-toned item:

1. Test at least one light, medium, and dark appearance.
2. Test intermediate head-blend values, not only the preview presets.
3. Check seams where clothing meets the neck, wrists, waist, ankles, or feet.
4. Check the item in bright daylight and dark interiors.
5. Test every texture variation and both supported genders where applicable.
6. Verify the exact resource build on the server/client configuration you intend to support.
