Windows应用程序编程中的3d向量的分量乘法

时间:2013-03-24 13:42:43

标签: windows-8 directx windows-store-apps directx-11 directxmath

如何进行两个3d矢量的分量乘法?似乎MS没有在DirectXMath.h中提供这样的功能,微软在那里做什么?在旧的SDK(DX 10/9)中,我可以将两个向量的乘积直接表示为:

v3 = v1 * v2;

或将矢量乘以标量,如:

v2 = v1 * 1.0f;

但是现在,XMVECTOR类型没有运算符*,所以我不能这样做。所以我需要手动制作产品

v3 =(v1.x * v2.x + v1.y * v2.y + v1.z * v2.z);

虽然不是那么困难,但我认为DirectXMath应该提供这样一个基本功能。

1 个答案:

答案 0 :(得分:2)

可以使用XMVector*Dot方法实现点积。 MSDN link for dot3product

好的页面存在于msdn上,方法列表为:MSDN

此外,我认为微软没有制作运营商*覆盖,因为不清楚该运营商应该使用哪种产品 - 点或交叉产品。