DirectX Math函数混乱
DirectX Math function confusion
当我在浏览一些旧的DirectX代码时,我看到了D3DXVec3Transform和D3DXVec3TransformCoord函数。在查找它们的描述时,它们看起来相当相似,但我看不出两者之间有什么区别。有人能解释一下D3DXVec3Transform和D3DXVec3TransformCoord之间的区别是什么,以及它们背后的数学原理吗?
当你用矩阵变换一个3D向量时,它会得到一个4D向量,其中w!
= 1三维矢量可以描述为4D矢量,其中w=1。
D3DXVec3Transform返回w!=1的4D向量。D3DXVec3TransformCoord获得4D矢量,并将其投影到w=1上,使其成为3D矢量。
编辑:这是我在谷歌上发现的论文,如果对如何进行转换感兴趣:http://www.heldermann-verlag.de/jgg/jgg01_05/jgg0404.pdf
相关文章:
- "error: no matching function for call to"构造函数错误
- 什么时候调用组成单元对象的析构函数
- 继承函数的重载解析
- 为什么随机数生成器不在void函数中随机化数字,而在main函数中随机化
- C++模板来检查友元函数的存在
- 递归函数计算序列中的平方和(并输出过程)
- 对RValue对象调用的LValue ref限定成员函数
- C++17复制构造函数,在std::unordereded_map上进行深度复制
- 使用具有默认参数的函数模板进行 decltype 会使结果混乱(一个有趣的问题或 gcc 的错误)
- 关于C 构造函数中例外的混乱
- 构造函数超载产生混乱
- 数组在函数混乱C++
- log_trace函数混乱
- 构造函数初始化混乱
- DirectX Math函数混乱
- 类函数语法混乱
- 在Itanium c++ ABI中,为什么模板函数的混乱名称不能解析依赖类型?
- 虚函数, ->运算符, 继承如此混乱
- visual studio-C++函数调用顺序(boost)-混乱
- 我想创建一个函数,我可以在其中输入一个字符串,它会输出一个混乱的字符串版本