squad-proto/assets/agents/catalog.yaml
z.kirill 8d35f4c2ec Конвейер ассетов: манифесты, риги, каталоги, инструменты
Всё, из чего собираются спрайты, и ничего собранного. Источник истины —
assets/manifests и assets/*/catalog.yaml; PNG, .sfa и contact sheet остаются
за бортом, потому что воспроизводятся командой (docs/12-assets.md).

  assets/manifests   что и как рендерить: окружение, твари, агенты, предметы
  assets/agents      паперdoll-риг восьми направлений, каталог снаряжения
  assets/monsters    пять морфологий, каждая своим ригом (docs/14-monsters.md)
  assets/sources     исходные развёртки и импорты
  assets/art_masters мастер-развёртки, по которым сверяется стиль
  tools/             сборка ассетов, покрытие, генераторы, blender-скрипты
  generated/         заголовки с константами SF_ASSET_*: без них игра не
                     соберётся, поэтому они в репозитории, хотя и производные

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-13 21:06:09 +03:00

44 lines
2.5 KiB
YAML
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.

version: 1
frame: {width: 70, height: 90, pivot_x: 35, pivot_y: 87}
directions: [south, southwest, west, northwest, north, northeast, east, southeast]
animations:
idle: {frames: 4, fps: 8}
walk: {frames: 8, fps: 12}
attack: {frames: 6, fps: 12}
# Одна камера на все компоненты и оба конвейера (Blender и растровый).
# elevation_deg = atan(TILE_H / TILE_W) = atan(0.5): ровно тот же 2:1, по
# которому в игре лежит пол (src/tuning.h). Разъедься эти два числа — фигура
# встала бы к полу под другим углом, чем ромб под ней.
camera:
elevation_deg: 26.565
# Alien-Shooter-like gameplay scale: an upright 1.8 m operator occupies
# roughly 28-30 internal pixels, not half the screen.
pixels_per_unit: 28.0
distance: 10.0 # только для клиппинга: проекция ортографическая
body_height: 1.80 # метры, худой взрослый; не бронированный громила
source_model: "assets/vendor/quaternius-universal-animation-library/files/Animation Library[Standard]/Godot/AnimationLibrary_Godot_Standard.glb"
source_rotation_deg: 0.0
source_scale: 0.96
source_ground_z: 0.0
# Low-resolution silhouette compensation applied after skin deformation.
# It preserves the authored skeleton/actions but prevents arms and legs from
# collapsing to one-pixel wires in a 70x90 sprite cell.
source_silhouette_thickness: 0.022
# Every component is rendered against the same skeleton/camera. Missing source
# files are allowed while authoring; `agent_assets.py validate --complete`
# turns them into errors for a release build.
components:
body_sleek: {slot: body, style: sleek infiltration body}
armor_jacket: {slot: armor, style: fitted field jacket and thin tactical harness}
armor_vest: {slot: armor, style: light low-profile ballistic vest}
armor_plate: {slot: armor, style: segmented medium ceramic chest plates}
armor_shroud: {slot: armor, style: close-fitting stealth shroud, no cape}
weapon_sword: {slot: weapon, style: narrow tactical longsword}
weapon_dagger: {slot: weapon, style: compact combat dagger}
weapon_rifle: {slot: weapon, style: compact suppressed assault rifle}
weapon_shotgun: {slot: weapon, style: short industrial combat shotgun}
weapon_pistol: {slot: weapon, style: suppressed service pistol}
weapon_bow: {slot: weapon, style: compact near-future compound bow}