如何做组件明智的乘法两个3d向量?似乎微软没有在DirectXMath.h中提供这样的功能,微软在那里做什么?在旧的sdk (DX 10/9)中,我可以直接将两个向量积为:
v3 = v1 * v2;
或将向量与标量相乘,如
v2 = v1 * 1.0f;
但是现在,XMVECTOR类型没有操作符*,所以我不能这样做。所以我需要手动将product设置为
v3 = (v1。X * v2。X + v1。Y * v2。Y + v1。
虽然没有那么难,但我认为DirectXMath应该提供这样一个基本的功能。
点积可以用XMVector*Dot
方法实现。dot3product的MSDN链接。
好的页面存在于msdn上,方法列表:msdn
而且,我认为微软没有让operator*重写,因为它不清楚这个操作符应该使用哪个产品-点或交叉产品。