From JKHub Wiki
Revision as of 16:10, 4 November 2021 by Tonic (talk | contribs) (new)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

ROFF files (.rof) contain scripted (pre-defined) 3D transformations for entities. They are binary files. A ROFF changes the position and angles of an entity in a series of frames.

ROFF header

The header of a ROFF file is as follows.

char[4]  Header       // "ROFF"
int      Version      // always 2
int      Count        // number of frames in ROFF
int      FrameRate    // Frame rate (usually 0x32)
int      NumNotes

ROFF frames

The header is followed by the frames of the ROFF. Each frame defines a vector by which to transform the origin (position) of the entity, and a vector by which to transform the angles (rotation) of the entity.

float   x_delta
float   y_delta
float   z_delta
float   pitch_delta
float   yaw_delta
float   roll_delta   
int     StartNote      // always -1
int     NumNotes       // always 0