OpenGL Mathematics

GLM ( Open GL M athematics ) é uma biblioteca de utilitários OpenGL gratuita que fornece ao programador C ++ um conjunto completo de classes e funções para manipular dados para OpenGL .

Uma especificidade do GLM , em comparação com outras bibliotecas matemáticas, reside no fato de sua implementação ser baseada nas especificações do GLSL ( Open GL S hading L anguage ) de forma muito restrita, oferecendo assim uma facilidade de uso semelhante sem a necessidade de aprender um novo API.

O código-fonte está disponível no MIT .

Exemplo

#include <glm/glm.h> using namespace glm; enum { PLANE_LEFT, PLANE_RIGHT, PLANE_BOTTOM, PLANE_TOP, PLANE_NEAR, PLANE_FAR, PLANE_MAX }; vec4 planes[PLANE_MAX]; void createFrustumPlanes(const mat4& Model, const mat4& View, const mat4& Projection) { mat4 mvp = transpose(Projection * View * Model); planes[PLANE_LEFT] = normalize(mvp[3] + mvp[0]); planes[PLANE_RIGHT] = normalize(mvp[3] - mvp[0]); planes[PLANE_BOTTOM] = normalize(mvp[3] + mvp[1]); planes[PLANE_TOP] = normalize(mvp[3] - mvp[1]); planes[PLANE_NEAR] = normalize(mvp[3] + mvp[2]); planes[PLANE_FAR] = normalize(mvp[3] - mvp[2]); }

Link externo