SDL groups data into 23 formal types. Click on the highlighted text in the brief descriptions below to see complete descriptions of the data types.
A named group of data items (data items themselves do not have names). Arrays are created with a fixed size. Items in the array are numbered from 0. Arrays can contain items of any type (include other arrays). Arrays are often used to handle CVs.
Cameras are objects, similar to any piece of geometry: they are defined using a data type and then instanced as an object. This allows multiple cameras, saving of cameras, and so on.
A series of control vertices (CVs) for a spline curve or surface. Patches, faces, and motion curves are defined in terms of spline curves. Curves exist in 3D space (technically, homogenous 4-space).
A control vertex (CV) of a spline curve or surface. Curves are defined in terms of CVs. CVs exist in 3D space (technically, homogenous 4-space).
A planar object bounded by a curve, possibly with holes. Faces are a much more efficient way of representing a planar area than a patch surface.
Can be used in place of literal filenames.
Various types of light source.
A curve used for animation, usually as a path to follow.
Similar to a normal curve, used for animate curves. Parameter curves exist in 2D space and carry slope (tangent) information used for animation.
Similar to a CV, used for animate curves. Parameter vertices exist in 2D space and carry slope (tangent) information used for animation.
A spline surface defined by bounding CVs.
A polygonal mesh. You can specify a polyset literally or as a named variable.
A single numeric value. Scalars are stored and operated on as floating point, but will be automatically converted when assigned to items that require an integer.
A shader description.
A mathematical function used to create textures for shaders.
A set of matrices that relates the position, orientation and size of an object to the world coordinate system. This datatype can be stored and assigned, but not examined or operated on (it is an “opaque” data type).
Similar to a CV, used for trim curves. Trim vertices include extra information about their relationship to the surface being trimmed.
An ordered list of trim boundaries, defining a part of a NURBS surface to keep or discard in a trim operation.
An ordered list of trim edges, circling an area of a trimmed patch in parametric space.
A monotonic ordered list of trim curves, defining a 2D spline on a patch in parametric space.
An ordered list of 4 numbers representing the U, V, and T coordinates of a spline curve.
An ordered list of trim B-splines that describe an edge of a trim region on a NURBS surface.
An ordered triplet of numeric values. Very useful for storing 3D coordinates, vectors, and RGB values.