我有问题,我不知道为什么。我需要添加float3值。
float3 a3 = cross(v1v2,intersection.pIntersect);
a3.normalize();
float3 lambda1 = a3 / (a1+a2+a3);
错误:'a3 / math :: operator +中的'operator /'不匹配((*& math :: operator +(((const math :: vector )(& a3)))'
因此无法操作float3值。我有没有错误的lambda类型?或者我错过了一个操作吗?或者是normilize()方法改变了典型?
thx任何帮助:)
答案 0 :(得分:1)
我认为您的问题不是运营商+ ,而是运营商/
我现在无法检查代码,但似乎你不能分割两个向量。
编辑1
似乎编译器正在将float3转换为operator +的math :: vector。转换后,它找不到运算符/(float3,math :: vector)。
虽然似乎this header is missing for newer SDKs,但可能不包括“cutil_math.h”。