Files
sanspie f22242e5aa
ci / release (push) Successful in 5m5s
ci-platforms / build (amd64, windows, windows-2022) (push) Skipped
ci-platforms / build (arm64, darwin, macos-15) (push) Skipped
ci-platforms / build (amd64, darwin, macos-15-intel) (push) Skipped
ci / checks (push) Successful in 4m41s
ci / build (amd64, linux, ubuntu-24.04) (push) Successful in 7m14s
Stage 11g2–11g3: registry texts, CLI and the site in Russian (D348)
The remaining editor strings and undo step names; component, field, enum, setting, diagnostic and Script API texts under schema.*, enum.*, setting.*, diag.* and api.*; the launcher, the in-game Settings View with a Language setting, the CLI and aego schema show --lang. Every documentation page has a .ru.md translation; the site has a full Russian tree with hreflang, a language switch and ru/llms.txt; aego docs check --lang ru. New doc.tutorial and doc.recipe icons. Fix: an animator restored by a rewind prepares its controller before the replayed step.
2026-10-25 15:31:22 +03:00

163 lines
7.0 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
id: formats/aeanim
title: Клипы .aeanim
---
# Клипы .aeanim
Клип — это файл aetext. Каждое имя ниже проверяется: неизвестный блок, атрибут или поле, а также атрибут, записанный внутри блока, проваливают импорт с [ANM001](ref:ANM001) и строкой, которую нужно исправить.
anim version=1 length=0.38 fps=12 loop=loop {
track "" prop="SpriteRenderer.size" kind=vec2 {
key t=0 v=[1, 1] interp=linear {}
key t=0.13 v=[1.3, 0.84] {}
}
frames "Slash" start=0.08 {
sprites=[asset("5a1a5c00000000000000000000000010"), asset("5a1a5c00000000000000000000000011")]
durations=[0.04, 0.04]
}
event t=0.14 name="Hit" payload=1 {}
}
## anim
| Атрибут | Значение |
|---|---|
| `version` | версия текста, 1 |
| `length` | длина в секундах, обязателен |
| `fps` | частота кадров, по которой редактор привязывает записанные ключи и показывает время в кадрах; при выполнении не используется |
| `loop` | `once`, `loop` или `pingPong` |
Содержит блоки `track`, `frames` и `event`.
## track
Метка — это цель: `""` — сам узел, `"Sword"` или `"Arm/Hand"` — потомок.
| Атрибут | Значение |
|---|---|
| `prop` | `Component.field`, обязателен |
| `kind` | `float32`, `float64`, `vec2`, `vec3`, `vec4`, `color`, `rect`, `quat`, `int32`, `int64`, `bool`, `enum` или `assetRef`, обязателен |
| `numeric` | дорожка `int32` или `int64`, которая интерполирует, а не переключается ступенями |
| `root` | дорожка движения корня (`transform.position`, `vec2`) |
| `authority` | `presentation` (по умолчанию) или `simulation` |
| `onEnd` | `hold` (по умолчанию) или `restore` |
Содержит только блоки `key`.
## key
| Атрибут | Значение |
|---|---|
| `t` | время в секундах, обязателен |
| `v` | значение типа дорожки, обязателен |
| `interp` | `bezier`, `linear` или `step` |
| `tangent` | `auto`, `linear` или `free` |
| `in`, `out` | касательные ключа `free` |
## frames
Краткая запись дорожки спрайта со ступенчатыми ключами. Метка — это цель, как у `track`.
| Атрибут | Значение |
|---|---|
| `start` | время первого кадра |
| `fps` | частота кадров, когда нет `durations`, по умолчанию 12 |
| `prop` | свойство спрайта, по умолчанию `SpriteRenderer.sprite` |
| `flipProp` | свойство отражения, по умолчанию `SpriteRenderer.flipX` |
| `authority` | как у `track` |
| Поле | Значение |
|---|---|
| `sprites` | список ассетов спрайтов, обязателен |
| `durations` | секунды на кадр, по одному на спрайт |
| `flipX` | `true` или `false` для каждого спрайта |
## event
| Атрибут | Значение |
|---|---|
| `t` | время в секундах, обязателен |
| `name` | имя события, обязателен |
| `payload` | число или `true`/`false` |
| `mode` | `gameplay` (по умолчанию), `presentation` или `preview` |
---
id: formats/aectrl
title: Контроллеры .aectrl
---
# Контроллеры .aectrl
Контроллер — это файл aetext. Неизвестные блоки, атрибуты и поля проваливают импорт с [ANC006](ref:ANC006); имена, которые не находятся, дают [ANC001](ref:ANC001) и [ANC002](ref:ANC002).
controller version=1 entryPos=[-176, 0] anyPos=[-176, 110] {
entry="Idle"
param "Speed" kind=float {}
param "Attack" kind=trigger {}
state "Idle" clip=asset("a0a10000000000000000000000000001") pos=[0, 0] {}
state "Run" clip=asset("a0a10000000000000000000000000002") speed=1.2 pos=[220, 0] {}
transition "Idle" to="Run" duration=0.1 {
cond "Speed" op=gt value=0.1 {}
}
transition "any" to="Hit" interrupt=true {
cond "Attack" {}
}
}
## controller
| Атрибут | Значение |
|---|---|
| `version` | версия текста, 1 |
| `ease` | сглаживание смешивания, по умолчанию `inOutQuad` |
| `entryPos` | `[x, y]` метки «Вход» в панели «Аниматор» |
| `anyPos` | `[x, y]` метки «Любое состояние» в панели «Аниматор» |
| Поле | Значение |
|---|---|
| `entry` | состояние, с которого начинает «Аниматор»; если поле не задано — первое состояние |
Содержит блоки `param`, `state` и `transition`. `pos`, `entryPos` и `anyPos` нужны только редактору: при выполнении они не используются, а панель сама раскладывает то, у чего нет позиции.
## param
Метка — это имя.
| Атрибут | Значение |
|---|---|
| `kind` | `bool`, `int`, `float` или `trigger`, обязателен |
| `default` | начальное значение; у триггеров его нет |
## state
Метка — это имя; `any` зарезервировано.
| Атрибут | Значение |
|---|---|
| `clip` | ассет клипа |
| `speed` | скорость воспроизведения, по умолчанию 1 |
| `loop` | заменяет режим повтора клипа |
| `pos` | `[x, y]` блока в панели «Аниматор» |
| `events` | во время смешивания: `dominant` (по умолчанию), `both` или `incoming` |
## transition
Метка — это исходное состояние или `any`. Переходы проверяются в порядке файла.
| Атрибут | Значение |
|---|---|
| `to` | целевое состояние, обязателен |
| `duration` | время смешивания в секундах |
| `exitTime` | сколько проходов клипа состояния должно проиграться; 1 — один проход |
| `interrupt` | может прервать идущее смешивание |
Содержит только блоки `cond`; все они должны выполняться.
## cond
Метка — это параметр.
| Атрибут | Значение |
|---|---|
| `op` | `set`, `eq`, `ne`, `gt`, `ge`, `lt` или `le`; триггеры используют `set` |
| `value` | число или `true`/`false`; обязателен, кроме `set` |