亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? d3dx9.pas

?? 一套及時通訊的原碼
?? PAS
?? 第 1 頁 / 共 5 頁
字號:
// (0, 0, 0, 1)
function D3DXQuaternionIdentity(out qOut: TD3DXQuaternion): PD3DXQuaternion;
{$EXTERNALSYM D3DXQuaternionIdentity}

function D3DXQuaternionIsIdentity (const q: TD3DXQuaternion): BOOL;
{$EXTERNALSYM D3DXQuaternionIsIdentity}

// (-x, -y, -z, w)
function D3DXQuaternionConjugate(out qOut: TD3DXQuaternion;
  const q: TD3DXQuaternion): PD3DXQuaternion;
{$EXTERNALSYM D3DXQuaternionConjugate}


// non-inline

// Compute a quaternin's axis and angle of rotation. Expects unit quaternions.
procedure D3DXQuaternionToAxisAngle(const q: TD3DXQuaternion;
  out Axis: TD3DXVector3; out Angle: Single); stdcall; external d3dx9mathDLL;
{$EXTERNALSYM D3DXQuaternionToAxisAngle}

// Build a quaternion from a rotation matrix.
function D3DXQuaternionRotationMatrix(out qOut: TD3DXQuaternion;
  const m: TD3DXMatrix): PD3DXQuaternion; stdcall; external d3dx9mathDLL;
{$EXTERNALSYM D3DXQuaternionRotationMatrix}

// Rotation about arbitrary axis.
function D3DXQuaternionRotationAxis(out qOut: TD3DXQuaternion;
  const v: TD3DXVector3; Angle: Single): PD3DXQuaternion; stdcall; external d3dx9mathDLL;
{$EXTERNALSYM D3DXQuaternionRotationAxis}

// Yaw around the Y axis, a pitch around the X axis,
// and a roll around the Z axis.
function D3DXQuaternionRotationYawPitchRoll(out qOut: TD3DXQuaternion;
  yaw, pitch, roll: Single): PD3DXQuaternion; stdcall; external d3dx9mathDLL;
{$EXTERNALSYM D3DXQuaternionRotationYawPitchRoll}

// Quaternion multiplication.  The result represents the rotation Q2
// followed by the rotation Q1.  (Out = Q2 * Q1)
function D3DXQuaternionMultiply(out qOut: TD3DXQuaternion;
   const q1, q2: TD3DXQuaternion): PD3DXQuaternion; stdcall; external d3dx9mathDLL;
{$EXTERNALSYM D3DXQuaternionMultiply}

function D3DXQuaternionNormalize(out qOut: TD3DXQuaternion;
   const q: TD3DXQuaternion): PD3DXQuaternion; stdcall; external d3dx9mathDLL;
{$EXTERNALSYM D3DXQuaternionNormalize}

// Conjugate and re-norm
function D3DXQuaternionInverse(out qOut: TD3DXQuaternion;
   const q: TD3DXQuaternion): PD3DXQuaternion; stdcall; external d3dx9mathDLL;
{$EXTERNALSYM D3DXQuaternionInverse}

// Expects unit quaternions.
// if q = (cos(theta), sin(theta) * v); ln(q) = (0, theta * v)
function D3DXQuaternionLn(out qOut: TD3DXQuaternion;
   const q: TD3DXQuaternion): PD3DXQuaternion; stdcall; external d3dx9mathDLL;
{$EXTERNALSYM D3DXQuaternionLn}

// Expects pure quaternions. (w == 0)  w is ignored in calculation.
// if q = (0, theta * v); exp(q) = (cos(theta), sin(theta) * v)
function D3DXQuaternionExp(out qOut: TD3DXQuaternion;
   const q: TD3DXQuaternion): PD3DXQuaternion; stdcall; external d3dx9mathDLL;
{$EXTERNALSYM D3DXQuaternionExp}

// Spherical linear interpolation between Q1 (s == 0) and Q2 (s == 1).
// Expects unit quaternions.
function D3DXQuaternionSlerp(out qOut: TD3DXQuaternion;
   const q1, q2: TD3DXQuaternion; t: Single): PD3DXQuaternion; stdcall; external d3dx9mathDLL;
{$EXTERNALSYM D3DXQuaternionSlerp}

// Spherical quadrangle interpolation.
// Slerp(Slerp(Q1, C, t), Slerp(A, B, t), 2t(1-t))
function D3DXQuaternionSquad(out qOut: TD3DXQuaternion;
   const pQ1, pA, pB, pC: TD3DXQuaternion; t: Single): PD3DXQuaternion; stdcall; external d3dx9mathDLL;
{$EXTERNALSYM D3DXQuaternionSquad}

