📄 d3dx8.pas
字号:
function D3DXVec2Hermite(vOut : PD3DXVector2; v1, t1, v2, t2 : PD3DXVector2; const s : Single) : PD3DXVector2; stdcall; overload;
// CatmullRom interpolation between V1 (when s == 0) and V2 (when s == 1)
function D3DXVec2CatmullRom(var vOut : TD3DXVector2; var v0, v1, v2 : TD3DXVector2; const s : Single) : PD3DXVector2; stdcall; overload;
function D3DXVec2CatmullRom(var vOut : TD3DXVector2; v0, v1, v2 : PD3DXVector2; const s : Single) : PD3DXVector2; stdcall; overload;
function D3DXVec2CatmullRom(vOut : PD3DXVector2; var v0, v1, v2 : TD3DXVector2; const s : Single) : PD3DXVector2; stdcall; overload;
function D3DXVec2CatmullRom(vOut : PD3DXVector2; v0, v1, v2 : PD3DXVector2; const s : Single) : PD3DXVector2; stdcall; overload;
// Barycentric coordinates. V1 + f(V2-V1) + g(V3-V1)
function D3DXVec2BaryCentric(var vOut : TD3DXVector2; var v1, v2, v3 : TD3DXVector2; const f, g : Single) : PD3DXVector2; stdcall; overload;
function D3DXVec2BaryCentric(var vOut : TD3DXVector2; v1, v2, v3 : PD3DXVector2; const f, g : Single) : PD3DXVector2; stdcall; overload;
function D3DXVec2BaryCentric(vOut : PD3DXVector2; var v1, v2, v3 : TD3DXVector2; const f, g : Single) : PD3DXVector2; stdcall; overload;
function D3DXVec2BaryCentric(vOut : PD3DXVector2; v1, v2, v3 : PD3DXVector2; const f, g : Single) : PD3DXVector2; stdcall; overload;
// Transform (x, y, 0, 1) by matrix.
function D3DXVec2Transform(var vOut : TD3DXVector4; var v : TD3DXVector2; var m : TD3DXMatrix) : PD3DXVector4; stdcall; overload;
function D3DXVec2Transform(var vOut : TD3DXVector4; var v : TD3DXVector2; m : PD3DXMatrix) : PD3DXVector4; stdcall; overload;
function D3DXVec2Transform(var vOut : TD3DXVector4; v : PD3DXVector2; var m : TD3DXMatrix) : PD3DXVector4; stdcall; overload;
function D3DXVec2Transform(var vOut : TD3DXVector4; v : PD3DXVector2; m : PD3DXMatrix) : PD3DXVector4; stdcall; overload;
function D3DXVec2Transform(vOut : PD3DXVector4; var v : TD3DXVector2; var m : TD3DXMatrix) : PD3DXVector4; stdcall; overload;
function D3DXVec2Transform(vOut : PD3DXVector4; var v : TD3DXVector2; m : PD3DXMatrix) : PD3DXVector4; stdcall; overload;
function D3DXVec2Transform(vOut : PD3DXVector4; v : PD3DXVector2; var m : TD3DXMatrix) : PD3DXVector4; stdcall; overload;
function D3DXVec2Transform(vOut : PD3DXVector4; v : PD3DXVector2; m : PD3DXMatrix) : PD3DXVector4; stdcall; overload;
// Transform (x, y, 0, 1) by matrix, project result back into w=1.
function D3DXVec2TransformCoord(var vOut : TD3DXVector2; var v : TD3DXVector2; var m : TD3DXMatrix) : PD3DXVector2; stdcall; overload;
function D3DXVec2TransformCoord(var vOut : TD3DXVector2; var v : TD3DXVector2; m : PD3DXMatrix) : PD3DXVector2; stdcall; overload;
function D3DXVec2TransformCoord(var vOut : TD3DXVector2; v : PD3DXVector2; var m : TD3DXMatrix) : PD3DXVector2; stdcall; overload;
function D3DXVec2TransformCoord(var vOut : TD3DXVector2; v : PD3DXVector2; m : PD3DXMatrix) : PD3DXVector2; stdcall; overload;
function D3DXVec2TransformCoord(vOut : PD3DXVector2; var v : TD3DXVector2; var m : TD3DXMatrix) : PD3DXVector2; stdcall; overload;
function D3DXVec2TransformCoord(vOut : PD3DXVector2; var v : TD3DXVector2; m : PD3DXMatrix) : PD3DXVector2; stdcall; overload;
function D3DXVec2TransformCoord(vOut : PD3DXVector2; v : PD3DXVector2; var m : TD3DXMatrix) : PD3DXVector2; stdcall; overload;
function D3DXVec2TransformCoord(vOut : PD3DXVector2; v : PD3DXVector2; m : PD3DXMatrix) : PD3DXVector2; stdcall; overload;
// Transform (x, y, 0, 0) by matrix.
function D3DXVec2TransformNormal(out vOut : TD3DXVector2; var v : TD3DXVector2; var m : TD3DXMatrix) : PD3DXVector2; stdcall; overload;
function D3DXVec2TransformNormal(out vOut : TD3DXVector2; var v : TD3DXVector2; m : PD3DXMatrix) : PD3DXVector2; stdcall; overload;
function D3DXVec2TransformNormal(out vOut : TD3DXVector2; v : PD3DXVector2; var m : TD3DXMatrix) : PD3DXVector2; stdcall; overload;
function D3DXVec2TransformNormal(out vOut : TD3DXVector2; v : PD3DXVector2; m : PD3DXMatrix) : PD3DXVector2; stdcall; overload;
function D3DXVec2TransformNormal(vOut : PD3DXVector2; var v : TD3DXVector2; var m : TD3DXMatrix) : PD3DXVector2; stdcall; overload;
function D3DXVec2TransformNormal(vOut : PD3DXVector2; var v : TD3DXVector2; m : PD3DXMatrix) : PD3DXVector2; stdcall; overload;
function D3DXVec2TransformNormal(vOut : PD3DXVector2; v : PD3DXVector2; var m : TD3DXMatrix) : PD3DXVector2; stdcall; overload;
function D3DXVec2TransformNormal(vOut : PD3DXVector2; v : PD3DXVector2; m : PD3DXMatrix) : PD3DXVector2; stdcall; overload;
//--------------------------
// 3D Vector
//--------------------------
// inline
function D3DXVec3Length(const v : TD3DXVector3) : Single;
function D3DXVec3LengthSq(const v : TD3DXVector3) : Single;
function D3DXVec3Dot(const v1, v2 : TD3DXVector3) : Single;
function D3DXVec3Cross(out vOut : TD3DXVector3; const v1, v2 : TD3DXVector3) : TD3DXVector3;
function D3DXVec3Add(out vOut : TD3DXVector3; const v1, v2 : TD3DXVector3) : TD3DXVector3;
function D3DXVec3Subtract(out vOut : TD3DXVector3; const v1, v2 : TD3DXVector3) : TD3DXVector3;
// Minimize each component. x = min(x1, x2), y = min(y1, y2), ...
function D3DXVec3Minimize(out vOut : TD3DXVector3; const v1, v2 : TD3DXVector3) : TD3DXVector3;
// Maximize each component. x = max(x1, x2), y = max(y1, y2), ...
function D3DXVec3Maximize(out vOut : TD3DXVector3; const v1, v2 : TD3DXVector3) : TD3DXVector3;
function D3DXVec3Scale(out vOut : TD3DXVector3; const v : TD3DXVector3; const s : Single): TD3DXVector3;
// Linear interpolation. V1 + s(V2-V1)
function D3DXVec3Lerp(out vOut : TD3DXVector3; const v1, v2 : TD3DXVector3; const s : Single): TD3DXVector3;
// non-inline
function D3DXVec3Normalize(var vOut: TD3DXVector3; var v : TD3DXVector3) : PD3DXVector3; stdcall; overload;
function D3DXVec3Normalize(var vOut: TD3DXVector3; v : PD3DXVector3) : PD3DXVector3; stdcall; overload;
function D3DXVec3Normalize(vOut: PD3DXVector3; var v : TD3DXVector3) : PD3DXVector3; stdcall; overload;
function D3DXVec3Normalize(vOut : PD3DXVector3; v : PD3DXVector3) : PD3DXVector3; stdcall; overload;
// Hermite interpolation between position V1, tangent T1 (when s == 0)
// and position V2, tangent T2 (when s == 1).
function D3DXVec3Hermite(var vOut : TD3DXVector3; var v1, t1, v2, t2 : TD3DXVector3; const s : Single) : PD3DXVector3; stdcall; overload;
function D3DXVec3Hermite(var vOut : TD3DXVector3; v1, t1, v2, t2 : PD3DXVector3; const s : Single) : PD3DXVector3; stdcall; overload;
function D3DXVec3Hermite(vOut : PD3DXVector3; var v1, t1, v2, t2 : TD3DXVector3; const s : Single) : PD3DXVector3; stdcall; overload;
function D3DXVec3Hermite(vOut : PD3DXVector3; v1, t1, v2, t2 : PD3DXVector3; const s : Single) : PD3DXVector3; stdcall; overload;
// CatmullRom interpolation between V1 (when s == 0) and V2 (when s == 1)
function D3DXVec3CatmullRom(var vOut : TD3DXVector3; var v1, v2, v3 : TD3DXVector3; const s : Single) : PD3DXVector3; stdcall; overload;
function D3DXVec3CatmullRom(var vOut : TD3DXVector3; v1, v2, v3 : PD3DXVector3; const s : Single) : PD3DXVector3; stdcall; overload;
function D3DXVec3CatmullRom(vOut : PD3DXVector3; var v1, v2, v3 : TD3DXVector3; const s : Single) : PD3DXVector3; stdcall; overload;
function D3DXVec3CatmullRom(vOut : PD3DXVector3; v1, v2, v3 : PD3DXVector3; const s : Single) : PD3DXVector3; stdcall; overload;
// Barycentric coordinates. V1 + f(V2-V1) + g(V3-V1)
function D3DXVec3BaryCentric(var vOut : TD3DXVector3; var v1, v2, v3 : TD3DXVector3; const f, g : Single) : PD3DXVector3; stdcall; overload;
function D3DXVec3BaryCentric(var vOut : TD3DXVector3; v1, v2, v3 : PD3DXVector3; const f, g : Single) : PD3DXVector3; stdcall; overload;
function D3DXVec3BaryCentric(vOut : PD3DXVector3; var v1, v2, v3 : TD3DXVector3; const f, g : Single) : PD3DXVector3; stdcall; overload;
function D3DXVec3BaryCentric(vOut : PD3DXVector3; v1, v2, v3 : PD3DXVector3; const f, g : Single) : PD3DXVector3; stdcall; overload;
// Transform (x, y, z, 1) by matrix.
function D3DXVec3Transform(var vOut : TD3DXVector4; var v : TD3DXVector3; var m : TD3DXMatrix) : PD3DXVector4; stdcall; overload;
function D3DXVec3Transform(var vOut : TD3DXVector4; var v : TD3DXVector3; m : PD3DXMatrix) : PD3DXVector4; stdcall; overload;
function D3DXVec3Transform(var vOut : TD3DXVector4; v : PD3DXVector3; var m : TD3DXMatrix) : PD3DXVector4; stdcall; overload;
function D3DXVec3Transform(var vOut : TD3DXVector4; v : PD3DXVector3; m : PD3DXMatrix) : PD3DXVector4; stdcall; overload;
function D3DXVec3Transform(vOut : PD3DXVector4; var v : TD3DXVector3; var m : TD3DXMatrix) : PD3DXVector4; stdcall; overload;
function D3DXVec3Transform(vOut : PD3DXVector4; var v : TD3DXVector3; m : PD3DXMatrix) : PD3DXVector4; stdcall; overload;
function D3DXVec3Transform(vOut : PD3DXVector4; v : PD3DXVector3; var m : TD3DXMatrix) : PD3DXVector4; stdcall; overload;
function D3DXVec3Transform(vOut : PD3DXVector4; v : PD3DXVector3; m : PD3DXMatrix) : PD3DXVector4; stdcall; overload;
// Transform (x, y, z, 1) by matrix, project result back into w=1.
function D3DXVec3TransformCoord(var vOut : TD3DXVector3; var v : TD3DXVector3; var m : TD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3TransformCoord(var vOut : TD3DXVector3; var v : TD3DXVector3; m : PD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3TransformCoord(var vOut : TD3DXVector3; v : PD3DXVector3; var m : TD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3TransformCoord(var vOut : TD3DXVector3; v : PD3DXVector3; m : PD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3TransformCoord(vOut : PD3DXVector3; var v : TD3DXVector3; var m : TD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3TransformCoord(vOut : PD3DXVector3; var v : TD3DXVector3; m : PD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3TransformCoord(vOut : PD3DXVector3; v : PD3DXVector3; var m : TD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3TransformCoord(vOut : PD3DXVector3; v : PD3DXVector3; m : PD3DXMatrix) : PD3DXVector3; stdcall; overload;
// Transform (x, y, z, 0) by matrix. If you transforming a normal by a
// non-affine matrix, the matrix you pass to this function should be the
// transpose of the inverse of the matrix you would use to transform a coord.
function D3DXVec3TransformNormal(var vOut : TD3DXVector3; var v : TD3DXVector3; var m : TD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3TransformNormal(var vOut : TD3DXVector3; var v : TD3DXVector3; m : PD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3TransformNormal(var vOut : TD3DXVector3; v : PD3DXVector3; var m : TD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3TransformNormal(var vOut : TD3DXVector3; v : PD3DXVector3; m : PD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3TransformNormal(vOut : PD3DXVector3; var v : TD3DXVector3; var m : TD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3TransformNormal(vOut : PD3DXVector3; var v : TD3DXVector3; m : PD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3TransformNormal(vOut : PD3DXVector3; v : PD3DXVector3; var m : TD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3TransformNormal(vOut : PD3DXVector3; v : PD3DXVector3; m : PD3DXMatrix) : PD3DXVector3; stdcall; overload;
// Project vector from object space into screen space
function D3DXVec3Project(var vOut : TD3DXVector3; var v : TD3DXVector3; var pViewport : TD3DViewport8; var pProjection, pView, pWorld : TD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Project(var vOut : TD3DXVector3; var v : TD3DXVector3; var pViewport : TD3DViewport8; pProjection, pView, pWorld : PD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Project(var vOut : TD3DXVector3; var v : TD3DXVector3; pViewport : PD3DViewport8; var pProjection, pView, pWorld : TD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Project(var vOut : TD3DXVector3; var v : TD3DXVector3; pViewport : PD3DViewport8; pProjection, pView, pWorld : PD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Project(var vOut : TD3DXVector3; v : PD3DXVector3; var pViewport : TD3DViewport8; var pProjection, pView, pWorld : TD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Project(var vOut : TD3DXVector3; v : PD3DXVector3; var pViewport : TD3DViewport8; pProjection, pView, pWorld : PD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Project(var vOut : TD3DXVector3; v : PD3DXVector3; pViewport : PD3DViewport8; var pProjection, pView, pWorld : TD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Project(var vOut : TD3DXVector3; v : PD3DXVector3; pViewport : PD3DViewport8; pProjection, pView, pWorld : PD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Project(vOut : PD3DXVector3; var v : TD3DXVector3; var pViewport : TD3DViewport8; var pProjection, pView, pWorld : TD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Project(vOut : PD3DXVector3; var v : TD3DXVector3; var pViewport : TD3DViewport8; pProjection, pView, pWorld : PD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Project(vOut : PD3DXVector3; var v : TD3DXVector3; pViewport : PD3DViewport8; var pProjection, pView, pWorld : TD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Project(vOut : PD3DXVector3; var v : TD3DXVector3; pViewport : PD3DViewport8; pProjection, pView, pWorld : PD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Project(vOut : PD3DXVector3; v : PD3DXVector3; var pViewport : TD3DViewport8; var pProjection, pView, pWorld : TD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Project(vOut : PD3DXVector3; v : PD3DXVector3; var pViewport : TD3DViewport8; pProjection, pView, pWorld : PD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Project(vOut : PD3DXVector3; v : PD3DXVector3; pViewport : PD3DViewport8; var pProjection, pView, pWorld : TD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Project(vOut : PD3DXVector3; v : PD3DXVector3; pViewport : PD3DViewport8; pProjection, pView, pWorld : PD3DXMatrix) : PD3DXVector3; stdcall; overload;
// Project vector from screen space into object space
function D3DXVec3Unproject(var vOut : TD3DXVector3; var v : TD3DXVector3; var pViewport : TD3DViewport8; var pProjection, pView, pWorld : TD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Unproject(var vOut : TD3DXVector3; var v : TD3DXVector3; var pViewport : TD3DViewport8; pProjection, pView, pWorld : PD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Unproject(var vOut : TD3DXVector3; var v : TD3DXVector3; pViewport : PD3DViewport8; var pProjection, pView, pWorld : TD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Unproject(var vOut : TD3DXVector3; var v : TD3DXVector3; pViewport : PD3DViewport8; pProjection, pView, pWorld : PD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Unproject(var vOut : TD3DXVector3; v : PD3DXVector3; var pViewport : TD3DViewport8; var pProjection, pView, pWorld : TD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Unproject(var vOut : TD3DXVector3; v : PD3DXVector3; var pViewport : TD3DViewport8; pProjection, pView, pWorld : PD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Unproject(var vOut : TD3DXVector3; v : PD3DXVector3; pViewport : PD3DViewport8; var pProjection, pView, pWorld : TD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Unproject(var vOut : TD3DXVector3; v : PD3DXVector3; pViewport : PD3DViewport8; pProjection, pView, pWorld : PD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Unproject(vOut : PD3DXVector3; var v : TD3DXVector3; var pViewport : TD3DViewport8; var pProjection, pView, pWorld : TD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Unproject(vOut : PD3DXVector3; var v : TD3DXVector3; var pViewport : TD3DViewport8; pProjection, pView, pWorld : PD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Unproject(vOut : PD3DXVector3; var v : TD3DXVector3; pViewport : PD3DViewport8; var pProjection, pView, pWorld : TD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Unproject(vOut : PD3DXVector3; var v : TD3DXVector3; pViewport : PD3DViewport8; pProjection, pView, pWorld : PD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Unproject(vOut : PD3DXVector3; v : PD3DXVector3; var pViewport : TD3DViewport8; var pProjection, pView, pWorld : TD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Unproject(vOut : PD3DXVector3; v : PD3DXVector3; var pViewport : TD3DViewport8; pProjection, pView, pWorld : PD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Unproject(vOut : PD3DXVector3; v : PD3DXVector3; pViewport : PD3DViewport8; var pProjection, pView, pWorld : TD3DXMatrix) : PD3DXVector3; stdcall; overload;
function D3DXVec3Unproject(vOut : PD3DXVector3; v : PD3DXVector3; pViewport : PD3DViewport8; pProjection, pView, pWorld : PD3DXMatrix) : PD3DXVector3; stdcall; overload;
//--------------------------
// 4D Vector
//--------------------------
// inline
function D3DXVec4Length(const v : TD3DXVector4) : Single;
function D3DXVec4LengthSq(const v : TD3DXVector4) : Single;
function D3DXVec4Dot(const v1, v2 : TD3DXVector4) : Single;
function D3DXVec4Add(out vOut : TD3DXVector4; const v1, v2 : TD3DXVector4) : TD3DXVector4;
function D3DXVec4Subtract(out vOut : TD3DXVector4; const v1, v2 : TD3DXVector4) : TD3DXVector4;
// Minimize each component. x = min(x1, x2), y = min(y1, y2), ...
function D3DXVec4Minimize(out vOut : TD3DXVector4; const v1, v2 : TD3DXVector4) : TD3DXVector4;
// Maximize each component. x = max(x1, x2), y = max(y1, y2), ...
function D3DXVec4Maximize(out vOut : TD3DXVector4; const v1, v2 : TD3DXVector4) : TD3DXVector4;
function D3DXVec4Scale(out vOut : TD3DXVector4; const v : TD3DXVector4; const s : Single) : TD3DXVector4;
// Linear interpolation. V1 + s(V2-V1)
function D3DXVec4Lerp(out vOut : TD3DXVector4; const v1, v2 : TD3DXVector4; const s : Single) : TD3DXVector4;
// non-inline
// Cross-product in 4 dimensions.
function D3DXVec4Cross(var vOut : TD3DXVector4; var v1, v2, v3 : TD3DXVector4) : PD3DXVector4; stdcall; overload;
function D3DXVec4Cross(var vOut : TD3DXVector4; v1, v2, v3 : PD3DXVector4) : PD3DXVector4; stdcall; overload;
function D3DXVec4Cross(vOut : PD3DXVector4; var v1, v2, v3 : TD3DXVector4) : PD3DXVector4; stdcall; overload;
function D3DXVec4Cross(vOut : PD3DXVector4; v1, v2, v3 : PD3DXVector4) : PD3DXVector4; stdcall; overload;
function D3DXVec4Normalize(var vOut : TD3DXVector4; var v : TD3DXVector4) : PD3DXVector4; stdcall; overload;
function D3DXVec4Normalize(var vOut : TD3DXVector4; v : PD3DXVector4) : PD3DXVector4; stdcall; overload;
function D3DXVec4Normalize(vOut : PD3DXVector4; var v : TD3DXVector4) : PD3DXVector4; stdcall; overload;
function D3DXVec4Normalize(vOut : PD3DXVector4; v : PD3DXVector4) : PD3DXVector4; stdcall; overload;
// Hermite interpolation between position V1, tangent T1 (when s == 0)
// and position V2, tangent T2 (when s == 1).
function D3DXVec4Hermite(var vOut : TD3DXVector4; var v1, t1, v2, t2 : TD3DXVector4; const s : Single) : PD3DXVector4; stdcall;
// CatmullRom interpolation between V1 (when s == 0) and V2 (when s == 1)
function D3DXVec4CatmullRom(var vOut : TD3DXVector4; var v0, v1, v2, v3 : TD3DXVector4; const s : Single) : PD3DXVector4; stdcall;
// Barycentric coordinates. V1 + f(V2-V1) + g(V3-V1)
function D3DXVec4BaryCentric(var vOut : TD3DXVector4; var v1, v2, v3 : TD3DXVector4; const f, g : Single) : PD3DXVector4; stdcall;
// Transform vector by matrix.
function D3DXVec4Transform(var vOut : TD3DXVector4; var v : TD3DXVector4; var m : TD3DXMatrix) : PD3DXVector4; stdcall;
//--------------------------
// 4D Matrix
//--------------------------
// inline
function D3DXMatrixIdentity(out mOut : TD3DXMatrix) : TD3DXMatrix;
function D3DXMatrixIsIdentity(const m : TD3DXMatrix) : BOOL;
// non-inline
function D3DXMatrixfDeterminant(var m : TD3DXMatrix) : Single; stdcall;
// Matrix multiplication. The result represents the transformation M2
// followed by the transformation M1. (Out = M1 * M2)
function D3DXMatrixMultiply(var mOut : TD3DXMatrix; var m1, m2 : TD3DXMatrix) : PD3DXMatrix; stdcall;
function D3DXMatrixTranspose(var mOut : TD3DXMatrix; var m : TD3DXMatrix) : PD3DXMatrix; stdcall;
// Calculate inverse of matrix. Inversion my fail, in which case NULL will
// be returned. The determinant of pM is also returned it pfDeterminant
// is non-NULL.
function D3DXMatrixInverse(var mOut: TD3DXMatrix; pfDeterminant: PSingle; var m : TD3DXMatrix) : PD3DXMatrix; stdcall;
// Build a matrix which scales by (sx, sy, sz)
function D3DXMatrixScaling(var mOut : TD3DXMatrix; const sx, sy, sz : Single) : PD3DXMatrix; stdcall;
// Build a matrix which translates by (x, y, z)
function D3DXMatrixTranslation(var mOut: TD3DXMatrix; const x, y, z : Single) : PD3DXMatrix; stdcall;
// Build a matrix which rotates around the X axis
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -