A primitive is a term used in computational geometry to denote one of several basic geometric shapes, such as a cube, ellipsoid, sphere or triangle. When using a ray tracer, typically many world objects are defined in terms of simple primitives, for which ray-object intersection formulas are easy to derive and implement in software. Other interesting shapes can often be described through a constructive solid geometry (CSG) approach to combining primitives.