// Setup control points for spherical quadrangle interpolation
// from Q1 to Q2.  The control points are chosen in such a way
// to ensure the continuity of tangents with adjacent segments.
procedure D3DXQuaternionSquadSetup(out pAOut, pBOut, pCOut: TD3DXQuaternion;
   const pQ0, pQ1, pQ2, pQ3: TD3DXQuaternion); stdcall; external d3dx9mathDLL;
{$EXTERNALSYM D3DXQuaternionSquadSetup}

// Barycentric interpolation.
// Slerp(Slerp(Q1, Q2, f+g), Slerp(Q1, Q3, f+g), g/(f+g))
function D3DXQuaternionBaryCentric(out qOut: TD3DXQuaternion;
   const q1, q2, q3: TD3DXQuaternion; f, g: Single): PD3DXQuaternion; stdcall; external d3dx9mathDLL;
{$EXTERNALSYM D3DXQuaternionBaryCentric}


//--------------------------
// Plane
//--------------------------

// inline

// ax + by + cz + dw
function D3DXPlaneDot(const p: TD3DXPlane; const v: TD3DXVector4): Single;
{$EXTERNALSYM D3DXPlaneDot}

// ax + by + cz + d
function D3DXPlaneDotCoord(const p: TD3DXPlane; const v: TD3DXVector3): Single;
{$EXTERNALSYM D3DXPlaneDotCoord}

// ax + by + cz
function D3DXPlaneDotNormal(const p: TD3DXPlane; const v: TD3DXVector3): Single;
{$EXTERNALSYM D3DXPlaneDotNormal}


// non-inline

// Normalize plane (so that |a,b,c| == 1)
function D3DXPlaneNormalize(out pOut: TD3DXPlane; const p: TD3DXPlane): PD3DXPlane; stdcall; external d3dx9mathDLL;
{$EXTERNALSYM D3DXPlaneNormalize}

// Find the intersection between a plane and a line.  If the line is
// parallel to the plane, NULL is returned.
function D3DXPlaneIntersectLine(out vOut: TD3DXVector3;
   const p: TD3DXPlane; const v1, v2: TD3DXVector3): PD3DXVector3; stdcall; external d3dx9mathDLL;
{$EXTERNALSYM D3DXPlaneIntersectLine}

// Construct a plane from a point and a normal
function D3DXPlaneFromPointNormal(out pOut: TD3DXPlane;
   const vPoint, vNormal: TD3DXVector3): PD3DXPlane; stdcall; external d3dx9mathDLL;
{$EXTERNALSYM D3DXPlaneFromPointNormal}

// Construct a plane from 3 points
function D3DXPlaneFromPoints(out pOut: TD3DXPlane;
   const v1, v2, v3: TD3DXVector3): PD3DXPlane; stdcall; external d3dx9mathDLL;
{$EXTERNALSYM D3DXPlaneFromPoints}

// Transform a plane by a matrix.  The vector (a,b,c) must be normal.
// M should be the inverse transpose of the transformation desired.
function D3DXPlaneTransform(out pOut: TD3DXPlane; const m: TD3DXMatrix): PD3DXPlane; stdcall; external d3dx9mathDLL;
{$EXTERNALSYM D3DXPlaneTransform}

// Transform an array of planes by a matrix.  The vectors (a,b,c) must be normal.
// M should be the inverse transpose of the transformation desired.
function D3DXPlaneTransformArray(pOut: PD3DXPlane; OutStride: LongWord;
  pP: PD3DXPlane; PStride: LongWord; const m: TD3DXMatrix; n: LongWord): PD3DXPlane; stdcall; external d3dx9mathDLL;
{$EXTERNALSYM D3DXPlaneTransformArray}


//--------------------------
// Color
//--------------------------

// inline

// (1-r, 1-g, 1-b, a)
function D3DXColorNegative(out cOut: TD3DXColor; const c: TD3DXColor): PD3DXColor;
{$EXTERNALSYM D3DXColorNegative}

function D3DXColorAdd(out cOut: TD3DXColor; const c1, c2: TD3DXColor): PD3DXColor;
{$EXTERNALSYM D3DXColorAdd}

function D3DXColorSubtract(out cOut: TD3DXColor; const c1, c2: TD3DXColor): PD3DXColor;
{$EXTERNALSYM D3DXColorSubtract}

