View Full Version : Mesh data structures

10-19-2009, 09:21 PM
Does anyone know what kind of a mesh data structure Lightwave 3D uses? Is it half-edge, winged-edge, radial-edge or a combination of all?


10-20-2009, 05:01 AM
"Uses", where? Internally in Modeler or Layout, in specific tools/features, or in LWO?

In any case I don't think it's anything that fancy, because (1) it is not necessary, (2) the functions available in the sdk doesn't suggest anything more than lists/lookup tables, (3) LW hasn't got an excellent set of edge mesh editing tools (which these would lay the foundation to) and lastly (4) LWs geometry doesn't hold any limitations that are common to atleast winged-edge structures.

For the LWO format I refer you to the SDK documentation.

Why is it of interest?

10-20-2009, 02:14 PM
First, thanks for the reply.

I'm on the verge of implementing a code for easy mesh manipulation/subdivision for research purposes.

I have been experimenting with the Modeler. It seems to be capable of handling non-manifold meshes, or simplicial complexes to be specific, even with subdivisions. Subdivision and other edge based modification tools (e.g. Extender) use extensive amount of queries about the neighborhood information on vertices, edges and faces, which make the query cost critical. It is known that edge-based mesh structures have constant cost for those queries without the need for hash tables, however not all of them are capable of handling non-manifold structures.

I wonder what kind of internal structure Lightwave uses to store and process non-manifold meshes for edge based modification/refinement/subdivision purposes, so that I can follow a similar way for my code.