- Enhanced chunk parsing - Improved structure definitions 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
37 lines
1.1 KiB
Plaintext
37 lines
1.1 KiB
Plaintext
// UCAT - User Camera Track Chunk
|
|
// Contains user-defined camera track data
|
|
// Found in .cut files
|
|
|
|
type ucat_chunk [display="UCAT User Camera Track"] byteorder BE
|
|
{
|
|
// Standard 16-byte Asura chunk header
|
|
chunk_id = ascii(read(4));
|
|
u32 chunk_size;
|
|
u32 version;
|
|
u32 flags;
|
|
|
|
chunk_id = chunk_id [ui, readonly, display="Chunk ID"];
|
|
chunk_size = chunk_size [ui, readonly, display="Chunk Size"];
|
|
version = version [ui, readonly, display="Version"];
|
|
flags = flags [ui, readonly, display="Flags"];
|
|
|
|
// Camera name (null-terminated)
|
|
camera_name = cstring();
|
|
camera_name = camera_name [ui, readonly, display="Camera Name"];
|
|
|
|
// Use camera name for display (clean removes non-printable chars)
|
|
_name = clean(camera_name);
|
|
|
|
// Track entry count
|
|
u32 entry_count;
|
|
entry_count = entry_count [ui, readonly, display="Entry Count"];
|
|
|
|
// Keyframe count
|
|
u32 keyframe_count;
|
|
keyframe_count = keyframe_count [ui, readonly, display="Keyframe Count"];
|
|
|
|
// Camera type/mode
|
|
u32 camera_mode;
|
|
camera_mode = camera_mode [ui, readonly, display="Camera Mode"];
|
|
}
|