📄 direct3drm.pas
字号:
function GetBox (out lpTD3DRMBox: TD3DRMBox) : HResult; stdcall;
function GetBoxEnable : boolean; stdcall;
function GetAxes (out dir, up: TD3DVector) : HResult; stdcall;
function GetMaterial (out lplpMaterial: IDirect3DRMMaterial) : HResult; stdcall;
function GetInheritAxes : boolean; stdcall;
function GetHierarchyBox (out lpTD3DRMBox: TD3DRMBox) : HResult; stdcall;
function SetBox (const lpTD3DRMBox: TD3DRMBox) : HResult; stdcall;
function SetBoxEnable (bEnableFlag: BOOL) : HResult; stdcall;
function SetAxes (dx, dy, dz, ux, uy, uz: TD3DValue) : HResult; stdcall;
function SetInheritAxes (inherit_from_parent: BOOL) : HResult; stdcall;
function SetMaterial (var lplpMaterial: IDirect3DRMMaterial) : HResult; stdcall;
function SetQuaternion (lpRef: IDirect3DRMFrame;
const quat: TD3DRMQuaternion) : HResult; stdcall;
function RayPick (lpRefFrame: IDirect3DRMFrame; var ray: TD3DRMRay;
dwFlags: DWORD; out lplpPicked2Array: IDirect3DRMPicked2Array) :
HResult; stdcall;
function Save (lpFilename: PAnsiChar; d3dFormat: TD3DRMXOFFormat;
d3dSaveFlags: TD3DRMSaveOptions) : HResult; stdcall;
end;
IDirect3DRMFrame3 = interface (IDirect3DRMVisual)
['{ff6b7f70-a40e-11d1-91f9-0000f8758e66}']
(*
* IDirect3DRMFrame3 methods
*)
function AddChild (lpD3DRMFrameChild: IDirect3DRMFrame3) : HResult; stdcall;
function AddLight (lpD3DRMLight: IDirect3DRMLight) : HResult; stdcall;
function AddMoveCallback (d3drmFMC: TD3DRMFrame3MoveCallback;
lpArg: Pointer; dwFlags: DWORD) : HResult; stdcall;
function AddTransform (rctCombine: TD3DRMCombineType;
rmMatrix: TD3DRMMatrix4D) : HResult; stdcall;
function AddTranslation (rctCombine: TD3DRMCombineType; rvX, rvY, rvZ:
TD3DValue) : HResult; stdcall;
function AddScale (rctCombine: TD3DRMCombineType; rvX, rvY, rvZ: TD3DValue) : HResult; stdcall;
function AddRotation (rctCombine: TD3DRMCombineType; rvX, rvY, rvZ,
rvTheta: TD3DValue) : HResult; stdcall;
function AddVisual (lpD3DRMVisual: IDirect3DRMVisual) : HResult; stdcall;
function GetChildren (out lplpChildren: IDirect3DRMFrameArray) : HResult; stdcall;
function GetColor: TD3DColor; stdcall;
function GetLights (out lplpLights: IDirect3DRMLightArray) : HResult; stdcall;
function GetMaterialMode: TD3DRMMaterialMode; stdcall;
function GetParent (out lplpParent: IDirect3DRMFrame3) : HResult; stdcall;
function GetPosition (lpRef: IDirect3DRMFrame3; out lprvPos: TD3DVector) : HResult; stdcall;
function GetRotation (lpRef: IDirect3DRMFrame3; out lprvAxis: TD3DVector;
out lprvTheta: TD3DValue) : HResult; stdcall;
function GetScene (out lplpRoot: IDirect3DRMFrame3) : HResult; stdcall;
function GetSortMode: TD3DRMSortMode; stdcall;
function GetTexture (out lplpTexture: IDirect3DRMTexture3) : HResult; stdcall;
function GetTransform (lpRefFrame: IDirect3DRMFrame3;
var rmMatrix: TD3DRMMatrix4D) : HResult; stdcall;
function GetVelocity (lpRef: IDirect3DRMFrame3; out lprvVel: TD3DVector;
fRotVel: BOOL) : HResult; stdcall;
function GetOrientation (lpRef: IDirect3DRMFrame3; out lprvDir: TD3DVector;
out lprvUp: TD3DVector) : HResult; stdcall;
function GetVisuals (out lplpVisuals: IDirect3DRMVisualArray) : HResult; stdcall;
function InverseTransform (out lprvDst: TD3DVector; const lprvSrc: TD3DVector) : HResult; stdcall;
function Load (lpvObjSource: Pointer; lpvObjID: Pointer;
d3drmLOFlags: TD3DRMLoadOptions; d3drmLoadTextureProc:
TD3DRMLoadTexture3Callback; lpArgLTP: Pointer) : HResult; stdcall;
function LookAt (lpTarget, lpRef: IDirect3DRMFrame3;
rfcConstraint: TD3DRMFrameConstraint ) : HResult; stdcall;
function Move (delta: TD3DValue) : HResult; stdcall;
function DeleteChild (lpChild: IDirect3DRMFrame3) : HResult; stdcall;
function DeleteLight (lpD3DRMLight: IDirect3DRMLight) : HResult; stdcall;
function DeleteMoveCallback (d3drmFMC: TD3DRMFrame3MoveCallback; lpArg: Pointer) : HResult; stdcall;
function DeleteVisual (lpD3DRMVisual: IDirect3DRMVisual) : HResult; stdcall;
function GetSceneBackground: TD3DColor; stdcall;
function GetSceneBackgroundDepth (out lplpDDSurface: IDirectDrawSurface) : HResult; stdcall;
function GetSceneFogColor: TD3DColor; stdcall;
function GetSceneFogEnable: BOOL; stdcall;
function GetSceneFogMode: TD3DRMFogMode; stdcall;
function GetSceneFogParams (out lprvStart, lprvEnd, lprvDensity: TD3DValue) : HResult; stdcall;
function SetSceneBackground (rcColor: TD3DColor) : HResult; stdcall;
function SetSceneBackgroundRGB (rvRed, rvGreen, rvBlue: TD3DValue) : HResult; stdcall;
function SetSceneBackgroundDepth (lpImage: IDirectDrawSurface) : HResult; stdcall;
function SetSceneBackgroundImage (lpTexture: IDirect3DRMTexture3) : HResult; stdcall;
function SetSceneFogEnable (bEnable: BOOL) : HResult; stdcall;
function SetSceneFogColor (rcColor: TD3DColor) : HResult; stdcall;
function SetSceneFogMode (rfMode: TD3DRMFogMode) : HResult; stdcall;
function SetSceneFogParams (rvStart, rvEnd, rvDensity: TD3DValue) : HResult; stdcall;
function SetColor (rcColor: TD3DColor) : HResult; stdcall;
function SetColorRGB (rvRed, rvGreen, rvBlue: TD3DValue) : HResult; stdcall;
function GetZbufferMode: TD3DRMZBufferMode; stdcall;
function SetMaterialMode (rmmMode: TD3DRMMaterialMode) : HResult; stdcall;
function SetOrientation (lpRef: IDirect3DRMFrame3; rvDx, rvDy, rvDz, rvUx,
rvUy, rvUz: TD3DValue) : HResult; stdcall;
function SetPosition (lpRef: IDirect3DRMFrame3; rvX, rvY, rvZ: TD3DValue) :
HResult; stdcall;
function SetRotation (lpRef: IDirect3DRMFrame3; rvX, rvY, rvZ,
rvTheta: TD3DValue) : HResult; stdcall;
function SetSortMode (d3drmSM: TD3DRMSortMode) : HResult; stdcall;
function SetTexture (lpD3DRMTexture: IDirect3DRMTexture3) : HResult; stdcall;
function SetVelocity (lpRef: IDirect3DRMFrame3; rvX, rvY, rvZ: TD3DValue;
fRotVel: BOOL) : HResult; stdcall;
function SetZbufferMode (d3drmZBM: TD3DRMZBufferMode) : HResult; stdcall;
function Transform (out lpd3dVDst: TD3DVector; const lpd3dVSrc: TD3DVector) : HResult; stdcall;
function GetBox (out lpTD3DRMBox: TD3DRMBox) : HResult; stdcall;
function GetBoxEnable : boolean; stdcall;
function GetAxes (out dir, up: TD3DVector) : HResult; stdcall;
function GetMaterial (out lplpMaterial: IDirect3DRMMaterial2) : HResult; stdcall;
function GetInheritAxes : boolean; stdcall;
function GetHierarchyBox (out lpTD3DRMBox: TD3DRMBox) : HResult; stdcall;
function SetBox (const lpTD3DRMBox: TD3DRMBox) : HResult; stdcall;
function SetBoxEnable (bEnableFlag: BOOL) : HResult; stdcall;
function SetAxes (dx, dy, dz, ux, uy, uz: TD3DValue) : HResult; stdcall;
function SetInheritAxes (inherit_from_parent: BOOL) : HResult; stdcall;
function SetMaterial (var lplpMaterial: IDirect3DRMMaterial2) : HResult; stdcall;
function SetQuaternion (lpRef: IDirect3DRMFrame3;
const quat: TD3DRMQuaternion) : HResult; stdcall;
function RayPick (lpRefFrame: IDirect3DRMFrame3; var ray: TD3DRMRay;
dwFlags: DWORD; out lplpPicked2Array: IDirect3DRMPicked2Array) : HResult; stdcall;
function Save (lpFilename: PAnsiChar; d3dFormat: TD3DRMXOFFormat;
d3dSaveFlags: TD3DRMSaveOptions) : HResult; stdcall;
function TransformVectors (lpRefFrame: IDirect3DRMFrame3;
dwNumVectors: DWORD; out lpDstVectors: TD3DVector;
const lpSrcVectors: TD3DVector) : HResult; stdcall;
function InverseTransformVectors (lpRefFrame: IDirect3DRMFrame3;
dwNumVectors: DWORD; out lpDstVectors: TD3DVector;
const lpSrcVectors: TD3DVector) : HResult; stdcall;
function SetTraversalOptions (dwFlags: DWORD) : HResult; stdcall;
function GetTraversalOptions (out lpdwFlags: DWORD) : HResult; stdcall;
function SetSceneFogMethod (dwFlags: DWORD) : HResult; stdcall;
function GetSceneFogMethod (out lpdwFlags: DWORD) : HResult; stdcall;
function SetMaterialOverride (
const lpdmOverride: TD3DRMMaterialOverride) : HResult; stdcall;
function GetMaterialOverride (
const lpdmOverride: TD3DRMMaterialOverride) : HResult; stdcall;
end;
IDirect3DRMMesh = interface (IDirect3DRMVisual)
['{a3a80d01-6e12-11cf-ac4a-0000c03825a1}']
(*
* IDirect3DRMMesh methods
*)
function Scale (sx, sy, sz: TD3DValue) : HResult; stdcall;
function Translate (tx, ty, tz: TD3DValue) : HResult; stdcall;
function GetBox (out lpTD3DRMBox: TD3DRMBox) : HResult; stdcall;
function AddGroup (vCount, fCount, vPerFace: DWORD; var fData: DWORD;
var returnId: TD3DRMGroupIndex) : HResult; stdcall;
function SetVertices (id: TD3DRMGroupIndex; index, count: DWORD;
var values: TD3DRMVertex) : HResult; stdcall;
function SetGroupColor (id: TD3DRMGroupIndex; value: TD3DColor) : HResult; stdcall;
function SetGroupColorRGB (id: TD3DRMGroupIndex; red, green,
blue: TD3DValue) : HResult; stdcall;
function SetGroupMapping (id: TD3DRMGroupIndex;
value: TD3DRMMapping) : HResult; stdcall;
function SetGroupQuality (id: TD3DRMGroupIndex;
value: TD3DRMRenderQuality) : HResult; stdcall;
function SetGroupMaterial (id: TD3DRMGroupIndex; value:
IDirect3DRMMaterial) : HResult; stdcall;
function SetGroupTexture (id: TD3DRMGroupIndex; value: IDirect3DRMTexture) : HResult; stdcall;
function GetGroupCount: DWORD; stdcall;
function GetGroup (id: TD3DRMGroupIndex; var vCount, fCount, vPerFace,
fDataSize, fData: DWORD) : HResult; stdcall;
function GetVertices (id: TD3DRMGroupIndex; index, count : DWORD;
out returnPtr : TD3DRMVertex) : HResult; stdcall;
function GetGroupColor (id: TD3DRMGroupIndex) : TD3DColor; stdcall;
function GetGroupMapping (id: TD3DRMGroupIndex) : TD3DRMMapping; stdcall;
function GetGroupQuality (id: TD3DRMGroupIndex) : TD3DRMRenderQuality; stdcall;
function GetGroupMaterial (id: TD3DRMGroupIndex;
out returnPtr: IDirect3DRMMaterial) : HResult; stdcall;
function GetGroupTexture (id: TD3DRMGroupIndex;
out returnPtr: IDirect3DRMTexture) : HResult; stdcall;
end;
IDirect3DRMProgressiveMesh = interface (IDirect3DRMVisual)
['{4516ec79-8f20-11d0-9b6d-0000c0781bc3}']
(*
* IDirect3DRMProgressiveMesh methods
*)
function Load (lpSource, lpObjID: pointer; dloLoadflags : TD3DRMLoadOptions;
lpCallback: TD3DRMLoadTextureCallback; lpArg: pointer) : HResult; stdcall;
function GetLoadStatus (out lpStatus: TD3DRMPMeshLoadStatus) : HResult; stdcall;
function SetMinRenderDetail (d3dVal: TD3DValue) : HResult; stdcall;
function Abort (dwFlags: DWORD) : HResult; stdcall;
function GetFaceDetail (out lpdwCount: DWORD) : HResult; stdcall;
function GetVertexDetail (out lpdwCount: DWORD) : HResult; stdcall;
function SetFaceDetail (dwCount: DWORD) : HResult; stdcall;
function SetVertexDetail (dwCount: DWORD) : HResult; stdcall;
function GetFaceDetailRange (out lpdwMin, lpdwMax: DWORD) : HResult; stdcall;
function GetVertexDetailRange (out lpdwMin, lpdwMax: DWORD) : HResult; stdcall;
function GetDetail (out lpdvVal: TD3DValue) : HResult; stdcall;
function SetDetail (lpdvVal: TD3DValue) : HResult; stdcall;
function RegisterEvents (hEvent: THANDLE; dwFlags, dwReserved: DWORD) : HResult; stdcall;
function CreateMesh (out lplpD3DRMMesh: IDirect3DRMMesh) : HResult; stdcall;
function Duplicate (out lplpD3DRMPMesh: IDirect3DRMProgressiveMesh) : HResult; stdcall;
function GetBox (out lpBBox: TD3DRMBox) : HResult; stdcall;
function SetQuality (quality: TD3DRMRenderQuality) : HResult; stdcall;
function GetQuality (out lpdwquality: TD3DRMRenderQuality) : HResult; stdcall;
end;
IDirect3DRMShadow = interface (IDirect3DRMVisual)
['{af359780-6ba3-11cf-ac4a-0000c03825a1}']
(*
* IDirect3DRMShadow methods
*)
function Init (lpD3DRMVisual: IDirect3DRMVisual;
lpD3DRMLight: IDirect3DRMLight;
px, py, pz, nx, ny, nz: TD3DValue) : HResult; stdcall;
end;
IDirect3DRMShadow2 = interface (IDirect3DRMShadow)
['{86b44e25-9c82-11d1-bb0b-00a0c981a0a6}']
(*
* IDirect3DRMShadow2 methods
*)
function GetVisual (out lplpDirect3DRMVisual: IDirect3DRMVisual) : HResult; stdcall;
function SetVisual (lpDirect3DRMVisual: IDirect3DRMVisual;
dwFlags: DWORD) : HResult; stdcall;
function GetLight (out lplpDirect3DRMLight: IDirect3DRMLight) : HResult; stdcall;
function SetLight (lplpDirect3DRMLight: IDirect3DRMLight;
dwFlags: DWORD) : HResult; stdcall;
function GetPlane (
var pdvPX, pdvPY, pdvPZ, pdvNX, pdvNY, pdvNZ: TD3DValue) : HResult; stdcall;
function SetPlane (px, py, pz, nx, ny, nz: TD3DValue;
dwFlags: DWORD) : HResult; stdcall;
function GetOptions (out pdwOptions: DWORD) : HResult; stdcall;
function SetOptions (dwOptions: DWORD) : HResult; stdcall;
end;
IDirect3DRMFace = interface (IDirect3DRMObject)
['{eb16cb07-d271-11ce-ac48-0000c03825a1}']
(*
* IDirect3DRMFace methods
*)
function AddVertex (x, y, z: TD3DValue) : HResult; stdcall;
function AddVertexAndNormalIndexed (vertex: DWORD; normal: DWORD) : HResult; stdcall;
function SetColorRGB (red, green, blue: TD3DValue) : HResult; stdcall;
function SetColor (color: TD3DColor) : HResult; stdcall;
function SetTexture (lpD3DRMTexture: IDirect3DRMTexture) : HResult; stdcall;
function SetTextureCoordinates (vertex: DWORD; u, v: TD3DValue) : HResult; stdcall;
function SetMaterial (lpMat: IDirect3DRMMaterial) : HResult; stdcall;
function SetTextureTopology (cylU, cylV: BOOL) : HResult; stdcall;
function GetVertex (index: DWORD; out lpPosition: TD3DVector;
out lpNormal: TD3DVector) : HResult; stdcall;
function GetVertices (var lpdwVertexCount: DWORD;
out lpPosition, lpNormal: TD3DVector) : HResult; stdcall;
function GetTextureCoordinates (index: DWORD; out lpU, lpV: TD3DValue) : HResult; stdcall;
function GetTextureTopology (out lpU, lpV: BOOL) : HResult; stdcall;
function GetNormal (out lpNormal: TD3DVector) : HResult; stdcall;
function GetTexture (out lplpTexture: IDirect3DRMTexture) : HResult; stdcall;
function GetMaterial (out lpMat: IDirect3DRMMaterial) : HResult; stdcall;
function GetVertexCount: Integer; stdcall;
function GetVertexIndex (dwIndex: DWORD) : Integer; stdcall;
function GetTextureCoordinateIndex (dwIndex: DWORD) : Integer; stdcall;
function GetColor: TD3DColor; stdcall;
end;
IDirect3DRMFace2 = interface (IDirect3DRMObject)
['{4516ec81-8f20-11d0-9b6d-0000c0781bc3}']
(*
* IDirect3DRMFace2 methods
*)
function AddVertex (x, y, z: TD3DValue) : HResult; stdcall;
function AddVertexAndNormalIndexed (vertex: DWORD; normal: DWORD) : HResult; stdcall;
function SetColorRGB (red, green, blue: TD3DValue) : HResult; stdcall;
function SetColor (color: TD3DColor) : HResult; stdcall;
function SetTexture (lpD3DRMTexture: IDirect3DRMTexture3) : HResult; stdcall;
function SetTextureCoordinates (vertex: DWORD; u, v: TD3DValue) : HResult; stdcall;
function SetMaterial (lpMat: IDirect3DRMMaterial2) : HResult; stdcall;
function SetTextureTopology (cylU, cylV: BOOL) : HResult; stdcall;
function GetVertex (index: DWORD; out lpPosition: TD3DVector;
out lpNormal: TD3DVector) : HResult; stdcall;
function GetVertices (var lpdwVertexCount: DWORD;
out lpPosition, lpNormal: TD3DVector) : HResult; stdcall;
function GetTextureCoordinates (index: DWORD; out lpU, lpV: TD3DValue) : HResult; stdcall;
function GetTextureTopology (out lpU, lpV: BOOL) : HResult; stdcall;
function GetNormal (out lpNormal: TD3DVector) : HResult; stdcall;
function GetTexture (out lplpTexture: IDirect3DRMTexture3) : HResult; stdcall;
function GetMaterial (out lpMat: IDirect3DRMMaterial2) : HResult; stdcall;
function GetVertexCount: Integer; stdcall;
function GetVertexIndex (dwIndex: DWORD) : Integer; stdcall;
function GetTextureCoordinateIndex (dwIndex: DWORD) : Integer; stdcall;
function GetColor: TD3DColor; stdcall;
end;
IDirect3DRMMeshBuilder = interface (IDirect3DRMVisual)
['{a3a80d02-6e12-11cf-ac4a-0000c03825a1}']
(*
* IDirect3DRMMeshBuilder methods
*)
function Load (lpvObjSource, lpvObjID: Pointer; d3drmLOFlags:
TD3DRMLoadOptions; d3drmLoadTextureProc: TD3DRMLoadTextureCallback;
lpvArg: Pointer) : HResult; stdcall;
function Save (lpFilename: PChar; TD3DRMXOFFormat: TD3DRMXOFFormat;
d3drmSOContents: TD3DRMSaveOptions) : HResult; stdcall;
function Scale (sx, sy, sz: TD3DValue) : HResult; stdcall;
function Translate (tx, ty, tz: TD3DValue) : HResult; stdcall;
function SetColorSource (source: TD3DRMColorSource) : HResult; stdcall;
function GetBox (out lpTD3DRMBox: TD3DRMBox) : HResult; stdcall;
function GenerateNormals : HResult; stdcall;
function GetColorSource: TD3DRMColorSource; stdcall;
function AddMesh (lpD3DRMMesh: IDirect3DRMMesh) : HResult; stdcall;
function AddMeshBuilder (lpD3DRMMeshBuild: IDirect3DRMMeshBuilder) : HResult; stdcall;
function AddFrame (lpD3DRMFrame: IDirect3DRMFrame) : HResult; stdcall;
function AddFace (lpD3DRMFace:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -