D3D常用函数列表

news/2025/3/22 0:49:01
D3D常用函数列表

D3DXCOLOR* D3DXColorAdd   //两个颜色的组合值
D3DXCOLOR* WINAPI D3DXColorAdjustContrast( //调整颜色对比度
D3DXCOLOR *pOut,
const D3DXCOLOR *pC,
FLOAT c
);
D3DXCOLOR* WINAPI D3DXColorAdjustSaturation( //调整颜色饱和度
D3DXCOLOR *pOut,
const D3DXCOLOR *pC,
FLOAT s
);
D3DXCOLOR* D3DXColorLerp //两个颜色线性插值补创建一个颜色
D3DXCOLOR* D3DXColorModulate //混合两个颜色
D3DXCOLOR* D3DXColorScale //按比例放大或缩小颜色值
D3DXCOLOR* D3DXColorNegative //创建一个颜色的冷色值
D3DXCOLOR* D3DXColorSubtract //两个颜色相减
HRESULT WINAPI D3DXCreateMatrixStack //创建一个ID3DXMarixStack实例
FLOAT* WINAPI D3DXFresnelTerm   //计算菲涅尔系数
FLOAT* WINAPI D3DXFloat16To32Array //转换16位float数组至32位
D3DXFLOAT16* WINAPI D3DXFloat32To16Array//转换32位float数组至16位
D3DXMATRIX* WINAPI D3DXMatrixAffineTrandformation(//创建放射变换矩阵
D3DXMATRIX* pOut,
FLOAT scaling,
const D3DXQUATERNION *pRotation,
const D3DXVECTOR3* pTranslation
);
D3DXMATRIX* D3DXMatrixAffinrTransformation2D//在平面创建放射变换矩阵
HRESULT WINAPI D3DXMatrixDecompose //分解一个3D变换矩阵为缩放系
数,旋转分量和平移向量
FLOAT WINAPI D3DXMatrixDeterminant //计算矩阵行列式值
D3DXMATRIX* D3DXMatrixIdentity   //创建单位矩阵
D3DXMATRIX* D3DXMatrixInverse   //计算逆矩阵
BOOL D3DXMatrixIsIdentity   //判断单位矩阵
D3DXMATRIX* WINAPI D3DXMatrixLookAtLH //创建左手系观察矩阵
D3DXMATRIX* WINAPI D3DXMatrixLookATRH //创建右手系观察矩阵
D3DXMatrix* WINAPI D3DXMatrixMultiply //两个矩阵相乘
D3DXMATRIX* WINAPI D3DXMatrixMultiplyTranspose//矩阵乘积的转置
D3DXMATRIX* WINAPI D3DXMatrixOrthoLH //创建左手正交投影矩阵
D3DXMATRIX* WINAPI D3DXMatrixOrthoRH //创建右手正交投影矩阵
D3DXMATRIX* WINAPI D3DXMatrixOrthoOffCenterLH//创建用户定制的左手正
交投影矩阵
D3DXMATRIX* WINAPI D3DXMatrixOrthoOffCenterRH//创建用户制定的右手正
交投影矩阵
D3DXMATRIX* WINAPI D3DXMatrixPerspectiveForLH//创建左手投影坐标系
D3DXMATRIX* WINAPI D3DXMatrixPerspectiveForRH//创建右手投影坐标系
D3DXMATRIX* WINAPI D3DXMatrixRotationAxis //创建绕任意轴旋转地矩阵
D3DXMATRIX* WINAPI D3DXMatrixRotationQuaternion//四元组创建旋转矩阵
D3DXMATRIX* WINAPI D3DXMatrixRotationX   //绕X轴旋转矩阵
D3DXMATRIX* WINAPI D3DXMatrixRotationY   //绕Y轴旋转矩阵
D3DXMATRIX* WINAPI D3DXMatrixRotationZ   //绕Z轴旋转矩阵
D3DXMATRIX* WINAPI D3DXMatrixRotationYawPitchRoll//绕XYZ角度旋转矩阵
D3DXMATRIX* WINAPI D3DXMatrixScaling   //沿XYZ缩放矩阵
D3DXMATRIX* WINAPI D3DXMatrixShadow   //创建平面阴影矩阵
D3DXMATRIX* WINAPI D3DXMatrixTransformation //创建一个变换矩阵
D3DXMATRIX* WINAPI D3DXMatrixTransformation2D//创建一个平面变换矩阵
D3DXMATRIX* WINAPI D3DXMatrixTranspose   //把矩阵转置
FLOAT D3DXPlaneDot    //平面方程与4D向量的点乘
FLOAT D3DXPlaneDotCoord    //平面与3D向量的点乘,w=1
FLOAT D3DXPlaneDotNormal   //平面与3D向量的点乘,w=0
D3DXPLANE* WINAPI D3DXPlaneFromPointNormal //点法创建平面
D3DXPLANE* WINAPI D3DXPlaneFromPoints   //三点创建平面
D3DXVECTOR3* WINAPI D3DXPlaneIntersectLine //找出直线平面交点
D3DXPLANE* WINAPI D3DXPlaneNormalize//规格化平面方程系数以求单位法线
D3DXPLANE* D3DXPlaneScale   //缩放平面
D3DXPLANE* WINAPI D3DXPlaneTransform //矩阵转置平面
D3DXPLANE* WINAPI D3DXPlaneTransformArray//用变换矩阵变换平面数组
D3DXQUATERNION* WINAPI D3DXQuaternionBaryCentric//三个四元数的重心
D3DXQUATERNION* D3DXQuaternionConjugate   //求共轭四元数
FLOAT D3DXQuaternionDot     //四元数点乘
D3DXQUATERNION* WINAPI D3DXQuaternionExp //四元数指数
D3DXQUATERNION* WINAPI D3DXQuaternionInverse//共轭变换并规格化四元数
D3DXQUATERNION* D3DXQuaternionIdentity   //单位四元数
BOOL D3DXQuaternionIsIdentity    //判断单位四元数
FLOAT D3DXQuaternionLength    //返回四元数长度
FLOAT D3DXQuaternionLengthSq    //返回四元数长度平方
D3DXQUATERNION* WINAPI D3DXQuaternionLn   //计算自然对数
D3DXQUATERNION* WINAPI D3DXQuaternionMultiply //两个四元数相乘
D3DXQUATERNION* WINAPI D3DXQuaternionNormalize //单位长度的四元数
D3DXQUATERNION* WINAPI D3DXQuaternionRotationAxis//绕轴旋转四元数
D3DXQUATERNION* WINAPI D3DXQuaternionRotationMatrix//旋转矩阵创建四
元数
D3DXQUATERNION* WINAPI D3DXQuaternionRotationYawPitchRoll//绕XYZ旋转
创建的四元数
D3DXQUATERNION* WINAPI D3DXQuaternionSlerp //两个四元数球面插值
D3DXQUATERNION* WINAPI D3DXQuaternionSquad //球面四边形插四元数
void WINAPI D3DXQuaternionSquadSetup //创建球面四边形插值的控制点
void WINAPI D3DXQuaternionToAxisAngle//向量绕自身旋转角度计算四元数
FLOAT* WINAPI D3DXSHAdd    //球面调和函数向量相加
D3DXVECTOR2* D3DXVec2Add   //2D向量相加
D3DXVECTOR* WINAPI D3DXVec2BaryCentric //三个平面向量的重心
D3DXVECTOR2* WINAPI D3DXVec2CatmullRom //Catmull-Rom插值计算,2D
FLOAT D3DXVec2CCW    //2D向量叉乘的z分量
FLOAT D3DXVec2Dot    //2D向量点乘
D3DXVECTOR2* WINAPI D3DXVec2Hermite //Hermite样条插值
FLOAT D3DXVec2Length    //2D向量长度
FLOAT D3DXVec2LengthSq    //2D向量长度平方
D3DXVECTOR2* D3DXVec2Lerp   //2D向量长线性插值
D3DXVECTOR2* D3DXVec2Maximize   //由两个2D向量中最大分量组成
D3DXVECTOR2* D3DXVec2Minimize   //由两个2D向量中最小分量组成
D3DXVECTOR2* WINAPI D3DXVec2Normalize //规格化2D向量
D3DXVECTOR2* D3DXVec2Scale   //缩放2D向量
D3DXVECTOR2* D3DXSubtract   //2D向量相减
D3DXVECTOR2* WINAPI D3DXVec2Transform //矩阵来变换2D向量
D3DXVECTOR2* WINAPI D3DXVec2TransformArray //用矩阵变换数组

