< GUI Callbacks | UserGuide | Scene management >


Graphics

Luxinia distincts between information how something is drawn and information if something is drawn.

The later one is important in order to reject objects that donnot have to be drawn since they are not visible. This is called frustum culling.

Once it is known which objects should be drawn, the triangles are sent to the graphics card in the order that have been specified when the objects have been created. This is important in cases when transparent objects are drawn.

The draworder is not of importance when the for the frustum culling and thus is not known to the structures that take care of the frustum culling: scenenodes and actornodes. Since these nodes donnot know how large an object is that should be drawn, weird poppings can be visible if certain functions are used to manipulate the visible nodes - which may make the object larger than it was before. In the default case however, the bounding boxes of the nodes are set to the bounding boxes of the visible objects, which are, in most cases, correct.

The difference between scenenodes and actornodes is, that actors are for dynmaic objects that are moving while scenenodes are used for static geometry which does not move. The later provides a hierarchy to add scenenodes in relative coordinates to other scenenodes. Actors can be linked against simulated objects so that lua does not need to update their positions "manually".