Introduction
LWOB is the original object format of LightWave 3D, written by LightWave up to version 5. It was documented by LightWave’s authors, Allen Hastings and Stuart Ferguson, whose description was last revised in November 1994. A file holds one object: its points, the polygons and curves made from them, and the surfaces that colour and shade them.
LightWave 6 replaced it with LWO2, which keeps the same extension but changes almost every chunk.
Structure
An LWOB file is an IFF file: one big-endian FORM chunk whose form type
is LWOB, holding further chunks. It must contain a PNTS
chunk (point positions), an SRFS chunk (surface names) and a
POLS chunk (polygons), and may contain any number of SURF
chunks (surface settings) and at most one CRVS chunk (spline curves).
POLS and CRVS must come after PNTS and
SRFS. A file holding only SURF chunks is a saved surface
description.
0FORM chunk ID, length, form typeLWOB12 bytes12PNTS point positions12 bytes each…SRFS surface namesvaries…POLS polygons, and optionally CRVS curvesvaries…SURF one per surfacevaries
In this reference
- Geometry chunks – the FORM, PNTS, SRFS, POLS with detail polygons, and CRVS, with an annotated example file
- Surfaces – the SURF chunk and every sub-chunk: colour, flags, shading levels, reflection, textures
Variants
- LightWave object (LWOB) – the original form, written by LightWave 5 and earlier
- LightWave object (LWO2) – the form from LightWave 6 on, with layers, vertex maps and surface blocks
Links
Software
- LightWave 3D – the modelling and animation package, which still reads LWOB files (Windows, macOS)
Developers
- Assimp – library that imports dozens of 3D formats, LWOB and LWO2 among them (C++)
Reference
- LightWave 3D object file format – Allen Hastings and Stuart Ferguson’s description of LWOB, revised 28 November 1994