D3DXVECTOR2* WINAPI D3DXVec2TransformCoord //矩阵变换2D向量w=1
D3DXVECTOR2* WINAPI D3DXVec2TransformCoordArray //矩阵变换一组向量
(x,y,0,1)
D3DXVECTOR2* WINAPI D3DXVec2TransformNormal//矩阵变换2D向量一般成份
D3DXVECTOR2* WINAPI D3DXVec2TransformNormalArray//矩阵变换向量
(x,y,0,0)

D3DXVECTOR3* D3DXVec3Add   //3D向量相加
D3DXVECTOR3* WINAPI D3DXVec3BaryCentric //三个3D向量的重心坐标点
D3DXVECTOR3* WINAPI D3DXVec3CatmullRom //3D向量CatmullRom插值
D3DXVECTOR3* D3DXVec3Cross   //3D向量叉乘
FLOAT D3DXVec3Dot    //3D向量点乘
D3DXVECTOR3* WINAPI D3DXVec3Hermite //3D向量Hermite样条插值
FLOAT D3DXVec3Length    //3D向量长度
FLOAT D3DXVec3LengthSq    //3D向量长度平方
D3DXVECTOR3* D3DXVec3Maximize   //由两个3D向量中最大分量组成
D3DXVECTOR3* D3DXVec3Minimize   //由两个3D向量中最小分量组成
D3DXVECTOR3* D3DXVec3Lerp   //3D向量线性插值
D3DXVECTOR3* WINAPI D3DXVec3Normalize //3D向量规格化
D3DXVECTOR3* WINAPI D3DXVec3Project //对象向量从空间投影到屏幕
D3DXVECTOR3* D3DXVec3Scale   //缩放3D向量
D3DXVECTOR3* D3DXVec3Subtract   //3D向量相减
D3DXVECTOR4* WINAPI D3DXVec3Transform //矩阵把向量进行变换,w=1
D3DXVECTOR4* WINAPI D3DXVec3TransformArray//矩阵把向量数组进行变换
D3DXVECTOR3* WINAPI D3DXVec3TransformCoord//矩阵变换3D向量并置w为1的
投影结果
D3DXVECTOR3* WINAPI D3DXVec3TransformCoordArray//矩阵变换3D向量数组
并置w为1的投果
D3DXVECTOR3* WINAPI D3DXVec3TransformNormal//矩阵变换向量标准式,w=0
D3DXVECTOR3* WINAPI D3DXVec3TransformNormalArray//矩阵变换向量数组标
准式,w=0


