glm 1.0.1

dotnet add package glm --version 1.0.1
NuGet\Install-Package glm -Version 1.0.1
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="glm" Version="1.0.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add glm --version 1.0.1
#r "nuget: glm, 1.0.1"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install glm as a Cake Addin
#addin nuget:?package=glm&version=1.0.1

// Install glm as a Cake Tool
#tool nuget:?package=glm&version=1.0.1


OpenGL Mathematics (GLM) is a header only C++ mathematics library for graphics software based on the OpenGL Shading Language (GLSL) specifications.

GLM provides classes and functions designed and implemented with the same naming conventions and functionalities than GLSL so that anyone who knows GLSL, can use GLM as well in C++.

This project isn't limited to GLSL features. An extension system, based on the GLSL extension conventions, provides extended capabilities: matrix transformations, quaternions, data packing, random numbers, noise, etc...

Project Website:


GLM is written in C++98 but can take advantage of C++11 when supported by the compiler. It is a platform independent library with no dependence and it officially supports the following compilers:

#include <glm/vec3.hpp> // glm::vec3
#include <glm/vec4.hpp> // glm::vec4
#include <glm/mat4x4.hpp> // glm::mat4
#include <glm/ext/matrix_transform.hpp> // glm::translate, glm::rotate, glm::scale
#include <glm/ext/matrix_clip_space.hpp> // glm::perspective
#include <glm/ext/scalar_constants.hpp> // glm::pi

glm::mat4 camera(float Translate, glm::vec2 const& Rotate)
	glm::mat4 Projection = glm::perspective(glm::pi<float>() * 0.25f, 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;

For more information about GLM, please have a look at the manual and the API reference documentation.


The source code and the documentation are licensed under either the Happy Bunny License (Modified MIT) or the MIT License.

Product Compatible and additional computed target framework versions.
native native is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

NuGet packages (3)

Showing the top 3 NuGet packages that depend on glm:

Package Downloads

please report any issues to the github repo disclaimer: this library uses glew to load opengl functions if you are using a loader like glad make sure to initialize glew or switch to it


please report any issues to the github repo, put shaders in "shaders/{shader name}/{type of shader}.shader


MINX is a C++ Game Development Framework that is designed to bring the simplicity that XNA once add for creating C# games to other languages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.1 894 2/29/2024
1.0.1-prerelease 157 2/27/2024
1.0.0 634 1/25/2024 31,932 4/17/2020 3,984 1/5/2020 3,825 9/14/2019 30,581 4/5/2019 2,413 3/19/2019 3,755 11/18/2018 2,379 10/20/2018 869 10/20/2018
0.9.9 3,091 7/11/2018 6,476 3/13/2018 5,062 6/20/2017