glm::vec2不允许操作

glm::vec2 Not Allowing Operations

在使用 GLM 时,我已经能够对向量和矩阵(+、-、*、/)进行运算。由于某些原因,在以下代码行中,它不会让我进行任何操作:

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

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

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

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

我觉得为什么这不起作用很烦人也很奇怪。错误是说我的语法不正确,当它要求的是我输入的内容时!如果您发现问题,请 post 回答以下问题。感谢您的帮助!

试试这个:

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

vec2 实际上是一个 typedefhighp_vec2 这是一个 typedeftvec2<float, highp> (cf. glm/detail/type_vec.hpp)