D3DXVECTOR4* D3DXVec4Add    //两个4D向量相加
D3DXVECTOR3* WINAPI D3DXVec3Unproject   //向量从屏幕投影到对象
D3DXVECTOR3* WINAPI D3DXVec3UnprojectArray//向量数组从屏幕投影到对象
D3DXVECTOR4* WINAPI D3DXVec4CatmullRom   //4D向量CatmullRom插值
D3DXVECTOR4* WINAPI D3DXVec4BaryCentric   //4D向量组成三角形的重心
D3DXVECTOR4* WINAPI D3DXVec4Cross   //4D向量叉乘
D3DXVECTOR4* WINAPI D3DXVec4Dot    //4D向量点乘


https://dhexx.cn/news/show-2510085.html

相关文章

A级车,和B级车还有C级车有什么区别?

A级车,和B级车还有C级车有什么区别? 参考链接: https://baijiahao.baidu.com/s?id1601755571670048080&wfrspider&forpc https://m.icauto.com.cn/baike/64/645329.html 将汽车划分成A00、A0级、A级、B级、C级、D级是德国汽车界…

《Windows Server 2012 Hyper-V虚拟化管理实践》一1.3 物理服务器选型建议

本节书摘来异步社区《Windows Server 2012 Hyper-V虚拟化管理实践》一书中的第1章,第1.3节,作者: 王淑江 责编: 王峰松,更多章节内容可以访问云栖社区“异步社区”公众号查看。 1.3 物理服务器选型建议 Hyper-V主机是…

