[OpenGL]GLM常用函数解释说明
keywords: OpenGL GLM常用函数解释说明
GLM默认使用右手坐标系,如果要改成默认左手坐标系,使用:
GLM_FORCE_LEFT_HANDED
<glm/trigonometric.hpp>
GLM_FUNC_DECL GLM_CONSTEXPR vec< L, T, Q > radians (vec< L, T, Q > const °rees)
将角度转化为弧度。
<glm/gtx/transform.hpp>
GLM_FUNC_DECL mat< 4, 4, T, Q > rotate (T angle, vec< 3, T, Q > const &v)
使用一个用弧度(radians)表示的角度(degrees),以及一个用3个标量(scalar)表示的坐标(axis),来构建一个4X4的旋转矩阵(rotate matrix)。
<glm/gtc/matrix_transform.hpp>
GLM_FUNC_DECL mat<4, 4, T, Q> lookAt (vec<3, T, Q> const &eye, vec<3, T, Q> const ¢er, vec<3, T, Q> const &up)
基于默认的偏手坐标系来构建一个给定视图矩阵(view matrix)的视角(look)
GLM_FUNC_DECL mat<4, 4, T, defaultp> perspective (T fovy, T aspect, T near, T far)
为一个对称透视图截锥(symmetric perspective-view frustum)创建矩阵,基于默认的偏手坐标系和默认的近剪裁面距离、远剪裁面距离
参数说明:
- fovy 相机视角宽度
- aspect 长宽比率
- near 近面裁剪距离
- far 远面裁剪距离
如果要修改默认的近/远剪裁面,使用:
GLM_FORCE_DEPTH_ZERO_TO_ONE
参考
GLM Manual
https://github.com/g-truc/glm/blob/master/manual.md
GLM API documenation
https://glm.g-truc.net/0.9.9/api/modules.html
强迫经常使热恋的人更加铁心,而从来不能叫他们回心转意。---德国·席勒《阴谋与爱情》