26#define IUNKNOWN_METHODS(kind) \ 
   27    STDMETHOD(QueryInterface)       (THIS_ REFIID riid, LPVOID *ppvObj) kind; \ 
   28    STDMETHOD_(ULONG, AddRef)       (THIS) kind; \ 
   29    STDMETHOD_(ULONG, Release)      (THIS) kind 
   34#define IDIRECT3DRMOBJECT_METHODS(kind) \ 
   35    STDMETHOD(Clone)            (THIS_ LPUNKNOWN pUnkOuter, REFIID riid, LPVOID *ppvObj) kind; \ 
   36    STDMETHOD(AddDestroyCallback)   (THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) kind; \ 
   37    STDMETHOD(DeleteDestroyCallback)    (THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) kind; \ 
   38    STDMETHOD(SetAppData)       (THIS_ DWORD data) kind; \ 
   39    STDMETHOD_(DWORD, GetAppData)   (THIS) kind; \ 
   40    STDMETHOD(SetName)          (THIS_ LPCSTR) kind; \ 
   41    STDMETHOD(GetName)          (THIS_ LPDWORD lpdwSize, LPSTR lpName) kind; \ 
   42    STDMETHOD(GetClassName)     (THIS_ LPDWORD lpdwSize, LPSTR lpName) kind 
   45#define WIN_TYPES(itype, ptype) \ 
   46    typedef interface itype FAR *LP##ptype, FAR **LPLP##ptype 
   56WIN_TYPES(IDirect3DRMMeshBuilder, DIRECT3DRMMESHBUILDER);
 
   57WIN_TYPES(IDirect3DRMMeshBuilder2, DIRECT3DRMMESHBUILDER2);
 
   64WIN_TYPES(IDirect3DRMInterpolator, DIRECT3DRMINTERPOLATOR);
 
   65WIN_TYPES(IDirect3DRMAnimation, DIRECT3DRMANIMATION);
 
   66WIN_TYPES(IDirect3DRMAnimationSet, DIRECT3DRMANIMATIONSET);
 
   67WIN_TYPES(IDirect3DRMUserVisual, DIRECT3DRMUSERVISUAL);
 
   70WIN_TYPES(IDirect3DRMObjectArray, DIRECT3DRMOBJECTARRAY);
 
   71WIN_TYPES(IDirect3DRMDeviceArray, DIRECT3DRMDEVICEARRAY);
 
   72WIN_TYPES(IDirect3DRMFaceArray, DIRECT3DRMFACEARRAY);
 
   73WIN_TYPES(IDirect3DRMViewportArray, DIRECT3DRMVIEWPORTARRAY);
 
   74WIN_TYPES(IDirect3DRMFrameArray, DIRECT3DRMFRAMEARRAY);
 
   75WIN_TYPES(IDirect3DRMVisualArray, DIRECT3DRMVISUALARRAY);
 
   76WIN_TYPES(IDirect3DRMPickedArray, DIRECT3DRMPICKEDARRAY);
 
   77WIN_TYPES(IDirect3DRMPicked2Array, DIRECT3DRMPICKED2ARRAY);
 
   78WIN_TYPES(IDirect3DRMLightArray, DIRECT3DRMLIGHTARRAY);
 
   79WIN_TYPES(IDirect3DRMProgressiveMesh, DIRECT3DRMPROGRESSIVEMESH);
 
   84DEFINE_GUID(CLSID_CDirect3DRMDevice,        0x4fa3568e, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
   85DEFINE_GUID(CLSID_CDirect3DRMViewport,      0x4fa3568f, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
   86DEFINE_GUID(CLSID_CDirect3DRMFrame,     0x4fa35690, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
   87DEFINE_GUID(CLSID_CDirect3DRMMesh,      0x4fa35691, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
   88DEFINE_GUID(CLSID_CDirect3DRMMeshBuilder,   0x4fa35692, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
   89DEFINE_GUID(CLSID_CDirect3DRMFace,      0x4fa35693, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
   90DEFINE_GUID(CLSID_CDirect3DRMLight,     0x4fa35694, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
   91DEFINE_GUID(CLSID_CDirect3DRMTexture,       0x4fa35695, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
   92DEFINE_GUID(CLSID_CDirect3DRMWrap,      0x4fa35696, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
   93DEFINE_GUID(CLSID_CDirect3DRMMaterial,      0x4fa35697, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
   94DEFINE_GUID(CLSID_CDirect3DRMAnimation,     0x4fa35698, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
   95DEFINE_GUID(CLSID_CDirect3DRMAnimationSet,  0x4fa35699, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
   96DEFINE_GUID(CLSID_CDirect3DRMUserVisual,    0x4fa3569a, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
   97DEFINE_GUID(CLSID_CDirect3DRMShadow,        0x4fa3569b, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
   990xde9eaa1, 0x3b84, 0x11d0, 0x9b, 0x6d, 0x0, 0x0, 0xc0, 0x78, 0x1b, 0xc3);
 
  1010xde9eaa2, 0x3b84, 0x11d0, 0x9b, 0x6d, 0x0, 0x0, 0xc0, 0x78, 0x1b, 0xc3);
 
  1030xde9eaa3, 0x3b84, 0x11d0, 0x9b, 0x6d, 0x0, 0x0, 0xc0, 0x78, 0x1b, 0xc3);
 
  1050xde9eaa6, 0x3b84, 0x11d0, 0x9b, 0x6d, 0x0, 0x0, 0xc0, 0x78, 0x1b, 0xc3);
 
  1070xde9eaa7, 0x3b84, 0x11d0, 0x9b, 0x6d, 0x0, 0x0, 0xc0, 0x78, 0x1b, 0xc3);
 
  1090xde9eaa8, 0x3b84, 0x11d0, 0x9b, 0x6d, 0x0, 0x0, 0xc0, 0x78, 0x1b, 0xc3);
 
  110DEFINE_GUID(CLSID_CDirect3DRMProgressiveMesh, 0x4516ec40, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3);
 
  116DEFINE_GUID(IID_IDirect3DRMObject,      0xeb16cb00, 0xd271, 0x11ce, 0xac, 0x48, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
  117DEFINE_GUID(IID_IDirect3DRMDevice,      0xe9e19280, 0x6e05, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
  118DEFINE_GUID(IID_IDirect3DRMDevice2,     0x4516ec78, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3);
 
  119DEFINE_GUID(IID_IDirect3DRMViewport,        0xeb16cb02, 0xd271, 0x11ce, 0xac, 0x48, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
  120DEFINE_GUID(IID_IDirect3DRMFrame,       0xeb16cb03, 0xd271, 0x11ce, 0xac, 0x48, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
  121DEFINE_GUID(IID_IDirect3DRMFrame2,      0xc3dfbd60, 0x3988, 0x11d0, 0x9e, 0xc2, 0x0, 0x0, 0xc0, 0x29, 0x1a, 0xc3);
 
  122DEFINE_GUID(IID_IDirect3DRMVisual,      0xeb16cb04, 0xd271, 0x11ce, 0xac, 0x48, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
  123DEFINE_GUID(IID_IDirect3DRMMesh,        0xa3a80d01, 0x6e12, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
  124DEFINE_GUID(IID_IDirect3DRMMeshBuilder,     0xa3a80d02, 0x6e12, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
  125DEFINE_GUID(IID_IDirect3DRMMeshBuilder2,    0x4516ec77, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x0, 0x0, 0xc0, 0x78, 0x1b, 0xc3);
 
  126DEFINE_GUID(IID_IDirect3DRMFace,        0xeb16cb07, 0xd271, 0x11ce, 0xac, 0x48, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
  127DEFINE_GUID(IID_IDirect3DRMLight,       0xeb16cb08, 0xd271, 0x11ce, 0xac, 0x48, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
  128DEFINE_GUID(IID_IDirect3DRMTexture,         0xeb16cb09, 0xd271, 0x11ce, 0xac, 0x48, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
  129DEFINE_GUID(IID_IDirect3DRMTexture2,        0x120f30c0, 0x1629, 0x11d0, 0x94, 0x1c, 0x0, 0x80, 0xc8, 0xc, 0xfa, 0x7b);
 
  130DEFINE_GUID(IID_IDirect3DRMWrap,        0xeb16cb0a, 0xd271, 0x11ce, 0xac, 0x48, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
  131DEFINE_GUID(IID_IDirect3DRMMaterial,        0xeb16cb0b, 0xd271, 0x11ce, 0xac, 0x48, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
  132DEFINE_GUID(IID_IDirect3DRMAnimation,       0xeb16cb0d, 0xd271, 0x11ce, 0xac, 0x48, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
  133DEFINE_GUID(IID_IDirect3DRMAnimationSet,    0xeb16cb0e, 0xd271, 0x11ce, 0xac, 0x48, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
  134DEFINE_GUID(IID_IDirect3DRMObjectArray,     0x242f6bc2, 0x3849, 0x11d0, 0x9b, 0x6d, 0x0, 0x0, 0xc0, 0x78, 0x1b, 0xc3);
 
  135DEFINE_GUID(IID_IDirect3DRMDeviceArray,     0xeb16cb10, 0xd271, 0x11ce, 0xac, 0x48, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
  136DEFINE_GUID(IID_IDirect3DRMViewportArray,   0xeb16cb11, 0xd271, 0x11ce, 0xac, 0x48, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
  137DEFINE_GUID(IID_IDirect3DRMFrameArray,      0xeb16cb12, 0xd271, 0x11ce, 0xac, 0x48, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
  138DEFINE_GUID(IID_IDirect3DRMVisualArray,     0xeb16cb13, 0xd271, 0x11ce, 0xac, 0x48, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
  139DEFINE_GUID(IID_IDirect3DRMLightArray,      0xeb16cb14, 0xd271, 0x11ce, 0xac, 0x48, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
  140DEFINE_GUID(IID_IDirect3DRMPickedArray,     0xeb16cb16, 0xd271, 0x11ce, 0xac, 0x48, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
  141DEFINE_GUID(IID_IDirect3DRMFaceArray,       0xeb16cb17, 0xd271, 0x11ce, 0xac, 0x48, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
  142DEFINE_GUID(IID_IDirect3DRMUserVisual,      0x59163de0, 0x6d43, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
  143DEFINE_GUID(IID_IDirect3DRMShadow,      0xaf359780, 0x6ba3, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
 
  144DEFINE_GUID(IID_IDirect3DRMInterpolator,    0x242f6bc1, 0x3849, 0x11d0, 0x9b, 0x6d, 0x0, 0x0, 0xc0, 0x78, 0x1b, 0xc3);
 
  145DEFINE_GUID(IID_IDirect3DRMProgressiveMesh, 0x4516ec79, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3);
 
  146DEFINE_GUID(IID_IDirect3DRMPicked2Array,    0x4516ec7b, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3);
 
  154        LPDIRECT3DRMDEVICE dev, LPDIRECT3DRMVIEWPORT view
 
  157    (
char *tex_name, 
void *arg, LPDIRECT3DRMTEXTURE *);
 
  159    (LPDIRECT3DRMOBJECT object, REFIID objectguid, 
LPVOID arg);
 
  183#define INTERFACE IDirect3DRMObject 
  195#define INTERFACE IDirect3DRMVisual 
  204#define INTERFACE IDirect3DRMDevice 
  214    STDMETHOD(Init)(THIS_ ULONG width, ULONG height) PURE;
 
  216    STDMETHOD(InitFromClipper)(THIS_ 
LPDIRECTDRAWCLIPPER lpDDClipper, LPGUID lpGUID, 
int width, 
int height) PURE;
 
  218    STDMETHOD(Update)(THIS) PURE;
 
  221    STDMETHOD(SetBufferCount)(THIS_ 
DWORD) PURE;
 
  222    STDMETHOD_(
DWORD, GetBufferCount)(THIS) PURE;
 
  224    STDMETHOD(SetDither)(THIS_ 
BOOL) PURE;
 
  225    STDMETHOD(SetShades)(THIS_ 
DWORD) PURE;
 
  229    STDMETHOD(GetViewports)(THIS_ LPDIRECT3DRMVIEWPORTARRAY *return_views) PURE;
 
  231    STDMETHOD_(
BOOL, GetDither)(THIS) PURE;
 
  232    STDMETHOD_(
DWORD, GetShades)(THIS) PURE;
 
  233    STDMETHOD_(
DWORD, GetHeight)(THIS) PURE;
 
  234    STDMETHOD_(
DWORD, GetWidth)(THIS) PURE;
 
  235    STDMETHOD_(
DWORD, GetTrianglesDrawn)(THIS) PURE;
 
  236    STDMETHOD_(
DWORD, GetWireframeOptions)(THIS) PURE;
 
  244#define INTERFACE IDirect3DRMDevice2 
  254    STDMETHOD(Init)(THIS_ ULONG width, ULONG height) PURE;
 
  256    STDMETHOD(InitFromClipper)(THIS_ 
LPDIRECTDRAWCLIPPER lpDDClipper, LPGUID lpGUID, 
int width, 
int height) PURE;
 
  258    STDMETHOD(Update)(THIS) PURE;
 
  261    STDMETHOD(SetBufferCount)(THIS_ 
DWORD) PURE;
 
  262    STDMETHOD_(
DWORD, GetBufferCount)(THIS) PURE;
 
  264    STDMETHOD(SetDither)(THIS_ 
BOOL) PURE;
 
  265    STDMETHOD(SetShades)(THIS_ 
DWORD) PURE;
 
  269    STDMETHOD(GetViewports)(THIS_ LPDIRECT3DRMVIEWPORTARRAY *return_views) PURE;
 
  271    STDMETHOD_(
BOOL, GetDither)(THIS) PURE;
 
  272    STDMETHOD_(
DWORD, GetShades)(THIS) PURE;
 
  273    STDMETHOD_(
DWORD, GetHeight)(THIS) PURE;
 
  274    STDMETHOD_(
DWORD, GetWidth)(THIS) PURE;
 
  275    STDMETHOD_(
DWORD, GetTrianglesDrawn)(THIS) PURE;
 
  276    STDMETHOD_(
DWORD, GetWireframeOptions)(THIS) PURE;
 
  288    STDMETHOD_(
DWORD, GetRenderMode)(THIS) PURE;
 
  293#define INTERFACE IDirect3DRMViewport 
  304    (   THIS_ LPDIRECT3DRMDEVICE dev, LPDIRECT3DRMFRAME camera,
 
  307    STDMETHOD(Clear)(THIS) PURE;
 
  308    STDMETHOD(Render)(THIS_ LPDIRECT3DRMFRAME) PURE;
 
  310    STDMETHOD(SetFront)(THIS_ 
D3DVALUE) PURE;
 
  311    STDMETHOD(SetBack)(THIS_ 
D3DVALUE) PURE;
 
  312    STDMETHOD(SetField)(THIS_ 
D3DVALUE) PURE;
 
  313    STDMETHOD(SetUniformScaling)(THIS_ 
BOOL) PURE;
 
  314    STDMETHOD(SetCamera)(THIS_ LPDIRECT3DRMFRAME) PURE;
 
  318    STDMETHOD(Configure)(THIS_ LONG x, LONG y, 
DWORD width, 
DWORD height) PURE;
 
  322    STDMETHOD(GetCamera)(THIS_ LPDIRECT3DRMFRAME *) PURE;
 
  323    STDMETHOD(GetDevice)(THIS_ LPDIRECT3DRMDEVICE *) PURE;
 
  325    STDMETHOD(Pick)(THIS_ LONG x, LONG y, LPDIRECT3DRMPICKEDARRAY *return_visuals) PURE;
 
  327    STDMETHOD_(
BOOL, GetUniformScaling)(THIS) PURE;
 
  328    STDMETHOD_(LONG, GetX)(THIS) PURE;
 
  329    STDMETHOD_(LONG, GetY)(THIS) PURE;
 
  330    STDMETHOD_(
DWORD, GetWidth)(THIS) PURE;
 
  331    STDMETHOD_(
DWORD, GetHeight)(THIS) PURE;
 
  332    STDMETHOD_(
D3DVALUE, GetField)(THIS) PURE;
 
  333    STDMETHOD_(
D3DVALUE, GetBack)(THIS) PURE;
 
  334    STDMETHOD_(
D3DVALUE, GetFront)(THIS) PURE;
 
  340#define INTERFACE IDirect3DRMFrame 
  350    STDMETHOD(AddChild)(THIS_ LPDIRECT3DRMFRAME child) PURE;
 
  351    STDMETHOD(AddLight)(THIS_ LPDIRECT3DRMLIGHT) PURE;
 
  357    STDMETHOD(AddVisual)(THIS_ LPDIRECT3DRMVISUAL) PURE;
 
  358    STDMETHOD(GetChildren)(THIS_ LPDIRECT3DRMFRAMEARRAY *children) PURE;
 
  359    STDMETHOD_(
D3DCOLOR, GetColor)(THIS) PURE;
 
  360    STDMETHOD(GetLights)(THIS_ LPDIRECT3DRMLIGHTARRAY *lights) PURE;
 
  362    STDMETHOD(GetParent)(THIS_ LPDIRECT3DRMFRAME *) PURE;
 
  363    STDMETHOD(GetPosition)(THIS_ LPDIRECT3DRMFRAME reference, 
LPD3DVECTOR return_position) PURE;
 
  364    STDMETHOD(GetRotation)(THIS_ LPDIRECT3DRMFRAME reference, 
LPD3DVECTOR axis, 
LPD3DVALUE return_theta) PURE;
 
  365    STDMETHOD(GetScene)(THIS_ LPDIRECT3DRMFRAME *) PURE;
 
  367    STDMETHOD(GetTexture)(THIS_ LPDIRECT3DRMTEXTURE *) PURE;
 
  368    STDMETHOD(GetTransform)(THIS_ 
D3DRMMATRIX4D return_matrix) PURE;
 
  369    STDMETHOD(GetVelocity)(THIS_ LPDIRECT3DRMFRAME reference, 
LPD3DVECTOR return_velocity, 
BOOL with_rotation) PURE;
 
  371    STDMETHOD(GetVisuals)(THIS_ LPDIRECT3DRMVISUALARRAY *visuals) PURE;
 
  372    STDMETHOD(GetTextureTopology)(THIS_ 
BOOL *wrap_u, 
BOOL *wrap_v) PURE;
 
  375    STDMETHOD(LookAt)(THIS_ LPDIRECT3DRMFRAME target, LPDIRECT3DRMFRAME reference, 
D3DRMFRAMECONSTRAINT) PURE;
 
  376    STDMETHOD(Move)(THIS_ 
D3DVALUE delta) PURE;
 
  377    STDMETHOD(DeleteChild)(THIS_ LPDIRECT3DRMFRAME) PURE;
 
  378    STDMETHOD(DeleteLight)(THIS_ LPDIRECT3DRMLIGHT) PURE;
 
  380    STDMETHOD(DeleteVisual)(THIS_ LPDIRECT3DRMVISUAL) PURE;
 
  381    STDMETHOD_(
D3DCOLOR, GetSceneBackground)(THIS) PURE;
 
  383    STDMETHOD_(
D3DCOLOR, GetSceneFogColor)(THIS) PURE;
 
  384    STDMETHOD_(
BOOL, GetSceneFogEnable)(THIS) PURE;
 
  387    STDMETHOD(SetSceneBackground)(THIS_ 
D3DCOLOR) PURE;
 
  390    STDMETHOD(SetSceneBackgroundImage)(THIS_ LPDIRECT3DRMTEXTURE) PURE;
 
  391    STDMETHOD(SetSceneFogEnable)(THIS_ 
BOOL) PURE;
 
  392    STDMETHOD(SetSceneFogColor)(THIS_ 
D3DCOLOR) PURE;
 
  395    STDMETHOD(SetColor)(THIS_ 
D3DCOLOR) PURE;
 
  399    STDMETHOD(SetOrientation)
 
  400    (   THIS_ LPDIRECT3DRMFRAME reference,
 
  407    STDMETHOD(SetTexture)(THIS_ LPDIRECT3DRMTEXTURE) PURE;
 
  408    STDMETHOD(SetTextureTopology)(THIS_ 
BOOL wrap_u, 
BOOL wrap_v) PURE;
 
  415#define INTERFACE IDirect3DRMFrame2 
  425    STDMETHOD(AddChild)(THIS_ LPDIRECT3DRMFRAME child) PURE;
 
  426    STDMETHOD(AddLight)(THIS_ LPDIRECT3DRMLIGHT) PURE;
 
  432    STDMETHOD(AddVisual)(THIS_ LPDIRECT3DRMVISUAL) PURE;
 
  433    STDMETHOD(GetChildren)(THIS_ LPDIRECT3DRMFRAMEARRAY *children) PURE;
 
  434    STDMETHOD_(
D3DCOLOR, GetColor)(THIS) PURE;
 
  435    STDMETHOD(GetLights)(THIS_ LPDIRECT3DRMLIGHTARRAY *lights) PURE;
 
  437    STDMETHOD(GetParent)(THIS_ LPDIRECT3DRMFRAME *) PURE;
 
  438    STDMETHOD(GetPosition)(THIS_ LPDIRECT3DRMFRAME reference, 
LPD3DVECTOR return_position) PURE;
 
  439    STDMETHOD(GetRotation)(THIS_ LPDIRECT3DRMFRAME reference, 
LPD3DVECTOR axis, 
LPD3DVALUE return_theta) PURE;
 
  440    STDMETHOD(GetScene)(THIS_ LPDIRECT3DRMFRAME *) PURE;
 
  442    STDMETHOD(GetTexture)(THIS_ LPDIRECT3DRMTEXTURE *) PURE;
 
  443    STDMETHOD(GetTransform)(THIS_ 
D3DRMMATRIX4D return_matrix) PURE;
 
  444    STDMETHOD(GetVelocity)(THIS_ LPDIRECT3DRMFRAME reference, 
LPD3DVECTOR return_velocity, 
BOOL with_rotation) PURE;
 
  446    STDMETHOD(GetVisuals)(THIS_ LPDIRECT3DRMVISUALARRAY *visuals) PURE;
 
  447    STDMETHOD(GetTextureTopology)(THIS_ 
BOOL *wrap_u, 
BOOL *wrap_v) PURE;
 
  450    STDMETHOD(LookAt)(THIS_ LPDIRECT3DRMFRAME target, LPDIRECT3DRMFRAME reference, 
D3DRMFRAMECONSTRAINT) PURE;
 
  451    STDMETHOD(Move)(THIS_ 
D3DVALUE delta) PURE;
 
  452    STDMETHOD(DeleteChild)(THIS_ LPDIRECT3DRMFRAME) PURE;
 
  453    STDMETHOD(DeleteLight)(THIS_ LPDIRECT3DRMLIGHT) PURE;
 
  455    STDMETHOD(DeleteVisual)(THIS_ LPDIRECT3DRMVISUAL) PURE;
 
  456    STDMETHOD_(
D3DCOLOR, GetSceneBackground)(THIS) PURE;
 
  458    STDMETHOD_(
D3DCOLOR, GetSceneFogColor)(THIS) PURE;
 
  459    STDMETHOD_(
BOOL, GetSceneFogEnable)(THIS) PURE;
 
  462    STDMETHOD(SetSceneBackground)(THIS_ 
D3DCOLOR) PURE;
 
  465    STDMETHOD(SetSceneBackgroundImage)(THIS_ LPDIRECT3DRMTEXTURE) PURE;
 
  466    STDMETHOD(SetSceneFogEnable)(THIS_ 
BOOL) PURE;
 
  467    STDMETHOD(SetSceneFogColor)(THIS_ 
D3DCOLOR) PURE;
 
  470    STDMETHOD(SetColor)(THIS_ 
D3DCOLOR) PURE;
 
  474    STDMETHOD(SetOrientation)
 
  475    (   THIS_ LPDIRECT3DRMFRAME reference,
 
  482    STDMETHOD(SetTexture)(THIS_ LPDIRECT3DRMTEXTURE) PURE;
 
  483    STDMETHOD(SetTextureTopology)(THIS_ 
BOOL wrap_u, 
BOOL wrap_v) PURE;
 
  493    STDMETHOD_(
BOOL, GetBoxEnable)(THIS) PURE;
 
  495    STDMETHOD(GetMaterial)(THIS_ LPDIRECT3DRMMATERIAL *) PURE;
 
  496    STDMETHOD_(
BOOL, GetInheritAxes)(THIS);
 
  497    STDMETHOD(GetHierarchyBox)(THIS_ 
LPD3DRMBOX) PURE;
 
  500    STDMETHOD(SetBoxEnable)(THIS_ 
BOOL) PURE;
 
  503    STDMETHOD(SetInheritAxes)(THIS_ 
BOOL inherit_from_parent);
 
  504    STDMETHOD(SetMaterial)(THIS_ LPDIRECT3DRMMATERIAL) PURE;
 
  505    STDMETHOD(SetQuaternion)(THIS_ LPDIRECT3DRMFRAME reference, 
D3DRMQUATERNION *q) PURE;
 
  507    STDMETHOD(RayPick)(THIS_ LPDIRECT3DRMFRAME reference, 
LPD3DRMRAY ray, 
DWORD dwFlags, LPDIRECT3DRMPICKED2ARRAY *return_visuals) PURE;
 
  513#define INTERFACE IDirect3DRMMesh 
  525    STDMETHOD(GetBox)(THIS_ 
D3DRMBOX *) PURE;
 
  526    STDMETHOD(AddGroup)(THIS_ 
unsigned vCount, 
unsigned fCount, 
unsigned vPerFace, 
unsigned *fData, 
D3DRMGROUPINDEX *returnId) PURE;
 
  532    STDMETHOD(SetGroupMaterial)(THIS_ 
D3DRMGROUPINDEX id, LPDIRECT3DRMMATERIAL value) PURE;
 
  533    STDMETHOD(SetGroupTexture)(THIS_ 
D3DRMGROUPINDEX id, LPDIRECT3DRMTEXTURE value) PURE;
 
  535    STDMETHOD_(
unsigned, GetGroupCount)(THIS) PURE;
 
  536    STDMETHOD(GetGroup)(THIS_ 
D3DRMGROUPINDEX id, 
unsigned *vCount, 
unsigned *fCount, 
unsigned *vPerFace, 
DWORD *fDataSize, 
unsigned *fData) PURE;
 
  541    STDMETHOD(GetGroupMaterial)(THIS_ 
D3DRMGROUPINDEX id, LPDIRECT3DRMMATERIAL *returnPtr) PURE;
 
  542    STDMETHOD(GetGroupTexture)(THIS_ 
D3DRMGROUPINDEX id, LPDIRECT3DRMTEXTURE *returnPtr) PURE;
 
  546#define INTERFACE IDirect3DRMProgressiveMesh 
  556    STDMETHOD(Load) (THIS_ 
LPVOID lpObjLocation, 
LPVOID lpObjId, 
 
  560    STDMETHOD(SetMinRenderDetail) (THIS_ 
D3DVALUE d3dVal) PURE;
 
  563    STDMETHOD(GetFaceDetail) (THIS_ LPDWORD lpdwCount) PURE;
 
  564    STDMETHOD(GetVertexDetail) (THIS_ LPDWORD lpdwCount) PURE;
 
  565    STDMETHOD(SetFaceDetail) (THIS_ 
DWORD dwCount) PURE;
 
  566    STDMETHOD(SetVertexDetail) (THIS_ 
DWORD dwCount) PURE;
 
  567    STDMETHOD(GetFaceDetailRange) (THIS_ LPDWORD lpdwMin, LPDWORD lpdwMax) PURE;
 
  568    STDMETHOD(GetVertexDetailRange) (THIS_ LPDWORD lpdwMin, LPDWORD lpdwMax) PURE;
 
  569    STDMETHOD(GetDetail) (THIS_ 
D3DVALUE *lpdvVal) PURE;
 
  570    STDMETHOD(SetDetail) (THIS_ 
D3DVALUE d3dVal) PURE;
 
  572    STDMETHOD(RegisterEvents) (THIS_ HANDLE hEvent, 
DWORD dwFlags, 
DWORD dwReserved) PURE;
 
  573    STDMETHOD(CreateMesh) (THIS_ LPDIRECT3DRMMESH *lplpD3DRMMesh) PURE;
 
  574    STDMETHOD(Duplicate) (THIS_ LPDIRECT3DRMPROGRESSIVEMESH *lplpD3DRMPMesh) PURE;
 
  575    STDMETHOD(GetBox) (THIS_ 
LPD3DRMBOX lpBBox) PURE;
 
  581#define INTERFACE IDirect3DRMShadow 
  592    (   THIS_ LPDIRECT3DRMVISUAL visual, LPDIRECT3DRMLIGHT light,
 
  599#define INTERFACE IDirect3DRMFace 
  610     STDMETHOD(AddVertexAndNormalIndexed)(THIS_ 
DWORD vertex, 
DWORD normal) PURE;
 
  612     STDMETHOD(SetColor)(THIS_ 
D3DCOLOR) PURE;
 
  613     STDMETHOD(SetTexture)(THIS_ LPDIRECT3DRMTEXTURE) PURE;
 
  615     STDMETHOD(SetMaterial)(THIS_ LPDIRECT3DRMMATERIAL) PURE;
 
  616     STDMETHOD(SetTextureTopology)(THIS_ 
BOOL wrap_u, 
BOOL wrap_v) PURE;
 
  621     STDMETHOD(GetTextureTopology)(THIS_ 
BOOL *wrap_u, 
BOOL *wrap_v) PURE;
 
  622     STDMETHOD(GetNormal)(THIS_ 
D3DVECTOR *) PURE;
 
  623     STDMETHOD(GetTexture)(THIS_ LPDIRECT3DRMTEXTURE *) PURE;
 
  624     STDMETHOD(GetMaterial)(THIS_ LPDIRECT3DRMMATERIAL *) PURE;
 
  626     STDMETHOD_(
int, GetVertexCount)(THIS) PURE;
 
  627     STDMETHOD_(
int, GetVertexIndex)(THIS_ 
DWORD which) PURE;
 
  628     STDMETHOD_(
int, GetTextureCoordinateIndex)(THIS_ 
DWORD which) PURE;
 
  629     STDMETHOD_(
D3DCOLOR, GetColor)(THIS) PURE;
 
  633#define INTERFACE IDirect3DRMMeshBuilder 
  648    STDMETHOD(GetBox)(THIS_ 
D3DRMBOX *) PURE;
 
  649    STDMETHOD(GenerateNormals)(THIS) PURE;
 
  652    STDMETHOD(AddMesh)(THIS_ LPDIRECT3DRMMESH) PURE;
 
  653    STDMETHOD(AddMeshBuilder)(THIS_ LPDIRECT3DRMMESHBUILDER) PURE;
 
  654    STDMETHOD(AddFrame)(THIS_ LPDIRECT3DRMFRAME) PURE;
 
  655    STDMETHOD(AddFace)(THIS_ LPDIRECT3DRMFACE) PURE;
 
  658    DWORD *data, LPDIRECT3DRMFACEARRAY*
 
  660    STDMETHOD(ReserveSpace)(THIS_ 
DWORD vertex_Count, 
DWORD normal_count, 
DWORD face_count) PURE;
 
  662    STDMETHOD(SetColor)(THIS_ 
D3DCOLOR) PURE;
 
  663    STDMETHOD(SetTexture)(THIS_ LPDIRECT3DRMTEXTURE) PURE;
 
  664    STDMETHOD(SetMaterial)(THIS_ LPDIRECT3DRMMATERIAL) PURE;
 
  665    STDMETHOD(SetTextureTopology)(THIS_ 
BOOL wrap_u, 
BOOL wrap_v) PURE;
 
  667    STDMETHOD(SetPerspective)(THIS_ 
BOOL) PURE;
 
  674    STDMETHOD(GetFaces)(THIS_ LPDIRECT3DRMFACEARRAY*) PURE;
 
  675    STDMETHOD(GetVertices)
 
  682    STDMETHOD(CreateFace)(THIS_ LPDIRECT3DRMFACE*) PURE;
 
  684    STDMETHOD_(
BOOL, GetPerspective)(THIS) PURE;
 
  685    STDMETHOD_(
int, GetFaceCount)(THIS) PURE;
 
  686    STDMETHOD_(
int, GetVertexCount)(THIS) PURE;
 
  687    STDMETHOD_(
D3DCOLOR, GetVertexColor)(THIS_ 
DWORD index) PURE;
 
  689    STDMETHOD(CreateMesh)(THIS_ LPDIRECT3DRMMESH*) PURE;
 
  693#define INTERFACE IDirect3DRMMeshBuilder2 
  708    STDMETHOD(GetBox)(THIS_ 
D3DRMBOX *) PURE;
 
  709    STDMETHOD(GenerateNormals)(THIS) PURE;
 
  712    STDMETHOD(AddMesh)(THIS_ LPDIRECT3DRMMESH) PURE;
 
  713    STDMETHOD(AddMeshBuilder)(THIS_ LPDIRECT3DRMMESHBUILDER) PURE;
 
  714    STDMETHOD(AddFrame)(THIS_ LPDIRECT3DRMFRAME) PURE;
 
  715    STDMETHOD(AddFace)(THIS_ LPDIRECT3DRMFACE) PURE;
 
  718    DWORD *data, LPDIRECT3DRMFACEARRAY*
 
  720    STDMETHOD(ReserveSpace)(THIS_ 
DWORD vertex_Count, 
DWORD normal_count, 
DWORD face_count) PURE;
 
  722    STDMETHOD(SetColor)(THIS_ 
D3DCOLOR) PURE;
 
  723    STDMETHOD(SetTexture)(THIS_ LPDIRECT3DRMTEXTURE) PURE;
 
  724    STDMETHOD(SetMaterial)(THIS_ LPDIRECT3DRMMATERIAL) PURE;
 
  725    STDMETHOD(SetTextureTopology)(THIS_ 
BOOL wrap_u, 
BOOL wrap_v) PURE;
 
  727    STDMETHOD(SetPerspective)(THIS_ 
BOOL) PURE;
 
  734    STDMETHOD(GetFaces)(THIS_ LPDIRECT3DRMFACEARRAY*) PURE;
 
  735    STDMETHOD(GetVertices)
 
  742    STDMETHOD(CreateFace)(THIS_ LPDIRECT3DRMFACE*) PURE;
 
  744    STDMETHOD_(
BOOL, GetPerspective)(THIS) PURE;
 
  745    STDMETHOD_(
int, GetFaceCount)(THIS) PURE;
 
  746    STDMETHOD_(
int, GetVertexCount)(THIS) PURE;
 
  747    STDMETHOD_(
D3DCOLOR, GetVertexColor)(THIS_ 
DWORD index) PURE;
 
  749    STDMETHOD(CreateMesh)(THIS_ LPDIRECT3DRMMESH*) PURE;
 
  755    STDMETHOD(GetFace)(THIS_ 
DWORD index, LPDIRECT3DRMFACE*) PURE;
 
  759#define INTERFACE IDirect3DRMLight 
  770    STDMETHOD(SetColor)(THIS_ 
D3DCOLOR) PURE;
 
  772    STDMETHOD(SetRange)(THIS_ 
D3DVALUE) PURE;
 
  773    STDMETHOD(SetUmbra)(THIS_ 
D3DVALUE) PURE;
 
  774    STDMETHOD(SetPenumbra)(THIS_ 
D3DVALUE) PURE;
 
  775    STDMETHOD(SetConstantAttenuation)(THIS_ 
D3DVALUE) PURE;
 
  776    STDMETHOD(SetLinearAttenuation)(THIS_ 
D3DVALUE) PURE;
 
  777    STDMETHOD(SetQuadraticAttenuation)(THIS_ 
D3DVALUE) PURE;
 
  779    STDMETHOD_(
D3DVALUE, GetRange)(THIS) PURE;
 
  780    STDMETHOD_(
D3DVALUE, GetUmbra)(THIS) PURE;
 
  781    STDMETHOD_(
D3DVALUE, GetPenumbra)(THIS) PURE;
 
  782    STDMETHOD_(
D3DVALUE, GetConstantAttenuation)(THIS) PURE;
 
  783    STDMETHOD_(
D3DVALUE, GetLinearAttenuation)(THIS) PURE;
 
  784    STDMETHOD_(
D3DVALUE, GetQuadraticAttenuation)(THIS) PURE;
 
  785    STDMETHOD_(
D3DCOLOR, GetColor)(THIS) PURE;
 
  788    STDMETHOD(SetEnableFrame)(THIS_ LPDIRECT3DRMFRAME) PURE;
 
  789    STDMETHOD(GetEnableFrame)(THIS_ LPDIRECT3DRMFRAME*) PURE;
 
  793#define INTERFACE IDirect3DRMTexture 
  803    STDMETHOD(InitFromFile)(THIS_ 
const char *filename) PURE;
 
  805    STDMETHOD(InitFromResource)(THIS_ HRSRC) PURE;
 
  806    STDMETHOD(Changed)(THIS_ 
BOOL pixels, 
BOOL palette) PURE;
 
  808    STDMETHOD(SetColors)(THIS_ 
DWORD) PURE;
 
  809    STDMETHOD(SetShades)(THIS_ 
DWORD) PURE;
 
  811    STDMETHOD(SetDecalOrigin)(THIS_ LONG x, LONG y) PURE;
 
  812    STDMETHOD(SetDecalScale)(THIS_ 
DWORD) PURE;
 
  813    STDMETHOD(SetDecalTransparency)(THIS_ 
BOOL) PURE;
 
  814    STDMETHOD(SetDecalTransparentColor)(THIS_ 
D3DCOLOR) PURE;
 
  816    STDMETHOD(GetDecalSize)(THIS_ 
D3DVALUE *width_return, 
D3DVALUE *height_return) PURE;
 
  817    STDMETHOD(GetDecalOrigin)(THIS_ LONG *x_return, LONG *y_return) PURE;
 
  819    STDMETHOD_(
D3DRMIMAGE *, GetImage)(THIS) PURE;
 
  820    STDMETHOD_(
DWORD, GetShades)(THIS) PURE;
 
  821    STDMETHOD_(
DWORD, GetColors)(THIS) PURE;
 
  822    STDMETHOD_(
DWORD, GetDecalScale)(THIS) PURE;
 
  823    STDMETHOD_(
BOOL, GetDecalTransparency)(THIS) PURE;
 
  824    STDMETHOD_(
D3DCOLOR, GetDecalTransparentColor)(THIS) PURE;
 
  828#define INTERFACE IDirect3DRMTexture2 
  838    STDMETHOD(InitFromFile)(THIS_ 
const char *filename) PURE;
 
  840    STDMETHOD(InitFromResource)(THIS_ HRSRC) PURE;
 
  841    STDMETHOD(Changed)(THIS_ 
BOOL pixels, 
BOOL palette) PURE;
 
  843    STDMETHOD(SetColors)(THIS_ 
DWORD) PURE;
 
  844    STDMETHOD(SetShades)(THIS_ 
DWORD) PURE;
 
  846    STDMETHOD(SetDecalOrigin)(THIS_ LONG x, LONG y) PURE;
 
  847    STDMETHOD(SetDecalScale)(THIS_ 
DWORD) PURE;
 
  848    STDMETHOD(SetDecalTransparency)(THIS_ 
BOOL) PURE;
 
  849    STDMETHOD(SetDecalTransparentColor)(THIS_ 
D3DCOLOR) PURE;
 
  851    STDMETHOD(GetDecalSize)(THIS_ 
D3DVALUE *width_return, 
D3DVALUE *height_return) PURE;
 
  852    STDMETHOD(GetDecalOrigin)(THIS_ LONG *x_return, LONG *y_return) PURE;
 
  854    STDMETHOD_(
D3DRMIMAGE *, GetImage)(THIS) PURE;
 
  855    STDMETHOD_(
DWORD, GetShades)(THIS) PURE;
 
  856    STDMETHOD_(
DWORD, GetColors)(THIS) PURE;
 
  857    STDMETHOD_(
DWORD, GetDecalScale)(THIS) PURE;
 
  858    STDMETHOD_(
BOOL, GetDecalTransparency)(THIS) PURE;
 
  859    STDMETHOD_(
D3DCOLOR, GetDecalTransparentColor)(THIS) PURE;
 
  865    STDMETHOD(InitFromResource2)(THIS_ HMODULE hModule, LPCTSTR strName, LPCTSTR strType) PURE;
 
  866    STDMETHOD(GenerateMIPMap)(THIS_ 
DWORD) PURE;
 
  870#define INTERFACE IDirect3DRMWrap 
  888    STDMETHOD(Apply)(THIS_ LPDIRECT3DRMOBJECT) PURE;
 
  889    STDMETHOD(ApplyRelative)(THIS_ LPDIRECT3DRMFRAME frame, LPDIRECT3DRMOBJECT) PURE;
 
  893#define INTERFACE IDirect3DRMMaterial 
  903    STDMETHOD(SetPower)(THIS_ 
D3DVALUE power) PURE;
 
  907    STDMETHOD_(
D3DVALUE, GetPower)(THIS) PURE;
 
  913#define INTERFACE IDirect3DRMAnimation 
  927    STDMETHOD(DeleteKey)(THIS_ 
D3DVALUE time) PURE;
 
  928    STDMETHOD(SetFrame)(THIS_ LPDIRECT3DRMFRAME frame) PURE;
 
  929    STDMETHOD(SetTime)(THIS_ 
D3DVALUE time) PURE;
 
  935#define INTERFACE IDirect3DRMAnimationSet 
  945    STDMETHOD(AddAnimation)(THIS_ LPDIRECT3DRMANIMATION aid) PURE;
 
  947    STDMETHOD(DeleteAnimation)(THIS_ LPDIRECT3DRMANIMATION aid) PURE;
 
  948    STDMETHOD(SetTime)(THIS_ 
D3DVALUE time) PURE;
 
  952#define INTERFACE IDirect3DRMUserVisual 
  966#define INTERFACE IDirect3DRMArray 
  972    STDMETHOD_(
DWORD, GetSize)(THIS) PURE;
 
  980#define INTERFACE IDirect3DRMObjectArray 
  986    STDMETHOD_(
DWORD, GetSize)(THIS) PURE;
 
  987    STDMETHOD(GetElement)(THIS_ 
DWORD index, LPDIRECT3DRMOBJECT *) PURE;
 
  991#define INTERFACE IDirect3DRMDeviceArray 
  997    STDMETHOD_(
DWORD, GetSize)(THIS) PURE;
 
  998    STDMETHOD(GetElement)(THIS_ 
DWORD index, LPDIRECT3DRMDEVICE *) PURE;
 
 1002#define INTERFACE IDirect3DRMFrameArray 
 1008    STDMETHOD_(
DWORD, GetSize)(THIS) PURE;
 
 1009    STDMETHOD(GetElement)(THIS_ 
DWORD index, LPDIRECT3DRMFRAME *) PURE;
 
 1013#define INTERFACE IDirect3DRMViewportArray 
 1019    STDMETHOD_(
DWORD, GetSize)(THIS) PURE;
 
 1020    STDMETHOD(GetElement)(THIS_ 
DWORD index, LPDIRECT3DRMVIEWPORT *) PURE;
 
 1024#define INTERFACE IDirect3DRMVisualArray 
 1030    STDMETHOD_(
DWORD, GetSize)(THIS) PURE;
 
 1031    STDMETHOD(GetElement)(THIS_ 
DWORD index, LPDIRECT3DRMVISUAL *) PURE;
 
 1035#define INTERFACE IDirect3DRMPickedArray 
 1041    STDMETHOD_(
DWORD, GetSize)(THIS) PURE;
 
 1042    STDMETHOD(GetPick)(THIS_ 
DWORD index, LPDIRECT3DRMVISUAL *, LPDIRECT3DRMFRAMEARRAY *, 
LPD3DRMPICKDESC) PURE;
 
 1046#define INTERFACE IDirect3DRMLightArray 
 1052    STDMETHOD_(
DWORD, GetSize)(THIS) PURE;
 
 1053    STDMETHOD(GetElement)(THIS_ 
DWORD index, LPDIRECT3DRMLIGHT *) PURE;
 
 1057#define INTERFACE IDirect3DRMFaceArray 
 1063    STDMETHOD_(
DWORD, GetSize)(THIS) PURE;
 
 1064    STDMETHOD(GetElement)(THIS_ 
DWORD index, LPDIRECT3DRMFACE *) PURE;
 
 1068#define INTERFACE IDirect3DRMPicked2Array 
 1074    STDMETHOD_(
DWORD, GetSize)(THIS) PURE;
 
 1075    STDMETHOD(GetPick)(THIS_ 
DWORD index, LPDIRECT3DRMVISUAL *, LPDIRECT3DRMFRAMEARRAY *, 
LPD3DRMPICKDESC2) PURE;
 
 1079#define INTERFACE IDirect3DRMInterpolator 
 1089    STDMETHOD(AttachObject)(THIS_ LPDIRECT3DRMOBJECT) PURE;
 
 1090    STDMETHOD(GetAttachedObjects)(THIS_ LPDIRECT3DRMOBJECTARRAY *) PURE;
 
 1091    STDMETHOD(DetachObject)(THIS_ LPDIRECT3DRMOBJECT) PURE;
 
 1092    STDMETHOD(SetIndex)(THIS_ 
D3DVALUE) PURE;
 
 1093    STDMETHOD_(
D3DVALUE, GetIndex)(THIS) PURE;
 
struct IDirect3D * LPDIRECT3D
Definition: d3d.h:85
 
struct IDirect3DDevice2 * LPDIRECT3DDEVICE2
Definition: d3d.h:88
 
struct IDirect3DDevice * LPDIRECT3DDEVICE
Definition: d3d.h:87
 
struct IDirect3DViewport * LPDIRECT3DVIEWPORT
Definition: d3d.h:95
 
struct IDirect3D2 * LPDIRECT3D2
Definition: d3d.h:86
 
LPSTR LPSTR LPVOID
Definition: d3dcaps.h:213
 
DWORD D3DRMANIMATIONOPTIONS
Definition: d3drmdef.h:250
 
struct _D3DRMIMAGE * LPD3DRMIMAGE
 
enum _D3DRMMATERIALMODE D3DRMMATERIALMODE
 
DWORD D3DRMINTERPOLATIONOPTIONS
Definition: d3drmdef.h:258
 
enum _D3DRMWRAPTYPE D3DRMWRAPTYPE
 
DWORD * LPD3DRMRENDERQUALITY
Definition: d3drmdef.h:88
 
D3DVALUE D3DRMMATRIX4D[4][4]
Definition: d3drmdef.h:35
 
enum _D3DRMLIGHTTYPE D3DRMLIGHTTYPE
 
enum _D3DRMZBUFFERMODE D3DRMZBUFFERMODE
 
DWORD D3DRMMAPPING
Definition: d3drmdef.h:322
 
DWORD D3DRMSAVEOPTIONS
Definition: d3drmdef.h:184
 
DWORD D3DRMLOADOPTIONS
Definition: d3drmdef.h:267
 
enum _D3DRMFOGMODE D3DRMFOGMODE
 
enum _D3DRMFRAMECONSTRAINT D3DRMFRAMECONSTRAINT
 
enum _D3DRMUSERVISUALREASON D3DRMUSERVISUALREASON
 
DWORD D3DRMRENDERQUALITY
Definition: d3drmdef.h:88
 
enum _D3DRMPROJECTIONTYPE D3DRMPROJECTIONTYPE
 
enum _D3DRMCOMBINETYPE D3DRMCOMBINETYPE
 
struct _D3DRMBOX * LPD3DRMBOX
 
enum _D3DRMSORTMODE D3DRMSORTMODE
 
enum _D3DRMTEXTUREQUALITY D3DRMTEXTUREQUALITY
 
enum _D3DRMXOFFORMAT D3DRMXOFFORMAT
 
enum _D3DRMCOLORSOURCE D3DRMCOLORSOURCE
 
LONG D3DRMGROUPINDEX
Definition: d3drmdef.h:334
 
void(CDECL * D3DRMUPDATECALLBACK)(LPDIRECT3DRMDEVICE obj, LPVOID arg, int, LPD3DRECT)
Definition: d3drmobj.h:151
 
#define IUNKNOWN_METHODS(kind)
Definition: d3drmobj.h:26
 
void(CDECL * D3DRMFRAMEMOVECALLBACK)(LPDIRECT3DRMFRAME obj, LPVOID arg, D3DVALUE delta)
Definition: d3drmobj.h:150
 
#define WIN_TYPES(itype, ptype)
Definition: d3drmobj.h:45
 
struct _D3DRMPICKDESC2 * LPD3DRMPICKDESC2
 
void(CDECL * D3DRMOBJECTCALLBACK)(LPDIRECT3DRMOBJECT obj, LPVOID arg)
Definition: d3drmobj.h:149
 
struct _D3DRMPICKDESC2 D3DRMPICKDESC2
 
DECLARE_INTERFACE_(IDirect3DRMObject, IUnknown)
Definition: d3drmobj.h:188
 
HRESULT(CDECL * D3DRMLOADTEXTURECALLBACK)(char *tex_name, void *arg, LPDIRECT3DRMTEXTURE *)
Definition: d3drmobj.h:157
 
void(CDECL * D3DRMLOADCALLBACK)(LPDIRECT3DRMOBJECT object, REFIID objectguid, LPVOID arg)
Definition: d3drmobj.h:159
 
struct _D3DRMPICKDESC D3DRMPICKDESC
 
int(CDECL * D3DRMUSERVISUALCALLBACK)(LPDIRECT3DRMUSERVISUAL obj, LPVOID arg, D3DRMUSERVISUALREASON reason, LPDIRECT3DRMDEVICE dev, LPDIRECT3DRMVIEWPORT view)
Definition: d3drmobj.h:153
 
struct _D3DRMPICKDESC * LPD3DRMPICKDESC
 
DEFINE_GUID(CLSID_CDirect3DRMDevice, 0x4fa3568e, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1)
 
#define IDIRECT3DRMOBJECT_METHODS(kind)
Definition: d3drmobj.h:34
 
float D3DVALUE
Definition: d3dtypes.h:28
 
float * LPD3DVALUE
Definition: d3dtypes.h:28
 
DWORD D3DCOLOR
Definition: d3dtypes.h:103
 
DWORD D3DCOLORMODEL
Definition: d3dtypes.h:684
 
struct _D3DRECT * LPD3DRECT
 
#define IUnknown
Definition: ddraw.h:28
 
struct IDirectDrawClipper FAR * LPDIRECTDRAWCLIPPER
Definition: ddraw.h:79
 
struct IDirectDrawSurface FAR * LPDIRECTDRAWSURFACE
Definition: ddraw.h:74
 
typedef DWORD(FAR PASCAL *LPCLIPPERCALLBACK)(LPDIRECTDRAWCLIPPER lpDDClipper
 
long HRESULT
Definition: ddraw.h:115
 
struct IDirectDraw FAR * LPDIRECTDRAW
Definition: ddraw.h:72
 
LPDWORD DWORD dwFlags
Definition: dplay.h:417
 
Definition: d3drmdef.h:48
 
Definition: d3drmdef.h:130
 
Definition: d3drmobj.h:171
 
D3DVALUE tv
Definition: d3drmobj.h:176
 
D3DVECTOR dvPosition
Definition: d3drmobj.h:174
 
D3DVECTOR dvNormal
Definition: d3drmobj.h:177
 
LONG lGroupIdx
Definition: d3drmobj.h:173
 
D3DVALUE tu
Definition: d3drmobj.h:175
 
ULONG ulFaceIdx
Definition: d3drmobj.h:172
 
D3DCOLOR dcColor
Definition: d3drmobj.h:178
 
Definition: d3drmobj.h:163
 
ULONG ulFaceIdx
Definition: d3drmobj.h:164
 
D3DVECTOR vPosition
Definition: d3drmobj.h:166
 
LONG lGroupIdx
Definition: d3drmobj.h:165
 
Definition: d3drmdef.h:305
 
Definition: d3drmdef.h:38
 
Definition: d3drmdef.h:43
 
Definition: d3drmdef.h:32
 
Definition: d3drmdef.h:328
 
Definition: d3dtypes.h:147