Ero sivun ”GLM” versioiden välillä

Linux.fista
Siirry navigaatioon Siirry hakuun
p (malline)
p (<syntaxhighlight>)
 
(6 välissä olevaa versiota 3 käyttäjän tekeminä ei näytetä)
Rivi 1: Rivi 1:
{{Perustietoa|en:GLM}}
{{Perustietoa|en:GLM}}
{{Ohjelma
{{Kirjasto
| nimi=GLM
| nimi           = GLM
| kuva=
| kuva           =  
| kuvateksti=  
| kuvateksti     =  
| käyttöliittymä=[[kirjasto]]
| tekijä        =
| lisenssi=
| kehittäjä      =
| kotisivu=[http://glm.g-truc.net/0.9.7/index.html http://glm.g-truc.net/0.9.7/index.html]  
| ensijulkaisu  =
| vakaaversio    =
| vakaapvm      =
| kehitysversio  =
| kehityspvm    =
| ohjelmoitu    = [[C++]]
| kirjasto      = Matematiikkakirjasto
| lisenssi       = [[MIT]]
| kotisivu       = [https://github.com/g-truc/glm github.com/g-truc/glm]  
| lähdekoodi    =
}}
}}
'''GLM''' (OpenGL Mathematics) on vain otsikot sisältävä (header only) [[C++]]-matematiikkakirjasto. Se on tarkoitettu helpottamaan OpenGL Shading Language ([[GLSL]]-ohjelmointia.


'''GLM''' (OpenGL Mathematics) on vain otsikot sisältävä (header only) [[C++]] matematiikka kirjasto. Se on tarkoitettu helpottamaan OpenGL Shading Language (GLSL)-ohjelmointia.
Käyttöesimerkki:
 
<syntaxhighlight lang="C++">
Käyttö esimerkki:
<source lang="C++">
#include <glm/vec3.hpp> // glm::vec3
#include <glm/vec3.hpp> // glm::vec3
#include <glm/vec4.hpp> // glm::vec4
#include <glm/vec4.hpp> // glm::vec4
Rivi 27: Rivi 35:
     return Projection * View * Model;
     return Projection * View * Model;
     }  
     }  
</syntaxhighlight>


</source>
==Asennus==
{{Asenna|GLM|libglm-dev}}


{{OpenGL}}
{{OpenGL}}
[[Luokka: OpenGL]]
[[Luokka: OpenGL]]
[[Luokka: Kirjastot]]

Nykyinen versio 18. helmikuuta 2022 kello 09.42

Linux.fi-wikissä artikkelit käsittelevät yleensä aihettaan siltä osin, kuin se koskee Linuxia ja avoimia/vapaita ohjelmistoja. Yleisluontoisemman artikkelin tästä aiheesta löydät tietosanakirja Wikipediasta.
GLM
Ohjelmoitu C++
Kirjasto Matematiikkakirjasto
Lisenssi MIT
Kotisivu github.com/g-truc/glm

GLM (OpenGL Mathematics) on vain otsikot sisältävä (header only) C++-matematiikkakirjasto. Se on tarkoitettu helpottamaan OpenGL Shading Language (GLSL-ohjelmointia.

Käyttöesimerkki:

#include <glm/vec3.hpp> // glm::vec3
#include <glm/vec4.hpp> // glm::vec4
#include <glm/mat4x4.hpp> // glm::mat4
#include <glm/gtc/matrix_transform.hpp> // glm::translate, glm::rotate, glm::scale, glm::perspective

glm::mat4 camera(float Translate, glm::vec2 const & Rotate)
    {
    glm::mat4 Projection = glm::perspective(glm::radians(45.0f), 4.0f / 3.0f, 0.1f, 100.f);
    glm::mat4 View = glm::translate(glm::mat4(1.0f), glm::vec3(0.0f, 0.0f, -Translate));
    View = glm::rotate(View, Rotate.y, glm::vec3(-1.0f, 0.0f, 0.0f));
    View = glm::rotate(View, Rotate.x, glm::vec3(0.0f, 1.0f, 0.0f));
    glm::mat4 Model = glm::scale(glm::mat4(1.0f), glm::vec3(0.5f));
    return Projection * View * Model;
    }

Asennus[muokkaa]

GLM löytyy useimpien jakeluiden paketinhallinnasta nimellä libglm-dev. Lisätietoja ohjelmien asentamisesta löytyy artikkelista Ohjelmien asentaminen.

v  k  m
OpenGL-kirjastoja
OpenGL | FreeGLUT | GLFW | GLEW | GLM | GLU
OpenGL varjostinohjelmakielet
GLSL
Muita kirjastoja
Assimp | SDL | Vulkan