Go to the first, previous, next, last section, table of contents.

### Binary format

Many OOGL objects accept binary as well as ASCII file formats. These files begin with the usual ASCII token (e.g. `CQUAD`) followed by the word `BINARY`. Binary data begins at the byte following the first newline after `BINARY`. White space and a single comment may intervene, e.g.

    OFF BINARY	# binary-format "OFF" data follows

Binary data comprise 32-bit integers and 32-bit IEEE-format floats, both in big-endian format (i.e., with most significant byte first). This is the native format for 'int's and 'float's on Sun-3's, Sun-4's, and Irises, among others.

Binary data formats resemble the corresponding ASCII formats, with ints and floats in just the places you'd expect. There are some exceptions though, specifically in the `QUAD`, `OFF` and `COMMENT` file formats. Details are given in the individual file format descriptions. See section QUAD: collection of quadrilaterals, See section OFF Files, and See section COMMENT Objects.

Binary OOGL objects may be freely mixed in ASCII object streams:

    LIST
    { = MESH BINARY
    ... binary data for mesh here ...
    }
    { = QUAD
    	1 0 0   0 0 1   0 1 0  0 1 0
    }

Note that ASCII data resumes immediately following the last byte of binary data.

Naturally, it's impossible to embed comments inside a binary-format OOGL object, though comments may appear in the header before the beginning of binary data.

Go to the first, previous, next, last section, table of contents.