3D数学公式

众所周知,数学中向量、矩阵(变换)、齐次坐标以及四元数的概念和规则是3D游戏编程和计算机图形学的理论基础。下面介绍开发过程中经常用到的一些数学公式。 直线公式 P(t) (1-t)P1 tP2 其中,P1和P2表示3D空间的两点向量。t可以是任意实数。…

合资车、国产车 和 新能源汽车都有哪些品牌?

合资车有哪些品牌? 一、名词解释 顾名思义就是由中方与国外投资方共同成立的项目。中方出资的方式:出让土地厂房使用权、资金;国外投资方出品牌、技术、资金、人才等合资汽车就是上述情况合作情况下的产物。国外提供技术、人才、品牌等在国内组装,但核心技术还是由国外掌握。…

《编写高质量代码:改善c程序代码的125个建议》——建议2-1:char类型变量的值应该限制在signed char与unsigned char的交集范围内...

本节书摘来自华章计算机《编写高质量代码:改善c程序代码的125个建议》一书中的第1章,建议2-1,作者:马 伟 更多章节内容可以访问云栖社区“华章计算机”公众号查看。 建议2-1:char类型变量的值应该限制在signed char与unsigned ch…

理解C++ dynamic_cast

理解C dynamic_cast 在面向对象程序设计中,有时我们需要在运行时查询一个对象是否能作为某种多态类型使用。与Java的instanceof,以及C#的as、is运算符类似,C提供了dynamic_cast函数用于动态转型。相比C风格的强制类型转换和C reinterpret_cas…

高通芯片命名规则 kryo 485是个什么样的架构?

kryo 485是个什么样的架构? 参考链接: https://www.zhihu.com/question/333289453/answer/741239321 https://blog.csdn.net/weixin_44124323/article/details/110920987 高通芯片命名规则 骁龙后面的三个数字,例如 865,768 代…

《树莓派Python编程入门与实战(第2版)》——2.4 LXDE图形界面

本节书摘来自异步社区《树莓派Python编程入门与实战(第2版)》一书中的第2章,第2.4节,作者[美] Richard Blum Christine Bresnahan,陈晓明 马立新 译,更多章节内容可以访问云栖社区“异步社区”公众号查看。…

Linux下切换Python版本的几种方法

Linux下切换Python版本的几种方法 参考链接: 1、https://www.cnblogs.com/feynxd/p/11367806.html 2、https://blog.csdn.net/weixin_34355559/article/details/93215997 本篇博文面向Linux用户,在Ubuntu下测试通过 0 为什么需要有两个版本的Python…

软件开发、硬件开发、IPD产品开发 及 工程开发各阶段划分

软件开发、硬件开发、IPD产品开发 及 工程开发各阶段划分 参考链接:https://zhuanlan.zhihu.com/p/427246890 1、软件开发阶段划分: Alpha、Beta、RC、GA/MR1 2、华为硬件开发阶段划分: V1、V2 、V3 、V4 、VN1、VN2 其他硬件开发阶段划分1: ES、 CS、 PP、M…