gpt4 book ai didi

c++ - DirectX 数学函数混淆

转载 作者:搜寻专家 更新时间:2023-10-31 01:16:55 24 4
gpt4 key购买 nike

当我查看一些较旧的 DirectX 代码时,我发现了函数 D3DXVec3Transform 和 D3DXVec3TransformCoord。在查看它们的描述时,它们看起来很相似,但我看不出两者之间有什么区别。有人可以解释一下 D3DXVec3Transform 和 D3DXVec3TransformCoord 之间的区别,以及它们背后的数学原理吗?

最佳答案

当您通过矩阵转换 3D vector 时,它会产生一个 4D vector ,其中 w!=1

3D vector 可以描述为 4D vector ,其中 w=1。

D3DXVec3Transform 返回 w!=1 的 4D vector 。D3DXVec3TransformCoord 获取 4D vector 并将其投影到 w=1 上以使其成为 3D vector 。

编辑:如果对如何进行转换感兴趣,这是我在谷歌上找到的论文: http://www.heldermann-verlag.de/jgg/jgg01_05/jgg0404.pdf

关于c++ - DirectX 数学函数混淆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8650570/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com