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