Using and extending 3D primitives

  • Primitives vs. rPrimitives

Built-in primitive types

  • Triangle

  • Polygon

  • Point

  • Mesh

  • Particles

  • ParticlesSprite

Extending a built-in primitive

  • Why do this?

  • What to subclass from

  • What methods to override

Adding a new custom primitive

  • Subclass from Primitive

Drawing in the 3D viewer

All primitives must provide methods to draw themselves in the 3D viewer. There are different drawing functions associated with different render passes:

  • draw_solid

  • draw_wireframe

Tesselating for the ScanlineRenderer

  • tesselate