function D3DXColorScale(out cOut: TD3DXColor; const c: TD3DXColor; s: Single): PD3DXColor;
{$EXTERNALSYM D3DXColorScale}

// (r1*r2, g1*g2, b1*b2, a1*a2)
function D3DXColorModulate(out cOut: TD3DXColor; const c1, c2: TD3DXColor): PD3DXColor;
{$EXTERNALSYM D3DXColorModulate}

// Linear interpolation of r,g,b, and a. C1 + s(C2-C1)
function D3DXColorLerp(out cOut: TD3DXColor; const c1, c2: TD3DXColor; s: Single): PD3DXColor;
{$EXTERNALSYM D3DXColorLerp}

// non-inline

// Interpolate r,g,b between desaturated color and color.
// DesaturatedColor + s(Color - DesaturatedColor)
function D3DXColorAdjustSaturation(out cOut: TD3DXColor;
   const pC: TD3DXColor; s: Single): PD3DXColor; stdcall; external d3dx9mathDLL;
{$EXTERNALSYM D3DXColorAdjustSaturation}

// Interpolate r,g,b between 50% grey and color.  Grey + s(Color - Grey)
function D3DXColorAdjustContrast(out cOut: TD3DXColor;
   const pC: TD3DXColor; c: Single): PD3DXColor; stdcall; external d3dx9mathDLL;
{$EXTERNALSYM D3DXColorAdjustContrast}


//--------------------------
// Misc
//--------------------------

// Calculate Fresnel term given the cosine of theta (likely obtained by
// taking the dot of two normals), and the refraction index of the material.
function D3DXFresnelTerm(CosTheta, RefractionIndex: Single): Single; stdcall; external d3dx9mathDLL;
{$EXTERNALSYM D3DXFresnelTerm}



//===========================================================================
//
//    Matrix Stack
//
//===========================================================================

type
  {$HPPEMIT 'DECLARE_DINTERFACE_TYPE(ID3DXMatrixStack);'}
  {$EXTERNALSYM ID3DXMatrixStack}
  ID3DXMatrixStack = interface(IUnknown)
    ['{E3357330-CC5E-11d2-A434-00A0C90629A8}']
    //
    // ID3DXMatrixStack methods
    //

    // Pops the top of the stack, returns the current top
    // *after* popping the top.
    function Pop: HResult; stdcall;

    // Pushes the stack by one, duplicating the current matrix.
    function Push: HResult; stdcall;

    // Loads identity in the current matrix.
    function LoadIdentity: HResult; stdcall;

    // Loads the given matrix into the current matrix
    function LoadMatrix(const M: TD3DXMatrix): HResult; stdcall;

    // Right-Multiplies the given matrix to the current matrix.
    // (transformation is about the current world origin)
    function MultMatrix(const M: TD3DXMatrix): HResult; stdcall;

    // Left-Multiplies the given matrix to the current matrix
    // (transformation is about the local origin of the object)
    function MultMatrixLocal(const M: TD3DXMatrix): HResult; stdcall;

    // Right multiply the current matrix with the computed rotation
    // matrix, counterclockwise about the given axis with the given angle.
    // (rotation is about the current world origin)
    function RotateAxis(const V: TD3DXVector3; Angle: Single): HResult; stdcall;

    // Left multiply the current matrix with the computed rotation
    // matrix, counterclockwise about the given axis with the given angle.
    // (rotation is about the local origin of the object)
    function RotateAxisLocal(const V: TD3DXVector3; Angle: Single): HResult; stdcall;

    // Right multiply the current matrix with the computed rotation
    // matrix. All angles are counterclockwise. (rotation is about the
    // current world origin)

    // The rotation is composed of a yaw around the Y axis, a pitch around
    // the X axis, and a roll around the Z axis.
    function RotateYawPitchRoll(yaw, pitch, roll: Single): HResult; stdcall;

    // Left multiply the current matrix with the computed rotation
    // matrix. All angles are counterclockwise. (rotation is about the
    // local origin of the object)

    // The rotation is composed of a yaw around the Y axis, a pitch around
    // the X axis, and a roll around the Z axis.
    function RotateYawPitchRollLocal(yaw, pitch, roll: Single): HResult; stdcall;

    // Right multiply the current matrix with the computed scale
    // matrix. (transformation is about the current world origin)
    function Scale(x, y, z: Single): HResult; stdcall;

    // Left multiply the current matrix with the computed scale
    // matrix. (transformation is about the local origin of the object)
    function ScaleLocal(x, y, z: Single): HResult; stdcall;

    // Right multiply the current matrix with the computed translation
    // matrix. (transformation is about the current world origin)
    function Translate(x, y, z: Single): HResult; stdcall;

    // Left multiply the current matrix with the computed translation
    // matrix. (transformation is about the local origin of the object)
    function TranslateLocal(x, y, z: Single): HResult; stdcall;

    // Obtain the current matrix at the top of the stack
    function GetTop: PD3DXMatrix; stdcall;
  end;

