.rof

From Jedi Knight Wiki | JKHub
Revision as of 16:10, 4 November 2021 by Tonic (talk | contribs) (new)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

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