glm :: vec2不允许操作

时间:2015-10-12 22:48:16

标签: c++ compiler-errors glm-math

在使用GLM时,我能够对向量和矩阵(+, - ,*,/)使用操作。出于某种原因,在以下代码行中,它不允许我进行任何操作:

glm::vec2 fixedPos = position + dimensions/2;  // <- Error is on the '/'

(“position”和“dimensions”都是“const glm :: vec2”类型)

错误: 没有运算符“/”匹配这些操作数;操作数类型是:const glm :: vec2 / int

(用任何其他数学运算符替换“/”将导致相同的错误)

我发现为什么这不起作用令人讨厌和奇怪。错误是说我的语法不正确,当它要求的是我放的!如果您发现问题,请在下面发布答案。谢谢你的帮助!

1 个答案:

答案 0 :(得分:1)

试试这个:

glm::vec2 fixedPos = position + dimensions / 2.0f;

vec2实际上是typedefhighp_vec2typedeftvec2<float, highp>(参见glm/detail/type_vec.hpp