0

我有一个问题,我不知道为什么。我需要添加 float3 值。

float3 a3 = cross(v1v2,intersection.pIntersect);
a3.normalize();
float3 lambda1 = a3 / (a1+a2+a3);

错误:'a3 / math::operator+((* & math::operator+(( (const math::vector )(& a3)))' 中的'operator/'不匹配'</p>

所以不可能 + 操作 float3 值。我的 lambda 类型是否错误?还是我错过了之前的手术?还是 normilize() 方法改变了 typ ?

谢谢任何帮助:)

4

1 回答 1

1

我认为您的问题不在于operator+而在于operator/

我现在无法检查代码,但您似乎无法划分两个向量。

编辑 1

似乎编译器正在将 float3 转换为 operator+ 的 math::vector。转换后,它找不到运算符/(float3, math::vector)。

也许“cutil_math.h”不包括在内,尽管似乎较新的 SDK 缺少此标头

于 2013-05-03T22:05:41.050 回答