type
  IID_ID3DXMatrixStack = ID3DXMatrixStack;
  {$EXTERNALSYM IID_ID3DXMatrixStack}

function D3DXCreateMatrixStack(Flags: DWord; out Stack: ID3DXMatrixStack): HResult; stdcall; external d3dx9mathDLL;
{$EXTERNALSYM D3DXCreateMatrixStack}







///////////////////////////////////////////////////////////////////////////
//
//  Copyright (C) Microsoft Corporation.  All Rights Reserved.
//
//  File:       d3dx9core.h
//  Content:    D3DX core types and functions
//
///////////////////////////////////////////////////////////////////////////


///////////////////////////////////////////////////////////////////////////
// D3DX_SDK_VERSION:
// -----------------
// This identifier is passed to D3DXCheckVersion in order to ensure that an
// application was built against the correct header files and lib files.
// This number is incremented whenever a header (or other) change would
// require applications to be rebuilt. If the version doesn't match,
// D3DXCreateVersion will return FALSE. (The number itself has no meaning.)
///////////////////////////////////////////////////////////////////////////

const
  D3DX_VERSION          = 0900;
  {$EXTERNALSYM D3DX_VERSION}
  D3DX_SDK_VERSION      = 9;
  {$EXTERNALSYM D3DX_SDK_VERSION}

function D3DXCheckVersion(D3DSdkVersion, D3DXSdkVersion: LongWord): BOOL; stdcall; external d3dx9coreDLL;
{$EXTERNALSYM D3DXCheckVersion}



