<left> [Contents | Tutorials ]

### Lesson 3: Procedure of Primitives

The order in which primitives appear within a model is important! Depending on the order, things like grouped translations/rotations and coloring can produce different effects. So the V3D format should be considered a serial procedure to most applications.

All the primitives that exist in the V3D format fall into two basic catagories, visual and control. Visual primitives are drawn, like lines, triangles, quads, etc. While control primitives (rotate, translate, select color, etc) are used to modify the state of the drawing context (ie modifying the GL states of the current GL context if this model is to be drawn using OpenGL rendering).

For example, the following abstract occurance of primitives will produce a red triangle, a green triangle, and a textured triangle:

- `Color` red
- `Triangle`
- `Color` green
- `Triangle`
- `Texture Select` (some texture)
- `Color` white
- `Triangle`
- `Color` blue
- `Triangle`
- `Texture Unselect`

Note the `Color` primitive just after the `Texture Select` which specifies a white tint for the texture, that will texture the following `Triangle` with texture texels exactly as they appear on the texture. Following that is another `Color` primitive changes the tint to blue and the following triangle will be textured but with a blue tint.

While you are getting used to the notion of procedural 3D data, keep in mind that everything under V3D is ultimatly abstract, V3D is mearly data without a non-variant output standard. That means the program interpriting the V3D data can decide whatever it wants the data to look like with very little constraints other than the basic V3D specification.

In this next abstract example, two triangles have vertex data that are identical but they will be drawn differently beacause we insert a translate primitive.

- `Color` red
- `Triangle`
- `Translate` XYZ: +5 -4 +0
- `Triangle`
- `Untranslate`

So the second triangle will be moved to the right 5 units and back 4 units.

Next Lesson: Editing Primitives

######

Back to the top

Vertex is Copyright © 2000-2001 WolfPack Entertainment

</left>