10#ifndef __D3DRMDEFS_H__
11#define __D3DRMDEFS_H__
17#define D3DRMAPI __stdcall
22#if defined(__cplusplus)
90#define D3DRMRENDER_WIREFRAME (D3DRMSHADE_FLAT+D3DRMLIGHT_OFF+D3DRMFILL_WIREFRAME)
91#define D3DRMRENDER_UNLITFLAT (D3DRMSHADE_FLAT+D3DRMLIGHT_OFF+D3DRMFILL_SOLID)
92#define D3DRMRENDER_FLAT (D3DRMSHADE_FLAT+D3DRMLIGHT_ON+D3DRMFILL_SOLID)
93#define D3DRMRENDER_GOURAUD (D3DRMSHADE_GOURAUD+D3DRMLIGHT_ON+D3DRMFILL_SOLID)
94#define D3DRMRENDER_PHONG (D3DRMSHADE_PHONG+D3DRMLIGHT_ON+D3DRMFILL_SOLID)
96#define D3DRMRENDERMODE_BLENDEDTRANSPARENCY 1
97#define D3DRMRENDERMODE_SORTEDTRANSPARENCY 2
168#define D3DRMWIREFRAME_CULL 1
169#define D3DRMWIREFRAME_HIDDENLINE 2
185#define D3DRMXOFSAVE_NORMALS 1
186#define D3DRMXOFSAVE_TEXTURECOORDINATES 2
187#define D3DRMXOFSAVE_MATERIALS 4
188#define D3DRMXOFSAVE_TEXTURENAMES 8
189#define D3DRMXOFSAVE_ALL 15
190#define D3DRMXOFSAVE_TEMPLATES 16
191#define D3DRMXOFSAVE_TEXTURETOPOLOGY 32
232#define D3DRMCALLBACK_PREORDER 0
233#define D3DRMCALLBACK_POSTORDER 1
238#define D3DRMRAYPICK_ONLYBOUNDINGBOXES 1
239#define D3DRMRAYPICK_IGNOREFURTHERPRIMITIVES 2
240#define D3DRMRAYPICK_INTERPOLATEUV 4
241#define D3DRMRAYPICK_INTERPOLATECOLOR 8
242#define D3DRMRAYPICK_INTERPOLATENORMAL 0x10
247#define D3DRMGENERATENORMALS_PRECOMPACT 1
248#define D3DRMGENERATENORMALS_USECREASEANGLE 2
251#define D3DRMANIMATION_OPEN 0x01L
252#define D3DRMANIMATION_CLOSED 0x02L
253#define D3DRMANIMATION_LINEARPOSITION 0x04L
254#define D3DRMANIMATION_SPLINEPOSITION 0x08L
255#define D3DRMANIMATION_SCALEANDROTATION 0x00000010L
256#define D3DRMANIMATION_POSITION 0x00000020L
259#define D3DRMINTERPOLATION_OPEN 0x01L
260#define D3DRMINTERPOLATION_CLOSED 0x02L
261#define D3DRMINTERPOLATION_NEAREST 0x0100L
262#define D3DRMINTERPOLATION_LINEAR 0x04L
263#define D3DRMINTERPOLATION_SPLINE 0x08L
264#define D3DRMINTERPOLATION_VERTEXCOLOR 0x40L
265#define D3DRMINTERPOLATION_SLERPNORMALS 0x80L
269#define D3DRMLOAD_FROMFILE 0x00L
270#define D3DRMLOAD_FROMRESOURCE 0x01L
271#define D3DRMLOAD_FROMMEMORY 0x02L
272#define D3DRMLOAD_FROMSTREAM 0x04L
273#define D3DRMLOAD_FROMURL 0x08L
275#define D3DRMLOAD_BYNAME 0x10L
276#define D3DRMLOAD_BYPOSITION 0x20L
277#define D3DRMLOAD_BYGUID 0x40L
278#define D3DRMLOAD_FIRST 0x80L
280#define D3DRMLOAD_INSTANCEBYREFERENCE 0x100L
281#define D3DRMLOAD_INSTANCEBYCOPYING 0x200L
283#define D3DRMLOAD_ASYNCHRONOUS 0x400L
296#define D3DRMPMESHSTATUS_VALID 0x01L
297#define D3DRMPMESHSTATUS_INTERRUPTED 0x02L
298#define D3DRMPMESHSTATUS_BASEMESHCOMPLETE 0x04L
299#define D3DRMPMESHSTATUS_COMPLETE 0x08L
300#define D3DRMPMESHSTATUS_RENDERABLE 0x10L
302#define D3DRMPMESHEVENT_BASEMESH 0x01L
303#define D3DRMPMESHEVENT_COMPLETE 0x02L
409#define D3DRMVectorNormalise D3DRMVectorNormalize
468#if defined(__cplusplus)
struct _D3DRMPMESHLOADSTATUS D3DRMPMESHLOADSTATUS
DWORD D3DRMANIMATIONOPTIONS
struct _D3DRMIMAGE * LPD3DRMIMAGE
D3DVALUE D3DRMAPI D3DRMColorGetBlue(D3DCOLOR)
enum _D3DRMMATERIALMODE D3DRMMATERIALMODE
DWORD D3DRMINTERPOLATIONOPTIONS
LPD3DVECTOR D3DRMAPI D3DRMVectorCrossProduct(LPD3DVECTOR d, LPD3DVECTOR s1, LPD3DVECTOR s2)
enum _D3DRMWRAPTYPE D3DRMWRAPTYPE
LPD3DVECTOR D3DRMAPI D3DRMVectorNormalize(LPD3DVECTOR)
enum _D3DRMZBUFFERMODE * LPD3DRMZBUFFERMODE
struct _D3DRMRAY * LPD3DRMRAY
struct _D3DRMLOADRESOURCE D3DRMLOADRESOURCE
DWORD * LPD3DRMRENDERQUALITY
LPD3DRMQUATERNION D3DRMAPI D3DRMQuaternionMultiply(LPD3DRMQUATERNION q, LPD3DRMQUATERNION a, LPD3DRMQUATERNION b)
struct _D3DRMRAY D3DRMRAY
D3DVALUE D3DRMAPI D3DRMVectorModulus(LPD3DVECTOR v)
enum _D3DRMMATERIALMODE * LPD3DRMMATERIALMODE
@ D3DRMLIGHT_PARALLELPOINT
D3DVALUE D3DRMAPI D3DRMColorGetRed(D3DCOLOR)
LPD3DRMQUATERNION D3DRMAPI D3DRMQuaternionFromMatrix(LPD3DRMQUATERNION, D3DRMMATRIX4D)
enum _D3DRMCOLORSOURCE * LPD3DRMCOLORSOURCE
void D3DRMAPI D3DRMMatrixFromQuaternion(D3DRMMATRIX4D dmMat, LPD3DRMQUATERNION lpDqQuat)
enum _D3DRMLIGHTTYPE * LPD3DRMLIGHTTYPE
LPD3DRMQUATERNION D3DRMAPI D3DRMQuaternionFromRotation(LPD3DRMQUATERNION quat, LPD3DVECTOR v, D3DVALUE theta)
D3DVALUE D3DRMAPI D3DRMColorGetGreen(D3DCOLOR)
LPD3DVECTOR D3DRMAPI D3DRMVectorRotate(LPD3DVECTOR r, LPD3DVECTOR v, LPD3DVECTOR axis, D3DVALUE theta)
struct _D3DRMQUATERNION * LPD3DRMQUATERNION
enum _D3DRMFOGMODE * LPD3DRMFOGMODE
D3DVALUE D3DRMMATRIX4D[4][4]
@ D3DRMPROJECT_ORTHOGRAPHIC
@ D3DRMPROJECT_RIGHTHANDORTHOGRAPHIC
@ D3DRMPROJECT_PERSPECTIVE
@ D3DRMPROJECT_RIGHTHANDPERSPECTIVE
enum _D3DRMWRAPTYPE * LPD3DRMWRAPTYPE
enum _D3DRMLIGHTTYPE D3DRMLIGHTTYPE
enum _D3DRMZBUFFERMODE D3DRMZBUFFERMODE
enum _D3DRMFILLMODE D3DRMFILLMODE
void(* D3DRMWRAPCALLBACK)(LPD3DVECTOR, int *u, int *v, LPD3DVECTOR a, LPD3DVECTOR b, LPVOID)
D3DVALUE D3DRMAPI D3DRMVectorDotProduct(LPD3DVECTOR s1, LPD3DVECTOR s2)
LPD3DVECTOR D3DRMAPI D3DRMVectorAdd(LPD3DVECTOR d, LPD3DVECTOR s1, LPD3DVECTOR s2)
LPD3DVECTOR D3DRMAPI D3DRMVectorReflect(LPD3DVECTOR d, LPD3DVECTOR ray, LPD3DVECTOR norm)
struct _D3DRMPALETTEENTRY * LPD3DRMPALETTEENTRY
D3DCOLORMODEL D3DRMCOLORMODEL
LPD3DVECTOR D3DRMAPI D3DRMVectorRandom(LPD3DVECTOR d)
D3DCOLOR D3DRMAPI D3DRMCreateColorRGB(D3DVALUE red, D3DVALUE green, D3DVALUE blue)
struct _D3DRMPMESHLOADSTATUS * LPD3DRMPMESHLOADSTATUS
D3DCOLOR D3DRMAPI D3DRMCreateColorRGBA(D3DVALUE red, D3DVALUE green, D3DVALUE blue, D3DVALUE alpha)
struct _D3DRMIMAGE D3DRMIMAGE
enum _D3DRMFOGMODE D3DRMFOGMODE
@ D3DRMFOG_EXPONENTIALSQUARED
enum _D3DRMFRAMECONSTRAINT D3DRMFRAMECONSTRAINT
struct _D3DRMLOADRESOURCE * LPD3DRMLOADRESOURCE
struct _D3DRMVERTEX * LPD3DRMVERTEX
D3DCOLORMODEL * LPD3DRMCOLORMODEL
enum _D3DRMUSERVISUALREASON D3DRMUSERVISUALREASON
enum _D3DRMPALETTEFLAGS D3DRMPALETTEFLAGS
enum _D3DRMUSERVISUALREASON * LPD3DRMUSERVISUALREASON
enum _D3DRMPROJECTIONTYPE D3DRMPROJECTIONTYPE
enum _D3DRMCOMBINETYPE D3DRMCOMBINETYPE
struct _D3DRMBOX * LPD3DRMBOX
enum _D3DRMPALETTEFLAGS * LPD3DRMPALETTEFLAGS
@ D3DRMZBUFFER_FROMPARENT
struct _D3DRMQUATERNION D3DRMQUATERNION
struct _D3DRMLOADMEMORY D3DRMLOADMEMORY
enum _D3DRMXOFFORMAT * LPD3DRMXOFFORMAT
enum _D3DRMLIGHTMODE * LPD3DRMLIGHTMODE
enum _D3DRMFILLMODE * LPD3DRMFILLMODE
enum _D3DRMSORTMODE D3DRMSORTMODE
struct _D3DRMBOX D3DRMBOX
enum _D3DRMLIGHTMODE D3DRMLIGHTMODE
enum _D3DRMTEXTUREQUALITY D3DRMTEXTUREQUALITY
struct _D3DRMVECTOR4D * LPD3DRMVECTOR4D
enum _D3DRMSORTMODE * LPD3DRMSORTMODE
LPD3DVECTOR D3DRMAPI D3DRMVectorScale(LPD3DVECTOR d, LPD3DVECTOR s, D3DVALUE factor)
struct _D3DRMLOADMEMORY * LPD3DRMLOADMEMORY
enum _D3DRMPROJECTIONTYPE * LPD3DRMPROJECTIONTYPE
enum _D3DRMXOFFORMAT D3DRMXOFFORMAT
D3DVALUE D3DRMAPI D3DRMColorGetAlpha(D3DCOLOR)
enum _D3DRMCOLORSOURCE D3DRMCOLORSOURCE
LPD3DVECTOR D3DRMAPI D3DRMVectorSubtract(LPD3DVECTOR d, LPD3DVECTOR s1, LPD3DVECTOR s2)
enum _D3DRMCOMBINETYPE * LPD3DRMCOMBINETYPE
enum _D3DRMSHADEMODE D3DRMSHADEMODE
struct _D3DRMVECTOR4D D3DRMVECTOR4D
LPD3DRMQUATERNION D3DRMAPI D3DRMQuaternionSlerp(LPD3DRMQUATERNION q, LPD3DRMQUATERNION a, LPD3DRMQUATERNION b, D3DVALUE alpha)
struct _D3DRMVERTEX D3DRMVERTEX
enum _D3DRMFRAMECONSTRAINT * LPD3DRMFRAMECONSTRAINT
struct _D3DRMPALETTEENTRY D3DRMPALETTEENTRY
enum _D3DRMSHADEMODE * LPD3DRMSHADEMODE
@ D3DRMTEXTURE_MIPNEAREST
@ D3DRMTEXTURE_LINEARMIPLINEAR
@ D3DRMTEXTURE_LINEARMIPNEAREST
@ D3DRMMATERIAL_FROMPARENT
@ D3DRMMATERIAL_FROMFRAME
enum _D3DRMTEXTUREQUALITY * LPD3DRMTEXTUREQUALITY
struct _D3DVECTOR * LPD3DVECTOR
typedef DWORD(FAR PASCAL *LPCLIPPERCALLBACK)(LPDIRECTDRAWCLIPPER lpDDClipper
D3DRMPALETTEENTRY * palette