OpenGL Mathematics

GLM ( Open GL M athematics ) este o bibliotecă gratuită de utilități OpenGL care oferă programatorului C ++ un set întreg de clase și funcții pentru manipularea datelor pentru OpenGL .

O specificitate a GLM , în comparație cu alte biblioteci matematice, constă în faptul că implementarea sa se bazează pe specificațiile GLSL ( Open GL S hading L anguage ) într-un mod foarte strict, oferind astfel o ușurință similară de utilizare fără a necesita învățarea unui nou API.

Codul sursă este disponibil sub MIT .

Exemplu

#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 extern