.rof

From Jedi Knight Wiki | JKHub
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.

A ROFF can be used on models, brush entities, and even the camera (as at the beginning of the Nar Shaddaa Streets level in Jedi Outcast).

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