///////////////////////////////////////////////////////////////////////////

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区三区蜜桃网| 精品国精品国产| 一区二区三区在线视频免费观看| 福利视频网站一区二区三区| 综合亚洲深深色噜噜狠狠网站| 国产一区二区在线视频| 久久久久国产精品麻豆ai换脸| 国产成人无遮挡在线视频| 久久精品无码一区二区三区| 高清在线观看日韩| 国产精品久久久久久亚洲毛片| 播五月开心婷婷综合| 综合久久久久久| 欧美午夜精品一区二区蜜桃| 亚洲国产va精品久久久不卡综合| 欧美日本在线一区| 国产一区二区影院| 综合亚洲深深色噜噜狠狠网站| 91久久久免费一区二区| 五月婷婷综合网| 精品88久久久久88久久久| 99久久精品免费看国产 | 成人高清视频在线| 一区二区三区在线播放| 777奇米成人网| 国产一区二区三区四区五区入口| 国产精品天美传媒| 欧美三级日本三级少妇99| 免费成人av资源网| 国产精品短视频| 欧美一级高清片在线观看| 国产91精品一区二区| 亚洲午夜久久久久久久久电影网 | 中文字幕亚洲成人| 欧美精品久久一区二区三区| 国产传媒久久文化传媒| 亚洲成人手机在线| 国产视频一区在线观看| 在线看国产一区二区| 精品亚洲国内自在自线福利| 亚洲日本在线天堂| 精品久久久网站| 欧美日韩视频专区在线播放| 国产suv精品一区二区6| 免费观看久久久4p| 亚洲欧美国产77777| 2020国产精品| 51精品视频一区二区三区| 91丨porny丨首页| 国产一区不卡在线| 青青草原综合久久大伊人精品优势 | 91福利在线导航| 国产69精品久久久久777| 日本中文字幕一区| 亚洲欧美激情小说另类| 久久久久亚洲蜜桃| 日韩午夜av电影| 9191精品国产综合久久久久久| 成人高清免费在线播放| 国产中文一区二区三区| 日韩影院免费视频| 亚洲自拍偷拍综合| 国产精品传媒入口麻豆| 国产视频亚洲色图| 欧美成人一区二区三区片免费| 欧美片网站yy| 欧美日韩在线直播| 欧美视频日韩视频| 欧美午夜理伦三级在线观看| 91美女片黄在线| 97精品国产露脸对白| 国产.欧美.日韩| 国产成人午夜精品影院观看视频 | 在线亚洲人成电影网站色www| 岛国一区二区在线观看| 国产精品538一区二区在线| 日本不卡高清视频| 久久精品国产亚洲高清剧情介绍| 日韩av高清在线观看| 日韩成人一区二区三区在线观看| 亚洲国产精品麻豆| 日韩一区精品字幕| 另类调教123区| 韩国女主播一区| 韩日精品视频一区| 国产精品亚洲一区二区三区妖精 | 亚洲欧洲精品成人久久奇米网| 国产日韩精品一区二区浪潮av| 久久美女高清视频 | 亚洲国产精品av| 国产精品乱人伦中文| 综合电影一区二区三区| 亚洲欧美日韩中文字幕一区二区三区| 亚洲欧美日韩久久精品| 亚洲国产视频网站| 久久精品国产一区二区三| 国产一区二区三区日韩| 成人免费电影视频| 欧美在线短视频| 91精品国产欧美一区二区成人| 精品国产成人在线影院| 中文字幕一区二区三区色视频| 中文字幕一区二区三区不卡| 亚洲一区在线观看免费| 日本在线播放一区二区三区| 91福利精品视频| 国产精品美女久久久久av爽李琼 | 9191成人精品久久| 日韩美女视频19| 久久91精品国产91久久小草| 在线观看欧美黄色| 国产精品久久久久婷婷| 美女一区二区久久| 欧美性猛交xxxx黑人交| 国产精品国产三级国产aⅴ无密码| 久久se精品一区二区| 欧美日免费三级在线| 中文字幕一区日韩精品欧美| 久草这里只有精品视频| 欧美一级日韩一级| 午夜影视日本亚洲欧洲精品| 日本韩国精品在线| 最新日韩av在线| 成人免费高清在线| 中文字幕免费一区| 国产精品一区二区x88av| 欧美一级精品在线| 日本色综合中文字幕| 欧美视频一区二区三区在线观看| 亚洲欧洲av在线| 波多野结衣一区二区三区 | 亚洲大片精品永久免费| 色综合天天视频在线观看 | 国产欧美1区2区3区| 国产真实乱偷精品视频免| 欧美精品vⅰdeose4hd| 亚洲一区二区av电影| 在线精品视频一区二区| 亚洲精品一卡二卡| 欧美视频一区二区在线观看| 亚洲综合精品自拍| 欧美色综合天天久久综合精品| 亚洲一区日韩精品中文字幕| 欧洲在线/亚洲| 亚洲成人中文在线| 欧美一级二级三级乱码| 日韩avvvv在线播放| 日韩亚洲电影在线| 久久国产精品99精品国产| 久久综合色播五月| 成人小视频免费在线观看| 国产精品私人自拍| 91免费国产视频网站| 亚洲国产一区二区在线播放| 欧美丰满少妇xxxxx高潮对白| 日韩精品亚洲一区二区三区免费| 欧美一区二区三区啪啪| 韩日av一区二区| 国产精品免费视频网站| 91丨九色丨黑人外教| 亚洲成人手机在线| 精品少妇一区二区三区视频免付费 | 99久久精品免费| 亚洲一区二区精品久久av| 欧美精品 日韩| 国产乱人伦偷精品视频免下载| 国产亚洲一区字幕| 91小视频在线免费看| 亚洲bdsm女犯bdsm网站| 精品国产伦一区二区三区观看体验| 成人性生交大片免费看中文网站| 亚洲日本一区二区| 91精品久久久久久久99蜜桃| 国产麻豆成人传媒免费观看| 国产精品久久福利| 欧美一区二区成人| 99国产精品一区| 日本美女一区二区三区| 亚洲国产高清在线| 欧美日韩国产不卡| 成人听书哪个软件好| 亚洲高清三级视频| 国产日韩欧美a| 制服丝袜亚洲色图| 91在线精品一区二区| 日韩av电影免费观看高清完整版| 国产精品欧美一级免费| 在线不卡的av| 91网址在线看| 国内精品视频666| 亚洲精品国产一区二区精华液| 日韩写真欧美这视频| 色狠狠av一区二区三区| 久久99日本精品| 亚洲国产va精品久久久不卡综合 | 日韩美女精品在线| 2021国产精品久久精品| 欧洲视频一区二区| 国产91精品一区二区| 麻豆国产欧美日韩综合精品二区|