Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

1407 lines
47 KiB

#undef LPVOID
#undef DWORD
#undef UINT
#ifdef _WIN64
#define HFONT HANDLE
#else
#define HFONT LONG
#endif
#define DWORD LONG
#define UINT LONG
#define LPVOID void *
#define LPD3DXFONT D3DXFont *
#define LPD3DXBUFFER D3DXBuffer *
#define LPDIRECTXFILEDATA IUnknown *
#define LPD3DXBASEMESH D3DXBaseMesh *
#define LPD3DXMESH D3DXMesh *
#define LPD3DXPMESH D3DXPMesh *
#define LPD3DXSPMESH D3DXSPMesh *
#define LPD3DXSKINMESH D3DXSkinMesh *
//defined as IUnknown in wrapper code but
//already defined in d3di.idl for VB typelib
#ifdef C_ONLY
#define LPDIRECT3DVERTEXBUFFER8 IUnknown*
#define LPDIRECT3DINDEXBUFFER8 IUnknown*
#define LPDIRECT3DDEVICE8 IUnknown*
#define LPDIRECT3DTEXTURE8 IUnknown*
#define LPDIRECT3DVOLUME8 IUnknown*
#define LPDIRECT3DBASETEXTURE8 IUnknown*
#define LPDIRECT3DCUBETEXTURE8 IUnknown*
#define LPDIRECT3DSURFACE8 IUnknown*
#define D3DPOOL LONG
#define D3DCOLOR LONG
#define D3DFORMAT LONG
#define CONST_D3DFORMAT LONG
#define CONST_D3DPOOL LONG
#define CONST_D3DXIMAGE_FILEFORMAT LONG
#else
#define I_dxj_D3DX8 ID3DX8
#define D3DXRTS_DESC_CDESC D3DXRTS_DESC
#define D3DXATTRIBUTERANGE_CDESC D3DXATTRIBUTERANGE
#define D3DXMATERIAL_CDESC D3DXMATERIAL
#define D3DXDECLARATOR_CDESC D3DXDECLARATOR
#define D3DXATTRIBUTEWEIGHTS_CDESC D3DXATTRIBUTEWEIGHTS
#define GLYPHMETRICSFLOAT_CDESC GLYPHMETRICSFLOAT
#define POINTFLOAT_CDESC POINTFLOAT
#define LOGFONT_CDESC LOGFONT
#define D3DXIMAGE_INFO_CDESC D3DXIMAGE_INFO
#define D3DXBONECOMBINATION_CDESC D3DXBONECOMBINATION
typedef enum CONST_D3DXIMAGE_FILEFORMAT
{
D3DXIFF_BMP = 0,
D3DXIFF_JPG = 1,
D3DXIFF_TGA = 2,
D3DXIFF_PNG = 3,
D3DXIFF_DDS = 4,
D3DXIFF_PPM = 5,
D3DXIFF_DIB = 6,
D3DXIFF_FORCE_DWORD = 0x7fffffff
} CONST_D3DXIMAGE_FILEFORMAT;
[helpcontext(86596)]
typedef enum CONST_D3DXERR {
D3DXERR_CANNOTMODIFYINDEXBUFFER = 0x88760B54,
D3DXERR_INVALIDMESH = 0x88760B55,
D3DXERR_CANNOTATTRSORT = 0x88760B56,
D3DXERR_SKINNINGNOTSUPPORTED= 0x88760B57,
D3DXERR_TOOMANYINFLUENCES = 0x88760B58,
D3DXERR_INVALIDDATA = 0x88760B59,
D3DXERR_LOADEDMESHASNODATA = 0x88760B5A,
} CONST_D3DXERR;
[helpcontext(86597)]
typedef enum CONST_D3DXMESH
{
// 32BIT meshes currently not supported
D3DXMESH_32BIT = 0x001, // If set, then use 32 bit indices, if not set use 16 bit indices
D3DXMESH_DONOTCLIP = 0x002,
D3DXMESH_POINTS = 0x004,
D3DXMESH_RTPATCHES = 0x008,
D3DXMESH_NPATCHES = 0x4000,// Use D3DUSAGE_NPATCHES for VB & IB.
D3DXMESH_VB_SYSTEMMEM = 0x010,
D3DXMESH_VB_MANAGED = 0x020,
D3DXMESH_VB_WRITEONLY = 0x040,
D3DXMESH_VB_DYNAMIC = 0x080,
D3DXMESH_IB_SYSTEMMEM = 0x100,
D3DXMESH_IB_MANAGED = 0x200,
D3DXMESH_IB_WRITEONLY = 0x400,
D3DXMESH_IB_DYNAMIC = 0x800,
D3DXMESH_VB_SHARE = 0x1000,
D3DXMESH_USEHWONLY = 0x2000,
D3DXMESH_SYSTEMMEM = 0x110,
D3DXMESH_MANAGED = 0x220,
D3DXMESH_WRITEONLY = 0x440,
D3DXMESH_DYNAMIC = 0x880,
} CONST_D3DXMESHENUM;
[helpcontext(91001)]
typedef enum CONST_D3DXASM
{
D3DXASM_DEBUG =1,
D3DXASM_SKIPVALIDATION =2,
} CONST_D3DXASM;
[helpcontext(86600)]
typedef enum CONST_D3DXMESHSIMP
{
D3DXMESHSIMP_VERTEX = 0x1,
D3DXMESHSIMP_FACE = 0x2,
} CONST_D3DXMESHSIMPENUM;
[helpcontext(87110)]
typedef enum CONST_DTFLAGS
{
DT_TOP =0x00000000, //yes winuser.h has DT_TOP and DT_LEFt set to 0
DT_LEFT =0x00000000,
DT_CENTER =0x00000001,
DT_RIGHT =0x00000002,
DT_VCENTER =0x00000004,
DT_BOTTOM =0x00000008,
DT_WORDBREAK =0x00000010,
DT_SINGLELINE =0x00000020,
DT_EXPANDTABS =0x00000040,
DT_TABSTOP =0x00000080,
DT_NOCLIP =0x00000100,
DT_EXTERNALLEADING =0x00000200,
DT_CALCRECT =0x00000400,
DT_NOPREFIX =0x00000800,
DT_INTERNAL =0x00001000,
DT_EDITCONTROL =0x00002000,
DT_PATH_ELLIPSIS =0x00004000,
DT_END_ELLIPSIS =0x00008000,
DT_MODIFYSTRING =0x00010000,
DT_RTLREADING =0x00020000,
DT_WORD_ELLIPSIS =0x00040000,
DT_NOFULLWIDTHCHARBREAK =0x00080000,
DT_HIDEPREFIX =0x00100000,
DT_PREFIXONLY =0x00200000,
} CONST_DTFLAGS ;
[helpcontext(86599)]
typedef enum CONST_D3DXMESHOPT
{
D3DXMESHOPT_COMPACT = 0x01000000,
D3DXMESHOPT_ATTRSORT = 0x02000000,
D3DXMESHOPT_VERTEXCACHE = 0x04000000,
D3DXMESHOPT_STRIPREORDER = 0x08000000,
D3DXMESHOPT_IGNOREVERTS = 0x10000000, // optimize faces only, don't touch vertices
D3DXMESHOPT_SHAREVB = 0x20000000,
} CONST_D3DXMESHOPTENUM;
[helpcontext(86598)]
typedef enum CONST_D3DXMESHMISC
{
UNUSED16 =0x0000ffff,
UNUSED32 =0xffffffff,
MAX_FVF_DECL_SIZE = 20,
} CONST_D3DXMESHMISCENUM;
#endif
[helpcontext(86594)]
typedef struct D3DXRTS_DESC_CDESC
{
LONG Width;
LONG Height;
LONG Format;
LONG DepthStencil;
LONG DepthStencilFormat;
} D3DXRTS_DESC_CDESC;
[helpcontext(86590)]
typedef struct D3DXATTRIBUTERANGE_CDESC
{
DWORD AttribId;
DWORD FaceStart;
DWORD FaceCount;
DWORD VertexStart;
DWORD VertexCount;
} D3DXATTRIBUTERANGE_CDESC;
[helpcontext(86591)]
typedef struct D3DXATTRIBUTEWEIGHTS_CDESC
{
FLOAT Position;
FLOAT Boundary;
FLOAT Normal;
FLOAT Diffuse;
FLOAT Specular;
FLOAT Tex[8];
} D3DXATTRIBUTEWEIGHTS_CDESC;
[helpcontext(87090)]
typedef struct D3DXBONECOMBINATION_CDESC
{
DWORD AttribId;
DWORD FaceStart;
DWORD FaceCount;
DWORD VertexStart;
DWORD VertexCount;
[hidden] DWORD pBones;
} D3DXBONECOMBINATION_CDESC;
[helpcontext(87091)]
typedef struct D3DXIMAGE_INFO_CDESC
{
UINT Width;
UINT Height;
UINT Depth;
UINT MipLevels;
} D3DXIMAGE_INFO_CDESC;
[helpcontext(86593)]
typedef struct D3DXMATERIAL_CDESC
{
D3DMATERIAL8_CDESC MatD3D;
BSTR TextureFilename;
} D3DXMATERIAL_CDESC;
[helpcontext(86592)]
typedef struct D3DXDECLARATOR_CDESC
{
LONG value[32];
} D3DXDECLARATOR_CDESC;
[helpcontext(87092)]
typedef struct POINTFLOAT_CDESC {
FLOAT x;
FLOAT y;
} POINTFLOAT_CDESC;
[helpcontext(87093)]
typedef struct GLYPHMETRICSFLOAT_CDESC {
FLOAT BlackBoxX;
FLOAT BlackBoxY;
POINTFLOAT_CDESC GlyphOrigin;
FLOAT CellIncX;
FLOAT CellIncY;
} GLYPHMETRICSFLOAT_CDESC;
[helpcontext(87094)]
typedef struct LOGFONT_CDESC
{
LONG Height;
LONG Width;
LONG Escapement;
LONG Orientation;
LONG Weight;
BYTE Italic;
BYTE Underline;
BYTE StrikeOut;
BYTE CharSet;
BYTE OutPrecision;
BYTE ClipPrecision;
BYTE Quality;
BYTE PitchAndFamily;
BYTE FaceName[32];
} LOGFONT_CDESC;
//forward references to interfaces
interface D3DXFont;
interface D3DXBuffer;
interface I_dxj_D3DX8;
interface D3DXBasMesh;
interface D3DXMesh;
interface D3DXPMesh;
interface D3DXSPMesh;
interface D3DXSkinMesh;
interface D3DXSprite;
#ifdef VB_ONLY
//CONSTANTS
[helpcontext(86595)]
typedef enum CONST_D3DXENUM {
//#define D3DX_DEFAULT ULONG_MAX
//#define D3DX_DEFAULT_FLOAT FLT_MAX
D3DX_DEFAULT=0xFFFFFFFF,
D3DX_FILTER_NONE =1,
D3DX_FILTER_POINT =2,
D3DX_FILTER_LINEAR =3,
D3DX_FILTER_TRIANGLE =4,
D3DX_FILTER_BOX =5,
D3DX_FILTER_MIRROR_U = 0x00010000,
D3DX_FILTER_MIRROR_V = 0x00020000,
D3DX_FILTER_MIRROR_W = 0x00040000,
D3DX_FILTER_MIRROR = 0x00070000,
D3DX_FILTER_DITHER = 0x00080000,
} CONST_D3DXENUM;
#endif
[
object,
uuid(932E6A7E-C68E-45dd-A7BF-53D19C86DB1F),
pointer_default(unique),
helpcontext(86361),
local
]
interface D3DXBuffer : IUnknown
{
// ID3DXBuffer
[helpcontext(86402)] LPVOID GetBufferPointer();
[helpcontext(86403)] DWORD GetBufferSize();
};
[
object,
uuid(2D501DF7-D253-4414-865F-A6D54A753138),
pointer_default(unique),
helpcontext(86364),
local
]
interface D3DXFont : IUnknown
{
[helpcontext(86408)] HRESULT GetDevice([out,retval] LPDIRECT3DDEVICE8* ppDevice) ;
[helpcontext(86409)] HRESULT GetLogFont([in,out] LOGFONT_CDESC * LogFont);
[helpcontext(86405)] HRESULT Begin() ;
[helpcontext(87095),hidden] INT DrawTextA([in] BYTE *Text, [in] INT Count, [in] RECT_CDESC *DestRect, [in] LONG Format, [in] LONG Color);
[helpcontext(86406)] INT DrawTextW([in] BSTR Text, [in] INT Count, [in] RECT_CDESC *DestRect, [in] LONG Format, [in] LONG Color);
[helpcontext(86407)] HRESULT End();
[helpcontext(86407)] HRESULT OnLostDevice();
[helpcontext(86407)] HRESULT OnResetDevice();
};
[
object,
uuid(E8691849-87B8-4929-9050-1B0542D5538C),
pointer_default(unique),
helpcontext(87096),
local
]
interface D3DXSprite : IUnknown
{
[helpcontext(86473)] HRESULT GetDevice([out,retval] LPDIRECT3DDEVICE8* ppDevice);
[helpcontext(86469)] HRESULT Begin();
[helpcontext(86470)] HRESULT Draw([in] LPDIRECT3DTEXTURE8 SrcTexture,[in] void *SrcRect, [in] D3DVECTOR2_CDESC *Scaling,
[in] D3DVECTOR2_CDESC *RotationCenter, [in] FLOAT Rotation,
[in] D3DVECTOR2_CDESC *Translation, [in] LONG Color);
[helpcontext(86471)] HRESULT DrawTransform([in] LPDIRECT3DTEXTURE8 SrcTexture,[in] void *SrcRect,
[in] D3DMATRIX_CDESC *TransformMatrix,
[in] LONG Color);
[helpcontext(86472)] HRESULT End();
[helpcontext(86407)] HRESULT OnLostDevice();
[helpcontext(86407)] HRESULT OnResetDevice();
};
[
object,
uuid(69CC587C-E40C-458d-B5D3-B029E18EB60A),
pointer_default(unique),
helpcontext(87097),
local
]
interface D3DXRenderToSurface : IUnknown
{
[helpcontext(86432)] HRESULT GetDevice([out,retval] LPDIRECT3DDEVICE8* ppDevice);
[helpcontext(86431)] HRESULT GetDesc ([out] D3DXRTS_DESC_CDESC *Parameters);
[helpcontext(86429)] HRESULT BeginScene([in] LPDIRECT3DSURFACE8 Surface, [in] D3DVIEWPORT8_CDESC * Viewport) ;
[helpcontext(86430)] HRESULT EndScene();
[helpcontext(86407)] HRESULT OnLostDevice();
[helpcontext(86407)] HRESULT OnResetDevice();
};
[
object,
uuid(A69BA991-1F7D-11d3-B929-00C04F68DC23),
pointer_default(unique),
helpcontext(86344),
local
]
interface D3DXBaseMesh : IUnknown
{
// ID3DXBaseMesh
[helpcontext(86387)] HRESULT DrawSubset ([in] DWORD attribId) ;
[helpcontext(86393)] DWORD GetNumFaces ();
[helpcontext(86394)] DWORD GetNumVertices();
[helpcontext(86391)] DWORD GetFVF();
[helpcontext(86389)] HRESULT GetDeclaration([in,out] DWORD *Declaration);
[helpcontext(86395)] DWORD GetOptions();
[helpcontext(86390)] HRESULT GetDevice([out,retval] LPDIRECT3DDEVICE8 *ret);
[helpcontext(86386)] HRESULT CloneMeshFVF([in] DWORD options,
[in] DWORD fvf,
[in] LPDIRECT3DDEVICE8 D3DDevice,
[out,retval] LPD3DXMESH *ppCloneMesh);
[helpcontext(86385)] HRESULT CloneMesh([in] DWORD options,
[in] void *Declaration,
[in] LPDIRECT3DDEVICE8 D3DDevice,
[out,retval] LPD3DXMESH *ppCloneMesh);
[helpcontext(86396)] HRESULT GetVertexBuffer([out,retval] LPDIRECT3DVERTEXBUFFER8* ppVB) ;
[helpcontext(86392)] HRESULT GetIndexBuffer ([out,retval] LPDIRECT3DINDEXBUFFER8* ppIB) ;
[helpcontext(86398)] HRESULT LockVertexBuffer([in] DWORD flags, [out,retval] LONG *VBuffAddr);
[helpcontext(86400)] HRESULT UnlockVertexBuffer();
[helpcontext(86397)] HRESULT LockIndexBuffer([in] DWORD flags, [out,retval] LONG *IBuffAddr);
[helpcontext(86399)] HRESULT UnlockIndexBuffer();
//[helpcontext(86388)] HRESULT GetAttributeTable([in,out] D3DXATTRIBUTERANGE_CDESC *attribEntry, [in,out] DWORD* attribTabSize);
[helpcontext(86348)] HRESULT GetAttributeTable([in,out] void *attribEntry, [in,out] DWORD* attribTabSize);
[helpcontext(86411)] HRESULT ConvertPointRepsToAdjacency(void *PointRep, void* Adjacency);
[helpcontext(87098)] HRESULT ConvertAdjacencyToPointReps(void* Adjacency, void *PointRep);
[helpcontext(86412)] HRESULT GenerateAdjacency ([in] FLOAT epsilon, [in,out] void* Adjacency);
};
[
object,
uuid(9D84AC46-6B90-49a9-A721-085C7A3E3DAE),
pointer_default(unique),
helpcontext(86365),
local
]
interface D3DXMesh : IUnknown
{
// ID3DXBaseMesh
[helpcontext(88348)] HRESULT DrawSubset ([in] DWORD attribId) ;
[helpcontext(86349)] DWORD GetNumFaces ();
[helpcontext(86350)] DWORD GetNumVertices();
[helpcontext(86351)] DWORD GetFVF();
[helpcontext(86352)] HRESULT GetDeclaration([in,out] DWORD *Declaration);
[helpcontext(86353)] DWORD GetOptions();
[helpcontext(86354)] HRESULT GetDevice([out,retval] LPDIRECT3DDEVICE8 *ret);
[helpcontext(86355)] HRESULT CloneMeshFVF([in] DWORD options,
[in] DWORD fvf,
[in] LPDIRECT3DDEVICE8 D3DDevice,
[out,retval] LPD3DXMESH *ppCloneMesh);
[helpcontext(86356)] HRESULT CloneMesh([in] DWORD options,
[in] void *Declaration,
[in] LPDIRECT3DDEVICE8 D3DDevice,
[out,retval] LPD3DXMESH *ppCloneMesh);
[helpcontext(86357)] HRESULT GetVertexBuffer([out,retval] LPDIRECT3DVERTEXBUFFER8* ppVB) ;
[helpcontext(86358)] HRESULT GetIndexBuffer ([out,retval] LPDIRECT3DINDEXBUFFER8* ppIB) ;
[helpcontext(86359)] HRESULT LockVertexBuffer([in] DWORD flags, [out,retval] LONG *VBuffAddr);
[helpcontext(86360)] HRESULT UnlockVertexBuffer();
[helpcontext(96361)] HRESULT LockIndexBuffer([in] DWORD flags, [out,retval] LONG *IBuffAddr);
[helpcontext(96362)] HRESULT UnlockIndexBuffer();
[helpcontext(86363)] HRESULT GetAttributeTable([in,out] void *attribEntry, [in,out] DWORD* attribTabSize);
// ID3DXMesh
[helpcontext(86411)] HRESULT ConvertPointRepsToAdjacency(void *PointRep, void* Adjacency);
[helpcontext(87098)] HRESULT ConvertAdjacencyToPointReps(void* Adjacency, void *PointRep);
[helpcontext(86412)] HRESULT GenerateAdjacency ([in] FLOAT epsilon, [in,out] void* Adjacency);
//REMOVED 07/16/00 [helpcontext(99389)] HRESULT GeneratePointReps ([in] void* Adjacency, [in,out] void* PRep) ;
[helpcontext(86413)] HRESULT LockAttributeBuffer([in] LONG flags, [out,retval] LONG *pData);
[helpcontext(86416)] HRESULT UnlockAttributeBuffer();
[helpcontext(86414)] HRESULT Optimize ([in] DWORD flags,[in,out] void* adjacency, [in,out] void* optAdj,
[in,out] void* FaceRemap, [out] LPD3DXBUFFER *VertexRemapOut,
[out,retval] LPD3DXMESH* ppOptMesh);
[helpcontext(86415)] HRESULT OptimizeInplace([in] DWORD flags,[in] void* adjacencyIn, [in,out] void* adjacencyOut,
[in] void * faceRemap, [out] LPD3DXBUFFER *VertexRemapOut);
};
[
object,
uuid(82A53844-F322-409e-A2E9-992E1104069D),
pointer_default(unique),
helpcontext(870999),
local
]
interface D3DXSkinMesh : IUnknown
{
// ID3DXMesh
[helpcontext(86893)] DWORD GetNumFaces ();
[helpcontext(86894)] DWORD GetNumVertices();
[helpcontext(86891)] DWORD GetFVF();
[helpcontext(86889)] HRESULT GetDeclaration([in,out] DWORD *Declaration);
[helpcontext(86895)] DWORD GetOptions();
[helpcontext(86438)] HRESULT GetDevice([out,retval] LPDIRECT3DDEVICE8 *ret);
[helpcontext(86445)] HRESULT GetVertexBuffer([out,retval] LPDIRECT3DVERTEXBUFFER8* ppVB) ;
[helpcontext(86439)] HRESULT GetIndexBuffer ([out,retval] LPDIRECT3DINDEXBUFFER8* ppIB) ;
[helpcontext(86448)] HRESULT LockVertexBuffer([in] DWORD flags, [out,retval] LONG *VBuffAddr);
[helpcontext(86452)] HRESULT UnlockVertexBuffer();
[helpcontext(86447)] HRESULT LockIndexBuffer([in] DWORD flags, [out,retval] LONG *IBuffAddr);
[helpcontext(86451)] HRESULT UnlockIndexBuffer();
[helpcontext(86446)] HRESULT LockAttributeBuffer([in] LONG flags, [out,retval] LONG *pData);
[helpcontext(86450)] HRESULT UnlockAttributeBuffer();
[helpcontext(86443)] DWORD GetNumBones();
[helpcontext(86444)] HRESULT GetOriginalMesh([out,retval] LPD3DXMESH *pMesh);
[helpcontext(86449)] HRESULT SetBoneInfluence([in] DWORD bone, [in] DWORD numInfluences, [in] DWORD *vertices, [in] FLOAT *weights);
[helpcontext(86442)] DWORD GetNumBoneInfluences([in] DWORD bone);
[helpcontext(86437)] HRESULT GetBoneInfluence([in] DWORD bone, [in,out] DWORD *vertices, [in,out] FLOAT *weights);
[helpcontext(86441)] HRESULT GetMaxVertexInfluences([out,retval] DWORD *maxVertexInfluences);
[helpcontext(86440)] HRESULT GetMaxFaceInfluences([out,retval] DWORD *maxFaceInfluences);
[helpcontext(86434)] HRESULT ConvertToBlendedMesh(
[in] DWORD options, [in] void *AdjacencyIn, [in,out] void *AdjacencyOut,
[in,out] DWORD* RetNumBoneCombinations, [in,out] LPD3DXBUFFER* RetBoneCombinationTable,
[in,out] void* pFaceRemap,
[in,out] LPD3DXBUFFER* VertexRemap,
[out,retval] LPD3DXMESH* RetMesh);
[helpcontext(86435)] HRESULT ConvertToIndexedBlendedMesh(
[in] DWORD options, [in] void *AdjacencyIn, [in] DWORD paletteSize,
[in,out] void *AdjacencyOut,
[in,out] DWORD* RetNumBoneCombinations, [in,out] LPD3DXBUFFER* RetBoneCombinationTable,
[in,out] void* pFaceRemap,
[in,out] LPD3DXBUFFER* VertexRemap,
[out,retval] LPD3DXMESH *RetMesh);
[helpcontext(86436)] HRESULT GenerateSkinnedMesh (
[in] DWORD options, [in] FLOAT minWeight,
[in] void *AdjacencyIn, [in,out] void *AdjacencyOut,
[in,out] void* pFaceRemap,
[in,out] LPD3DXBUFFER* VertexRemap,
[out,retval] LPD3DXMESH *RetMesh);
[helpcontext(87100)] HRESULT UpdateSkinnedMesh (
[in] void* BoneTransformsIn, [in] D3DMATRIX_CDESC* BoneInvTransforms, [in,out] LPD3DXMESH RetMesh);
};
[
object,
uuid(15981AA8-1A05-48e3-BBE7-FF5D49654E3F),
pointer_default(unique),
helpcontext(86371),
local
]
interface D3DXPMesh : IUnknown
{
// ID3DXBaseMesh
[helpcontext(88350)] HRESULT DrawSubset ([in] DWORD attribId) ;
[helpcontext(88351)] DWORD GetNumFaces ();
[helpcontext(88352)] DWORD GetNumVertices();
[helpcontext(88353)] DWORD GetFVF();
[helpcontext(88354)] HRESULT GetDeclaration([in,out] DWORD *Declaration);
[helpcontext(88355)] DWORD GetOptions();
[helpcontext(88356)] HRESULT GetDevice([out,retval] LPDIRECT3DDEVICE8 *ret);
[helpcontext(88357)] HRESULT CloneMeshFVF([in] DWORD options,
[in] DWORD fvf,
[in] LPDIRECT3DDEVICE8 D3DDevice,
[out,retval] LPD3DXMESH *ppCloneMesh);
[helpcontext(88358)] HRESULT CloneMesh([in] DWORD options,
[in] void *Declaration,
[in] LPDIRECT3DDEVICE8 D3DDevice,
[out,retval] LPD3DXMESH *ppCloneMesh);
[helpcontext(88359)] HRESULT GetVertexBuffer([out,retval] LPDIRECT3DVERTEXBUFFER8* ppVB) ;
[helpcontext(88360)] HRESULT GetIndexBuffer ([out,retval] LPDIRECT3DINDEXBUFFER8* ppIB) ;
[helpcontext(88361)] HRESULT LockVertexBuffer([in] DWORD flags, [out,retval] LONG *VBuffAddr);
[helpcontext(88362)] HRESULT UnlockVertexBuffer();
[helpcontext(88363)] HRESULT LockIndexBuffer([in] DWORD flags, [out,retval] LONG *IBuffAddr);
[helpcontext(88364)] HRESULT UnlockIndexBuffer();
[helpcontext(88365)] HRESULT GetAttributeTable([in,out] void *attribEntry, [in,out] DWORD* attribTabSize);
// ID3DXMesh
[helpcontext(86411)] HRESULT ConvertPointRepsToAdjacency(void *PointRep, void* Adjacency);
[helpcontext(87098)] HRESULT ConvertAdjacencyToPointReps(void* Adjacency, void *PointRep);
[helpcontext(86412)] HRESULT GenerateAdjacency ([in] FLOAT epsilon, [in,out] void* Adjacency);
// ID3DXPMesh
[helpcontext(86419)] HRESULT ClonePMeshFVF([in] DWORD options,
[in] DWORD fvf,
[in] LPDIRECT3DDEVICE8 D3DDevice,
[out,retval] LPD3DXPMESH *ppCloneMesh);
[helpcontext(86418)] HRESULT ClonePMesh([in] DWORD options,
[in] void *Declaration,
[in] LPDIRECT3DDEVICE8 D3DDevice,
[out,retval] LPD3DXPMESH *ppCloneMesh);
[helpcontext(86426)] HRESULT SetNumFaces([in] DWORD faces);
[helpcontext(86427)] HRESULT SetNumVertices([in] DWORD vertices) ;
[helpcontext(86421)] DWORD GetMaxFaces();
[helpcontext(86423)] DWORD GetMinFaces();
[helpcontext(86422)] DWORD GetMaxVertices();
[helpcontext(86424)] DWORD GetMinVertices();
//[helpcontext(86400),hidden] HRESULT Save(IStream* pStream,[in] LONG MaterialBufferHandle,[in] LONG NumMaterials);
[helpcontext(86400),hidden] HRESULT Save([in] LONG pIStream,[in] LONG MaterialBufferHandle,[in] LONG NumMaterials);
[helpcontext(86425)] HRESULT Optimize ([in] DWORD Flags,[in,out] void * AdjacencyOut, [in,out] void * FaceRemap,
[in,out] LPD3DXBUFFER *VertexRemapOut, [out,retval] LPD3DXMESH* ppOptMesh);
[helpcontext(86425)] HRESULT OptimizeBaseLOD([in] DWORD Flags, [in,out] void* FaceRemap);
[helpcontext(86425)] HRESULT TrimByFaces([in] DWORD NewFacesMin, [in] DWORD NewFacesMax, [in,out] DWORD *rgiFaceRemap, [in,out] DWORD *rgiVertRemap);
[helpcontext(86425)] HRESULT TrimByVertices([in] DWORD NewVerticesMin, [in] DWORD NewVerticesMax, [in,out] DWORD *rgiFaceRemap, [in,out] DWORD *rgiVertRemap);
[helpcontext(86420)] HRESULT GetAdjacency ([out] void * AdjacencyOut);
};
[
object,
uuid(BC3BBDE2-1F7D-11d3-B929-00C04F68DC23),
pointer_default(unique),
helpcontext(86380),
local
]
interface D3DXSPMesh : IUnknown
{
// ID3DXSPMesh
[helpcontext(86463)] DWORD GetNumFaces();
[helpcontext(86464)] DWORD GetNumVertices();
[helpcontext(86460)] DWORD GetFVF();
[helpcontext(86458)] HRESULT GetDeclaration([in,out] DWORD *Declaration);
[helpcontext(86465)] DWORD GetOptions();
[helpcontext(86459)] HRESULT GetDevice([out,retval] LPDIRECT3DDEVICE8 *ret);
[helpcontext(86455)] HRESULT CloneMeshFVF([in] DWORD options,
[in] DWORD fvf,
[in] LPDIRECT3DDEVICE8 D3DDevice,
[in,out] void *AdjacencyOut,
[in,out] void *VertexRemapOut,
[out,retval] LPD3DXPMESH *ppCloneMesh);
[helpcontext(86454)] HRESULT CloneMesh([in] DWORD options,
[in] void *Declaration,
[in] LPDIRECT3DDEVICE8 D3DDevice,
[in,out] void *AdjacencyOut,
[in,out] void *VertexRemapOut,
[out,retval] LPD3DXPMESH *ppCloneMesh);
[helpcontext(86457)] HRESULT ClonePMeshFVF ([in] DWORD options,
[in] DWORD fvf, [in] LPDIRECT3DDEVICE8 pD3D, [in,out] void *VertexRemapOut,[out,retval] LPD3DXPMESH* ppCloneMesh) ;
[helpcontext(86456)] HRESULT ClonePMesh ([in] DWORD options,
[in] void *Declaration, [in] LPDIRECT3DDEVICE8 pD3D, [in,out] void *VertexRemapOut, [out,retval] LPD3DXPMESH* ppCloneMesh) ;
[helpcontext(86466)] HRESULT ReduceFaces([in] DWORD faces) ;
[helpcontext(86467)] HRESULT ReduceVertices([in] DWORD vertices) ;
[helpcontext(86461)] DWORD GetMaxFaces() ;
[helpcontext(86462)] DWORD GetMaxVertices() ;
};
[
object,
uuid(3AC50043-CF82-4c44-862E-B206B4F03301),
pointer_default(unique),
local,
helpcontext(89202),
hidden
]
interface I_dxj_D3DX8 : IUnknown
{
[helpcontext(86336)] HRESULT CreateFont(
[in] LPDIRECT3DDEVICE8 Device,
[in] HFONT hFont,
[out,retval] LPD3DXFONT* retFont);
[helpcontext(96344)] HRESULT DrawText(
[in] LPD3DXFONT d3dFont,
[in] D3DCOLOR Color,
[in] BSTR TextString,
[in] RECT* Rect,
[in] DWORD Format);
[helpcontext(96365)] HRESULT GetFVFVertexSize(
[in] DWORD FVF,
[out,retval] DWORD *size);
[helpcontext(86312)] HRESULT AssembleShaderFromFile(
[in] BSTR SrcFile,
[in] LONG Flags,
[in,out] BSTR *ErrLog,
[in,out] LPD3DXBUFFER* Constants,
[out,retval] LPD3DXBUFFER* ppVertexShader);
[helpcontext(86311)] HRESULT AssembleShader(
[in] BSTR SrcData,
[in] LONG Flags,
[in,out] LPD3DXBUFFER* Constants,
[in,out,optional] BSTR *ErrLog,
[out,retval] LPD3DXBUFFER* ppVertexShader);
[helpcontext(96364)] HRESULT GetErrorString([in] LONG hr, [out,retval] BSTR *retStr);
[helpcontext(96371)] HRESULT LoadSurfaceFromFile(
[in] LPDIRECT3DSURFACE8 DestSurface,
[in] void * DestPalette,
[in] void * DestRect,
[in] BSTR SrcFile,
[in] void* SrcRect,
[in] DWORD Filter,
[in] LONG ColorKey,
[in,out] void* SrcInfo);
[helpcontext(86372)] HRESULT LoadSurfaceFromFileInMemory(
[in] LPDIRECT3DSURFACE8 DestSurface,
[in] void * DestPalette,
[in] void * DestRect,
[in] void * SrcData,
[in] LONG LengthInBytes,
[in] void * SrcRect,
[in] DWORD Filter,
[in] LONG ColorKey,
[in,out] void* SrcInfo);
[helpcontext(86375)] HRESULT LoadSurfaceFromSurface(
[in] LPDIRECT3DSURFACE8 DestSurface,
[in] void * DestPalette,
[in] void * DestRect,
[in] LPDIRECT3DSURFACE8 SrcSurface,
[in] void * SrcPalette,
[in] void * SrcRect,
[in] DWORD Filter,
[in] LONG ColorKey);
[helpcontext(86373)] HRESULT LoadSurfaceFromMemory(
[in] LPDIRECT3DSURFACE8 DestSurface,
[in] void * DestPalette,
[in] void * DestRect,
[in] LPVOID SrcData,
[in] CONST_D3DFORMAT formatSrc,
[in] UINT SrcPitch,
[in] void * SrcPalette,
[in] RECT_CDESC * SrcRect,
[in] LONG Filter,
[in] LONG ColorKey);
[helpcontext(86320)] HRESULT CheckTextureRequirements(
[in,out] LPDIRECT3DDEVICE8 Device,
[in,out] LONG* Width,
[in,out] LONG* Height,
[in,out] LONG* NumMipLevels,
[in] LONG Usage,
[in,out] CONST_D3DFORMAT* PixelFormat,
[in] CONST_D3DPOOL Pool);
[helpcontext(96349)] HRESULT CreateTexture(
[in] LPDIRECT3DDEVICE8 Device,
[in] UINT Width,
[in] UINT Height,
[in] UINT MipLevels,
[in] LONG Usage,
[in] CONST_D3DFORMAT PixelFormat,
[in] CONST_D3DPOOL Pool,
[out,retval] LPDIRECT3DTEXTURE8* ppTexture);
[helpcontext(96354)] HRESULT CreateTextureFromResource(
[in] LPDIRECT3DDEVICE8 Device,
#ifdef _WIN64
[in] HANDLE hModule,
#else
[in] LONG hModule,
#endif
[in] BSTR SrcResource,
[out,retval] LPDIRECT3DTEXTURE8* ppTexture);
[helpcontext(96350)] HRESULT CreateTextureFromFile(
[in] LPDIRECT3DDEVICE8 Device,
[in] BSTR SrcFile,
[out,retval] LPDIRECT3DTEXTURE8* ppTexture);
[helpcontext(96351)] HRESULT CreateTextureFromFileEx(
[in] LPDIRECT3DDEVICE8 Device,
[in] BSTR SrcFile,
[in] UINT Width,
[in] UINT Height,
[in] UINT MipLevels,
[in] LONG Usage,
[in] CONST_D3DFORMAT PixelFormat,
[in] CONST_D3DPOOL Pool,
[in] DWORD Filter,
[in] DWORD MipFilter,
[in] DWORD ColorKey,
[in,out] void* SrcInfo,
[in] void* Palette,
[out,retval] LPDIRECT3DTEXTURE8* ppTexture);
[helpcontext(96352)] HRESULT CreateTextureFromFileInMemory(
[in] LPDIRECT3DDEVICE8 Device,
[in] void *SrcData,
[in] LONG LengthInBytes,
[out,retval] LPDIRECT3DTEXTURE8* ppTexture);
[helpcontext(96353)] HRESULT CreateTextureFromFileInMemoryEx(
[in] LPDIRECT3DDEVICE8 Device,
[in] void *SrcData,
[in] LONG LengthInBytes,
[in] UINT Width,
[in] UINT Height,
[in] UINT MipLevels,
[in] LONG Usage,
[in] CONST_D3DFORMAT PixelFormat,
[in] CONST_D3DPOOL Pool,
[in] DWORD Filter,
[in] DWORD MipFilter,
[in] DWORD ColorKey,
[in,out] void* SrcInfo,
[in] void* Palette,
[out,retval] LPDIRECT3DTEXTURE8* ppTexture);
[helpcontext(96360)] HRESULT FilterTexture(
[in] LPDIRECT3DTEXTURE8 Texture,
[in] void* Palette,
[in] UINT SrcLevel,
[in] DWORD Filter);
[helpcontext(86319)] HRESULT CheckCubeTextureRequirements(
[in] LPDIRECT3DDEVICE8 Device,
[in,out] UINT* Size,
[in,out] UINT* NumMipLevels,
[in] LONG Usage,
[in,out] CONST_D3DFORMAT *PixelFormat,
[in] CONST_D3DPOOL Pool);
[helpcontext(86330)] HRESULT CreateCubeTexture(
[in] LPDIRECT3DDEVICE8 pDevice,
[in] UINT Size,
[in] UINT MipLevels,
[in] LONG Usage,
[in] CONST_D3DFORMAT PixelFormat,
[in] CONST_D3DPOOL Pool,
[out,retval] LPDIRECT3DCUBETEXTURE8* ppCubeTexture);
[helpcontext(86331)] HRESULT CreateCubeTextureFromFile(
[in] LPDIRECT3DDEVICE8 Device,
[in] BSTR SrcFile,
[out,retval] LPDIRECT3DCUBETEXTURE8* ppCubeTexture);
[helpcontext(86332)] HRESULT CreateCubeTextureFromFileEx(
[in] LPDIRECT3DDEVICE8 Device,
[in] BSTR SrcFile,
[in] UINT TextureSize,
[in] UINT MipLevels,
[in] LONG Usage,
[in] CONST_D3DFORMAT PixelFormat,
[in] CONST_D3DPOOL Pool,
[in] DWORD Filter,
[in] DWORD MipFilter,
[in] DWORD ColorKey,
[in,out] void* SrcInfo,
[in] void* Palette,
[out,retval] LPDIRECT3DCUBETEXTURE8* ppTexture);
[helpcontext(86333)] HRESULT CreateCubeTextureFromFileInMemory(
[in] LPDIRECT3DDEVICE8 Device,
[in] void *SrcData,
[in] LONG LengthInBytes,
[out,retval] LPDIRECT3DCUBETEXTURE8* ppTexture);
[helpcontext(86334)] HRESULT CreateCubeTextureFromFileInMemoryEx(
[in] LPDIRECT3DDEVICE8 Device,
[in] void *SrcData,
[in] LONG LengthInBytes,
[in] UINT TextureSize,
[in] UINT MipLevels,
[in] LONG Usage,
[in] CONST_D3DFORMAT PixelFormat,
[in] CONST_D3DPOOL Pool,
[in] DWORD Filter,
[in] DWORD MipFilter,
[in] DWORD ColorKey,
[in,out] void* SrcInfo,
[in] void* Palette,
[out,retval] LPDIRECT3DCUBETEXTURE8* ppTexture);
[helpcontext(96359)] HRESULT FilterCubeTexture(
[in] LPDIRECT3DCUBETEXTURE8 CubeTexture,
[in] void *Palette,
[in] UINT SrcLevel,
[in] DWORD Filter);
[helpcontext(86321)] HRESULT CheckVolumeTextureRequirements(
[in] LPDIRECT3DDEVICE8 Device,
[out] LONG* Width,
[out] LONG* Height,
[out] LONG* Depth,
[out] LONG* NumMipLevels,
[in] LONG Usage,
[in,out]CONST_D3DFORMAT *PixelFormat,
[in] CONST_D3DPOOL Pool);
[helpcontext(96355)] HRESULT CreateTextureFromResourceEx(
[in] LPDIRECT3DDEVICE8 Device,
#ifdef _WIN64
[in] HANDLE hSrcModule,
#else
[in] LONG hSrcModule,
#endif
[in] BSTR SrcResource,
[in] LONG Width,
[in] LONG Height,
[in] LONG MipLevels,
[in] LONG Usage,
[in] CONST_D3DFORMAT PixelFormat,
[in] CONST_D3DPOOL Pool,
[in] LONG Filter,
[in] LONG MipFilter,
[in] DWORD ColorKey,
[in,out] void *SrcInfo,
[in] void *Palette,
[out,retval] LPDIRECT3DTEXTURE8 *retTexture);
[helpcontext(96357)] HRESULT CreateVolumeTexture(
[in] LPDIRECT3DDEVICE8 Device,
[in] LONG Width,
[in] LONG Height,
[in] LONG Depth,
[in] LONG MipLevels,
[in] LONG Usage,
[in] CONST_D3DFORMAT PixelFormat,
[in] CONST_D3DPOOL Pool,
[out,retval] LPDIRECT3DVOLUME8 *ppVolumeTexture);
[helpcontext(97361)] HRESULT FilterVolumeTexture(
[in] LPDIRECT3DVOLUME8 VolumeTexture,
[in] void *Palette,
[in] UINT SrcLevel,
[in] LONG Filter);
[helpcontext(86374)] HRESULT LoadSurfaceFromResource(
[in] LPDIRECT3DSURFACE8 DestSurface,
[in] void* DestPalette,
[in] void* DestRect,
#ifdef _WIN64
[in] HANDLE hSrcModule,
#else
[in] LONG hSrcModule,
#endif
[in] BSTR SrcResource,
[in] void* SrcRect,
[in] LONG Filter,
[in] LONG ColorKey,
[in,out] void* SrcInfo);
[helpcontext(86377)] HRESULT LoadVolumeFromVolume(
[in] LPDIRECT3DVOLUME8 DestVolume,
[in] void *DestPalette,
[in] void *DestBox,
[in] LPDIRECT3DVOLUME8 SrcVolume,
[in] void *SrcPalette,
[in] void *SrcBox,
[in] LONG Filter,
[in] LONG ColorKey);
[helpcontext(86376)] HRESULT LoadVolumeFromMemory(
[in] LPDIRECT3DVOLUME8 DestVolume,
[in] void *DestPalette,
[in] void *DestBox,
[in] void *SrcMemory,
[in] LONG SrcFormat,
[in] LONG SrcRowPitch,
[in] LONG SrcSlicePitch,
[in] void *SrcPalette,
[in] void *SrcBox,
[in] LONG Filter,
[in] LONG ColorKey);
[helpcontext(86337)] HRESULT CreateMesh(
[in] DWORD numFaces,
[in] DWORD numVertices,
[in] DWORD options,
[in] void *declaration,
[in] LPDIRECT3DDEVICE8 pD3D,
[out,retval] LPD3DXMESH* ppMesh);
[helpcontext(86338)] HRESULT CreateMeshFVF(
[in] DWORD numFaces,
[in] DWORD numVertices,
[in] DWORD options,
[in] DWORD fvf,
[in] LPDIRECT3DDEVICE8 pD3D,
[out,retval] LPD3DXMESH* ppMesh);
[helpcontext(86345)] HRESULT CreateSPMesh(
[in] LPD3DXMESH pMesh,
[in] void * adjacency,
[in] void * VertexAttributeWeights,
[in] void * VertexWeights,
[out,retval] LPD3DXSPMESH* ppSMesh);
[helpcontext(96363)] HRESULT GeneratePMesh(
[in] LPD3DXMESH Mesh,
[in] void * Adjacency,
[in] void * VertexAttributeWeights,
[in] void * VertexWeights,
[in] DWORD minValue,
[in] DWORD options,
[out,retval] LPD3DXPMESH* ppPMesh);
[helpcontext(96380)] HRESULT SimplifyMesh(
[in] LPD3DXMESH Mesh,
[in] void * Adjacency,
[in] void * VertexAttributeWeights,
[in] void * VertexWeights,
[in] DWORD minValue,
[in] DWORD options,
[out,retval] LPD3DXMESH* ppMesh);
[helpcontext(86325)] HRESULT ComputeBoundingSphere(
[in] LPVOID PointsFVF,
[in] UINT numVertices,
[in] DWORD FVF,
[in] D3DVECTOR_CDESC *Centers,
[in,out] FLOAT *RadiusArray);
[helpcontext(86323)] HRESULT ComputeBoundingBox(
[in] LPVOID PointsFVF,
[in] UINT numVertices,
[in] DWORD FVF,
[in,out] D3DVECTOR_CDESC *MinVert,
[in,out] D3DVECTOR_CDESC *MaxVert);
[helpcontext(86327)] HRESULT ComputeNormals(
[in] LPD3DXBASEMESH pMesh);
[helpcontext(96358)] HRESULT DeclaratorFromFVF(
[in] LONG FVF,
[out] D3DXDECLARATOR_CDESC *Declarator);
[helpcontext(86362)] HRESULT FVFFromDeclarator(
[in] D3DXDECLARATOR_CDESC *Declarator,
[out,retval] LONG *fvf);
[helpcontext(86329)] HRESULT CreateBuffer(
[in] DWORD numBytes,
[out,retval] LPD3DXBUFFER *ppBuffer);
//CONSIDER MESH CONTAINER
// GetMesh
// GetAdjacencyCount
// CopyOutAdjacency
// GetAdjacency(i)
// GetMaterialCount
// GetMaterial(i)
// GetMaterialBuffer
// GetAdjacencyBuffer
[helpcontext(86369)] HRESULT LoadMeshFromX(
[in] BSTR Filename,
[in] DWORD options,
[in] LPDIRECT3DDEVICE8 D3DDevice,
[in,out] LPD3DXBUFFER *retAdjacency,
[in,out] LPD3DXBUFFER *retMaterials,
[in,out] DWORD *retMaterialCount,
[out,retval] LPD3DXMESH *retMesh);
[helpcontext(86378)] HRESULT SaveMeshToX(
[in] BSTR Filename,
[in] LPD3DXMESH Mesh,
[in] void *AdjacencyArray,
[in] D3DXMATERIAL_CDESC* MaterialArray,
[in] DWORD MaterialCount,
[in] DWORD xFormat);
[helpcontext(86370)] HRESULT LoadMeshFromXof(
[in] LPDIRECTXFILEDATA xofobjMesh,
[in] DWORD options,
[in] LPDIRECT3DDEVICE8 D3DDevice,
[in,out] LPD3DXBUFFER *retBufAdjacency,
[in,out] LPD3DXBUFFER *retMaterials,
[in,out] DWORD *retMaterialCount,
[out,retval] LPD3DXMESH *retMesh);
[helpcontext(86382)] HRESULT TessellateNPatches(
[in] LPD3DXMESH MeshIn, // mesh to tesselate
[in] void *AdjacencyIn,
[in] FLOAT NumSegs, // number of segments per edge to tesselate to
[in] VARIANT_BOOL QuadraticInterpNormals,
[in,out, optional] LPD3DXBUFFER *AdjacencyOut,
[out,retval] LPD3DXMESH *MeshOut); // tesselated mesh
[helpcontext(86401)] HRESULT BufferGetMaterial([in] LPD3DXBUFFER MaterialBuffer,
[in] DWORD index,[out] D3DMATERIAL8_CDESC *mat);
[helpcontext(86317)] HRESULT BufferGetTextureName([in] LPD3DXBUFFER MaterialBuffer,
[in] DWORD index, [out,retval] BSTR *retName);
[helpcontext(86315)] HRESULT BufferGetData([in] LPD3DXBUFFER Buffer,
[in] DWORD index, [in] DWORD typesize, [in] DWORD typecount,[in,out] LPVOID data);
[helpcontext(86318)] HRESULT BufferSetData([in] LPD3DXBUFFER Buffer,
[in] DWORD index, [in] DWORD typesize, [in] DWORD typecount,[in,out] LPVOID data);
[helpcontext(86366)] HRESULT Intersect(
[in] D3DXMesh *MeshIn,
[in] D3DVECTOR_CDESC *RayPos,
[in] D3DVECTOR_CDESC *RayDir,
[out] LONG *retHit,
[out] LONG *retFaceIndex,
[out] FLOAT *U,
[out] FLOAT *V,
[out] FLOAT *retDist,
[out] DWORD *countHits,
[out,retval] LPD3DXBUFFER *AllHits);
[helpcontext(86381)] HRESULT SphereBoundProbe(
[in] D3DVECTOR_CDESC *Center,
[in] FLOAT Radius,
[in] D3DVECTOR_CDESC *RayPosition,
[in] D3DVECTOR_CDESC *Raydirection,
[out,retval] VARIANT_BOOL *retHit);
[helpcontext(86326)] HRESULT ComputeBoundingSphereFromMesh(
[in] D3DXMesh *MeshIn,
[in,out] D3DVECTOR_CDESC *Centers,
[in,out] FLOAT *RadiusArray);
[helpcontext(86324)] HRESULT ComputeBoundingBoxFromMesh(
[in] D3DXMesh *MeshIn,
[in,out] D3DVECTOR_CDESC *MinArray,
[in,out] D3DVECTOR_CDESC *MaxArray);
[helpcontext(86341)] HRESULT CreateSkinMesh(
[in] DWORD numFaces,
[in] DWORD numVertices,
[in] DWORD numBones,
[in] DWORD options,
[in] void *Declaration,
[in] LPDIRECT3DDEVICE8 D3DDevice,
[out,retval]LPD3DXSKINMESH* SkinMesh);
[helpcontext(86343)] HRESULT CreateSkinMeshFVF(
[in] DWORD numFaces,
[in] DWORD numVertices,
[in] DWORD numBones,
[in] DWORD options,
[in] DWORD fvf,
[in] LPDIRECT3DDEVICE8 D3DDevice,
[out,retval] LPD3DXSKINMESH* ppSkinMesh);
[helpcontext(86342)] HRESULT CreateSkinMeshFromMesh(
[in] LPD3DXMESH Mesh,
[in] DWORD numBones,
[out,retval] LPD3DXSKINMESH* ppSkinMesh);
[helpcontext(86368)] HRESULT LoadSkinMeshFromXof(
[in] IUnknown *xofobjMesh, //LPDIRECTXFILEDATA pxofobjMesh,
[in] DWORD options,
[in] LPDIRECT3DDEVICE8 D3DDevice,
[in,out] LPD3DXBUFFER* AdjacencyOut,
[in,out] LPD3DXBUFFER* MaterialsOut,
[in,out] DWORD *NumMatOut,
[in,out] LPD3DXBUFFER* BoneNamesOut,
[in,out] LPD3DXBUFFER* BoneTransformsOut,
[out,retval] LPD3DXSKINMESH* ppMesh);
[helpcontext(86339)] HRESULT CreatePolygon(
[in] LPDIRECT3DDEVICE8 D3DDevice,
[in] FLOAT Length,
[in] UINT Sides,
[in,out] LPD3DXBUFFER *RetAdjacency,
[out,retval] LPD3DXMESH* RetMesh);
[helpcontext(86328)] HRESULT CreateBox(
[in] LPDIRECT3DDEVICE8 D3DDevice,
[in] FLOAT Width,
[in] FLOAT Height,
[in] FLOAT Depth,
[in,out] LPD3DXBUFFER *RetAdjacency,
[out,retval] LPD3DXMESH* RetMesh);
[helpcontext(86335)] HRESULT CreateCylinder(
[in] LPDIRECT3DDEVICE8 D3DDevice,
[in] FLOAT Radius1,
[in] FLOAT Radius2,
[in] FLOAT Length,
[in] UINT Slices,
[in] UINT Stacks,
[in,out] LPD3DXBUFFER *RetAdjacency,
[out,retval] LPD3DXMESH* RetMesh);
[helpcontext(97344)] HRESULT CreateSphere(
[in] LPDIRECT3DDEVICE8 D3DDevice,
[in] FLOAT Radius,
[in] UINT Slices,
[in] UINT Stacks,
[in,out] LPD3DXBUFFER *RetAdjacency,
[out,retval] LPD3DXMESH* RetMesh);
[helpcontext(96356)] HRESULT CreateTorus(
[in] LPDIRECT3DDEVICE8 D3DDevice,
[in] FLOAT InnerRadius,
[in] FLOAT OuterRadius,
[in] UINT Sides,
[in] UINT Rings,
[in,out] LPD3DXBUFFER *RetAdjacency,
[out,retval] LPD3DXMESH* RetMesh);
[helpcontext(86347)] HRESULT CreateTeapot(
[in] LPDIRECT3DDEVICE8 D3DDevice,
[in,out] LPD3DXBUFFER *RetAdjacency,
[out,retval] LPD3DXMESH* RetMesh);
[helpcontext(96348)] HRESULT CreateText(
[in] LPDIRECT3DDEVICE8 D3DDevice,
[in] HDC hDC,
[in] BSTR Text,
[in] FLOAT Deviation,
[in] FLOAT Extrusion,
[in,out] LPD3DXMESH * RetMesh,
[in,out] LPD3DXBUFFER *AdjacencyOut,
[in,out] void *GlyphMetrics);
[helpcontext(86314)] HRESULT BufferGetBoneName([in] LPD3DXBUFFER BoneNameBuffer,
[in] DWORD index, [out,retval] BSTR *retName);
[helpcontext(86346)] HRESULT CreateSprite(
[in] LPDIRECT3DDEVICE8 D3DDevice,
[out,retval] D3DXSprite ** retSprite);
[helpcontext(86340)] HRESULT CreateRenderToSurface(
[in] LPDIRECT3DDEVICE8 D3DDevice,
[in] UINT Width,
[in] UINT Height,
[in] CONST_D3DFORMAT Format,
[in] LONG DepthStencil,
[in] CONST_D3DFORMAT DepthStencilFormat,
[out,retval] D3DXRenderToSurface **RetRenderToSurface);
[helpcontext(86322)] HRESULT CleanMesh([in] LPD3DXMESH MeshIn,[in] void *Adjacency, [in,out] BSTR *ErrLog,
[in,out] LPD3DXBUFFER AdjacencyOut,
[out,retval] LPD3DXMESH* MeshOut);
[helpcontext(86383)] HRESULT ValidMesh([in] LPD3DXMESH MeshIn,[in] void *Adjacency, [in,out,optional] BSTR *ErrLog,
[out,retval] VARIANT_BOOL *ret);
[helpcontext(86313)] HRESULT BoxBoundProbe([in] D3DVECTOR_CDESC *MinVert,[in] D3DVECTOR_CDESC *MaxVert,[in] D3DVECTOR_CDESC *RayPosition, [in] D3DVECTOR_CDESC *RayDirection, [out,retval] VARIANT_BOOL *ret);
[helpcontext(86379)] HRESULT SavePMeshToFile(
[in] BSTR Filename,
[in] D3DXPMesh *Mesh,
[in] D3DXMATERIAL_CDESC *MaterialArray,
[in] LONG MaterialCount);
[helpcontext(86367)] HRESULT LoadPMeshFromFile(
[in] BSTR Filename,
[in] DWORD options,
[in] LPDIRECT3DDEVICE8 D3DDevice,
[out] LPD3DXBUFFER *RetMaterials,
[out] LONG *RetNumMaterials,
[out,retval] D3DXPMesh **RetPMesh);
[helpcontext(87101)] HRESULT BufferGetBoneCombo([in] LPD3DXBUFFER BoneComboBuffer,
[in] DWORD index, [in,out] D3DXBONECOMBINATION_CDESC *boneCombo);
[helpcontext(87102)] HRESULT BufferGetBoneComboBoneIds([in] LPD3DXBUFFER BoneComboBuffer,
[in] DWORD index, [in] DWORD PaletteSize, [in] void *BoneIds);
[helpcontext(1)] HRESULT SaveSurfaceToFile([in] BSTR DestFile,
[in] CONST_D3DXIMAGE_FILEFORMAT DestFormat,
[in] LPDIRECT3DSURFACE8 SrcSurface,
[in] PALETTEENTRY* SrcPalette,
[in] RECT* SrcRect);
[helpcontext(1)] HRESULT SaveVolumeToFile([in] BSTR DestFile,
[in] CONST_D3DXIMAGE_FILEFORMAT DestFormat,
[in] LPDIRECT3DVOLUME8 SrcVolume,
[in] PALETTEENTRY* SrcPalette,
[in] void* SrcBox);
[helpcontext(1)] HRESULT SaveTextureToFile([in] BSTR DestFile,
[in] CONST_D3DXIMAGE_FILEFORMAT DestFormat,
[in] LPDIRECT3DBASETEXTURE8 SrcTexture,
[in] PALETTEENTRY* SrcPalette);
};
[
uuid(58356C5D-0BFD-48ed-93C5-F4520B6233DE),
helpstring("D3DX8"),
helpcontext(86302)
]
coclass D3DX8 {
[default] interface I_dxj_D3DX8;
};