IDirect3DRM2

Applications use the methods of the IDirect3DRM2 interface to create Direct3DRM2 objects and work with system-level variables.

Applications use the methods of the IDirect3DRMDevice2 and IDirect3DRMDevice interfaces to interact with the output device. While the IDirect3DRMDevice interface, when created from the IDirect3DRM interface, works with an IDirect3DDevice Immediate-Mode device, the IDirect3DRMDevice2 interface, when created from the IDirect3DRM2 interface or initialized by the IDirect3DRMDevice2::InitFromClipper, IDirect3DRMDevice2::InitFromD3D2, or IDirect3DRMDevice2::InitFromSurface method, works with an IDirect3DDevice2 Immediate-Mode device. The IDirect3DDevice2 device supports the DrawPrimitive interface as well as execute buffers, and is required for progressive meshes and for alpha blending and sorting of transparent objects.

IDirect3DRM2 supports all the methods in IDirect3DRM. In addition, the IDirect3DRM2::CreateProgressiveMesh method had been added. The IDirect3DRM2::CreateDeviceFromSurface, IDirect3DRM2::CreateDeviceFromD3D, and IDirect3DRM2::CreateDeviceFromClipper methods all create a DIRECT3DRMDEVICE2 object. The IDirect3DRM2::CreateViewport method creates a viewport on a DirectDRMDevice2 object. The IDirect3DRM2::LoadTexture and IDirect3DRM2::LoadTextureFromResource methods load a Direct3DRMTexture2 object.

To access the IDirect3DRM2 COM interface, create an IDirect3DRM object with Direct3DRMCreate, then query for IDirect3DRM2 from IDirect3DRM.

For a conceptual overview, see IDirect3DRM and IDirect3DRM2 Interfaces.

The methods of the IDirect3DRM2 interface can be organized into the following groups:

Animation CreateAnimation
  CreateAnimationSet
Devices CreateDevice
  CreateDeviceFromClipper
  CreateDeviceFromD3D
  CreateDeviceFromSurface
  GetDevices
Enumeration EnumerateObjects
Faces CreateFace
Frames CreateFrame
Lights CreateLight
  CreateLightRGB
Materials CreateMaterial
Meshes CreateMesh
  CreateMeshBuilder
Miscellaneous CreateObject
  CreateUserVisual
  GetNamedObject
  Load
  Tick
Progressive Meshes CreateProgressiveMesh
Search paths AddSearchPath
  GetSearchPath
  SetSearchPath
Shadows CreateShadow
Textures CreateTexture
  CreateTextureFromSurface
  LoadTexture
  LoadTextureFromResource
  SetDefaultTextureColors
  SetDefaultTextureShades
Viewports CreateViewport
Wraps CreateWrap

The IDirect3DRM2 interface, like all COM interfaces, inherits the IUnknown interface methods. The IUnknown interface supports the following three methods:

AddRef

QueryInterface

Release