Methods and systems for compressing and decompressing 3-D geometry data which includes regularly tiled surface portions. One
compression method includes representing a surface portion as a "vertex raster", which comprises specifying an extent value and encoding the vertex parameter values of vertices within the surface portion. The extent of the surface portion specifies the arrangement of vertices within the surface portion, and allows the vertices to be properly assembled into drawing primitives during decompression. The encoded vertex parameter values may be encoded globally (by setting initial values and corresponding
delta values), locally (on a per-vertex basis), or using a combination of these techniques. Absolute,
delta encoding, or
delta-
delta encoding may be utilized for these parameter values. Vertex parameters which may be encoded in this manner include position, color, normals, z-displacement values, texture map coordinates, and surface material properties. Additionally,
connectivity information may also be encoded using this
compression method by specifying quad split bits and half-resolution edges. Quad split bits are used to tessellate a
quadrilateral formed by neighboring vertices of a surface portion according to the direction of the strongest color change. Half-resolution edges are utilized to gradually shift from an area of
high resolution to an adjacent surface portion represented in lower resolution. For graphical objects which include a plurality of adjacent surface portions, a step command is disclosed which allows data from one surface portion to be advantageously reused. Decompression of a vertex raster representation may comprise decoding the extent value, global parameter values, and a per-vertex
stream of local parameter values.