|
Porytiles
|
Per-animation configuration override for animation decompilation. More...
#include <per_anim_override.hpp>
Per-animation configuration override for animation decompilation.
Holds palette resolution configuration, key frame resolution strategy, and a frame linking mode for a single animation. Palette resolution follows a three-tier cascade (most specific wins):
per_tile_pal_resolution_strategies): most specific. When non-empty, its length must exactly match the animation's tile_count. Each entry can be empty (no value) to fall through to the next tier.pal_resolution_strategy): middle tier. A single strategy applied to all subtiles of this animation that are not overridden by a per-tile entry.palette_resolution_strategy from DomainConfig): least specific fallback.Key frame resolution also supports a two-tier cascade: per-anim key_frame_resolution_strategy wins, otherwise falls back to key_frame_resolution_strategy from DomainConfig.
Multi-palette subtile resolution follows the same two-tier cascade: per-anim multi_pal_subtile_resolution_strategy wins, otherwise falls back to multi_pal_subtile_resolution_strategy from DomainConfig.
Frame linking also follows the same two-tier cascade: per-anim wins, otherwise falls back to the global setting.
Override fields use ConfigPODField<T> instead of std::optional<T> to carry provider-specific source metadata (source_key, canonical_name) set at parse time, enabling ConfigValue::derive() to construct properly attributed child values without hardcoding provider formats.
Definition at line 40 of file per_anim_override.hpp.
| std::string porytiles::PerAnimOverride::anim_name |
Definition at line 41 of file per_anim_override.hpp.
| ConfigPODField<AnimKeyFrameResolutionStrategy> porytiles::PerAnimOverride::key_frame_resolution_strategy |
Definition at line 44 of file per_anim_override.hpp.
| ConfigPODField<FrameLinking> porytiles::PerAnimOverride::linking |
Definition at line 46 of file per_anim_override.hpp.
| ConfigPODField<AnimMultiPalSubtileResolutionStrategy> porytiles::PerAnimOverride::multi_pal_subtile_resolution_strategy |
Definition at line 45 of file per_anim_override.hpp.
| ConfigPODField<AnimPalResolutionStrategy> porytiles::PerAnimOverride::pal_resolution_strategy |
Definition at line 42 of file per_anim_override.hpp.
| std::vector<ConfigPODField<AnimPalResolutionStrategy> > porytiles::PerAnimOverride::per_tile_pal_resolution_strategies |
Definition at line 43 of file per_anim_override.hpp.