1. Architectural Role & Engine Purpose
The SYN (Synchronized Cutscene Timeline) format orchestrates in-engine cinematic sequences, choreographed helicopter insertions, character dialogue lip-sync, and camera fly-through splines in I.G.I. 2: Covert Strike.
SYN files act as a multi-track director's timeline, synchronizing multiple actors, camera paths, facial speech audio files, and script event triggers against a master millisecond clock.
2. Binary File Layout & Memory Map Diagram
A SYN file organizes timeline keyframes, camera Bezier splines, and audio cue triggers:
3. Cutscene Director Execution Pipeline Diagram
During cinematic playback, the cutscene director interpolates cameras and synchronizes speech:
4. C++ Struct Definitions
#pragma pack(push, 1)
struct SynHeader {
char magic[4]; // "SYN2"
uint32_t version; // 2
float duration_ms; // Sequence length in milliseconds
uint32_t track_count; // Number of parallel tracks
uint32_t camera_nodes; // Camera spline keyframe count
uint32_t event_count; // Audio and script event triggers
};
struct SynCameraNode {
float time_ms; // Time offset in milliseconds
float eye[3]; // Camera position XYZ
float target[3]; // Camera look-at target XYZ
float fov; // Field of view angle (degrees)
float roll; // Camera roll angle
};
static_assert(sizeof(SynCameraNode) == 36, "SynCameraNode must be 36 bytes");
#pragma pack(pop)