Introduction to Direct3D Retained-Mode Objects

All access to Direct3D Retained Mode is through a small set of objects. The following table lists these objects and a brief description of each:

Object Description
Direct3DRMAnimation This object defines how a transformation will be modified, often in reference to a Direct3DRMFrame object; therefore, you can use it to animate the position, orientation, and scaling of Direct3DRMVisual, Direct3DRMLight, and Direct3DRMViewport objects.
Direct3DRMAnimationSet This object allows Direct3DRMAnimation objects to be grouped together.
Direct3DRMDevice This object represents the visual display destination for the renderer.
Direct3DRMFace This object represents a single polygon in a mesh.
Direct3DRMFrame This object positions objects within a scene and defines the positions and orientations of visual objects.
Direct3DRMLight This object defines one of five types of lights that are used to illuminate the visual objects in a scene.
Direct3DRMMaterial This object defines how a surface reflects light.
Direct3DRMMesh This object consists of a set of polygonal faces. You can use this object to manipulate groups of faces and vertices.
Direct3DRMMeshBuilder This object allows you to work with individual vertices and faces in a mesh.
Direct3DRMObject This object is a base class used by all other Direct3D Retained-Mode objects; it has characteristics that are common to all objects.
Direct3DRMPickedArray This object identifies a visual object that corresponds to a given 2D point.
Direct3DRMShadow This object defines a shadow.
Direct3DRMTexture This object is a rectangular array of colored pixels.
Direct3DRMUserVisual This object is defined by an application to provide functionality not otherwise available in the system.
Direct3DRMViewport This object defines how the 3D scene is rendered into a 2D window.
Direct3DRMVisual This object is anything that can be rendered in a scene. Visual objects need not be visible; for example, a frame can be added as a visual object.
Direct3DRMWrap This object calculates texture coordinates for a face or mesh.

Many objects can be grouped into arrays, called array objects. Array objects make it simpler to apply operations to the entire group. The COM interfaces that allow you to work with array objects contain the GetElement and GetSize methods. These methods retrieve a pointer to an element in the array and the size of the array, respectively. For more information about array interfaces, see Introduction to Array Interfaces.