update doc/ru/vcm.md

This commit is contained in:
MihailRis 2026-01-18 22:14:52 +03:00
parent e0e9e1914b
commit 53e4a0a103

View file

@ -1,4 +1,4 @@
## VCM
# VCM
Текстовый формат описания 3D моделей, являющийся заменой устаревшего свойства `model-primitives`.
@ -27,6 +27,8 @@
> При размерах более 1.0 результат не определён и может измениться в последующих обновлениях.
> Используйте `region` или `region-scale` для ручной настройки.
## Примитивы
### Свойства `tri`
Примитив описывает треугольник.
@ -75,3 +77,25 @@
- `texture` - отображаемая текстура. По-умолчанию: `$индекс_стороны`.
- `region` - UV регион в границах выбранной текстуры, определяется позициями противоположных углов. Пример: `region (0,0,1,1)`
- `region-scale` вектор-множитель для автоматически выбранного UV региона. Пример: `region-scale (0.5,1)`
## Скелет
VCM позволяет описывать [скелет](rigging.md) модели. Для этого используется элемент `@bone` (кость).
Существует два вида костей:
- безымянные - используются только для трансформаций на влюженные примитивы, не попадает в итоговый скелет.
- именованные - будет включено в итоговый скелет. Имя указывается через атрибут `name`.
Главная кость (`root`) создаётся автоматически для всей модели.
При наличии явно указанных костей модель будет разделена на несколько частей именованных в формате `имя_модели.имя_кости`.
Так как модель относится к ассетам и не имеет префикса, загруженный скелет получает имя модели, так же, без префикса.
Загруженный скелет можно использовать у [сущности](entity-properties.md#имя-скелета---skeleton-name) через свойство `skeleton-name`.
В списке `пак/preload.json` при указании параметра `"squash": true` vcm будет загружен как единая модель, без скелета.
### Свойства `bone`
- `name` - имя кости, при отсутствии которого кость будет "растворена" и не попадёт в итоговый скелет, при этом, трансформации будут применены.
- `move` - смещение вложенных элементов.
- `scale` - масштабирование вложенных элементов. Применяется перед смещением.
- `rotate` - вращение вложенных элементов вокруг осей (x,y,z) в градусах, или кватернион (x,y,z,w). Пример: `rotate (45,0,0)` или `rotate (0.3826834, 0, 0, 0.9238795)`