資源簡介
GLM是OpenGL Mathematics的縮寫,它是一個只有頭文件的庫。

代碼片段和文件信息
///?@ref?core
///?@file?glm/core/dummy.cpp
///
///?GLM?is?a?header?only?library.?There?is?nothing?to?compile.?
///?dummy.cpp?exist?only?a?wordaround?for?CMake?file.
/*
#define?GLM_MESSAGES
#include?
#include?
#include?
struct?material
{
glm::vec4?emission;?//?Ecm
glm::vec4?ambient;?//?Acm
glm::vec4?diffuse;?//?Dcm
glm::vec4?specular;?//?Scm
float?shininess;?//?Srm
};
struct?light
{
glm::vec4?ambient;?//?Acli
glm::vec4?diffuse;?//?Dcli
glm::vec4?specular;?//?Scli
glm::vec4?position;?//?Ppli
glm::vec4?halfVector;?//?Derived:?Hi
glm::vec3?spotDirection;?//?Sdli
float?spotExponent;?//?Srli
float?spotCutoff;?//?Crli
//?(range:?[0.090.0]?180.0)
float?spotCosCutoff;?//?Derived:?cos(Crli)
//?(range:?[1.00.0]-1.0)
float?constantAttenuation;?//?K0
float?linearAttenuation;?//?K1
float?quadraticAttenuation;//?K2
};
//?Sample?1
#include?//?glm::vec3
#include?//?glm::cross?glm::normalize
glm::vec3?computeNormal
(
glm::vec3?const?&?a
glm::vec3?const?&?b
glm::vec3?const?&?c
)
{
return?glm::normalize(glm::cross(c?-?a?b?-?a));
}
typedef?unsigned?int?GLuint;
#define?GL_FALSE?0
void?glUniformMatrix4fv(GLuint?int?int?float*){}
//?Sample?2
#include??//?glm::vec3
#include??//?glm::vec4?glm::ivec4
#include??//?glm::mat4
#include??//?glm::translate?glm::rotate?glm::scale?glm::perspective
#include??//?glm::value_ptr
void?func(GLuint?LocationMVP?float?Translate?glm::vec2?const?&?Rotate)
{
glm::mat4?Projection?=?glm::perspective(45.0f?4.0f?/?3.0f?0.1f?100.f);
glm::mat4?ViewTranslate?=?glm::translate(glm::mat4(1.0f)?glm::vec3(0.0f?0.0f?-Translate));
glm::mat4?ViewRotateX?=?glm::rotate(ViewTranslate?Rotate.y?glm::vec3(-1.0f?0.0f?0.0f));
glm::mat4?View?=?glm::rotate(ViewRotateX?Rotate.x?glm::vec3(0.0f?1.0f?0.0f));
glm::mat4?Model?=?glm::scale(glm::mat4(1.0f)?glm::vec3(0.5f));
glm::mat4?MVP?=?Projection?*?View?*?Model;
glUniformMatrix4fv(LocationMVP?1?GL_FALSE?glm::value_ptr(MVP));
}
//?Sample?3
#include?//?glm::vec2
#include?//?glm::packUnorm2x16
#include?//?glm::uint
#include?//?glm::i8vec2?glm::i32vec2
std::size_t?const?VertexCount?=?4;
//?Float?quad?geometry
std::size_t?const?PositionSizeF32?=?VertexCount?*?sizeof(glm::vec2);
glm::vec2?const?PositionDataF32[VertexCount]?=
{
glm::vec2(-1.0f-1.0f)
glm::vec2(?1.0f-1.0f)
glm::vec2(?1.0f?1.0f)
glm::vec2(-1.0f?1.0f)
};
//?Half-float?quad?geometry
std::size_t?const?PositionSizeF16?=?VertexCount?*?sizeof(glm::uint);
glm::uint?const?PositionDataF16[VertexCount]?=
{
glm::uint(glm::packUnorm2x16(glm::vec2(-1.0f?-1.0f)))
glm::uint(glm::packUnorm2x16(glm::vec2(?1.0f?-1.0f)))
glm::uint(glm::packUnorm2x16(glm::vec2(?1.0f?1.0f)))
glm::uint(glm::packUnorm2x16(glm::vec2(-1.0f?1.0f)))
};
//?8?bits?signed?integer
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2017-08-16?12:15??glm-0.9.8.5\
?????文件?????????992??2017-08-16?12:15??glm-0.9.8.5\.appveyor.yml
?????文件?????????512??2017-08-16?12:15??glm-0.9.8.5\.gitignore
?????文件????????3125??2017-08-16?12:15??glm-0.9.8.5\.travis.yml
?????文件????????7308??2017-08-16?12:15??glm-0.9.8.5\CMakeLists.txt
?????目錄???????????0??2017-08-16?12:15??glm-0.9.8.5\cmake\
?????文件???????10786??2017-08-16?12:15??glm-0.9.8.5\cmake\CMakePackageConfigHelpers.cmake
?????文件????????7397??2017-08-16?12:15??glm-0.9.8.5\cmake\GNUInstallDirs.cmake
?????文件?????????149??2017-08-16?12:15??glm-0.9.8.5\cmake\glm.pc.in
?????文件?????????193??2017-08-16?12:15??glm-0.9.8.5\cmake\glmBuildConfig.cmake.in
?????文件?????????228??2017-08-16?12:15??glm-0.9.8.5\cmake\glmConfig.cmake.in
?????文件????????2928??2017-08-16?12:15??glm-0.9.8.5\copying.txt
?????目錄???????????0??2017-08-16?12:15??glm-0.9.8.5\doc\
?????目錄???????????0??2017-08-16?12:15??glm-0.9.8.5\doc\api\
?????文件????????2915??2017-08-16?12:15??glm-0.9.8.5\doc\api\a00001.html
?????文件???????57838??2017-08-16?12:15??glm-0.9.8.5\doc\api\a00001_source.html
?????文件????????2906??2017-08-16?12:15??glm-0.9.8.5\doc\api\a00002.html
?????文件????????5329??2017-08-16?12:15??glm-0.9.8.5\doc\api\a00002_source.html
?????文件????????2906??2017-08-16?12:15??glm-0.9.8.5\doc\api\a00003.html
?????文件???????18416??2017-08-16?12:15??glm-0.9.8.5\doc\api\a00003_source.html
?????文件????????2912??2017-08-16?12:15??glm-0.9.8.5\doc\api\a00004.html
?????文件??????157179??2017-08-16?12:15??glm-0.9.8.5\doc\api\a00004_source.html
?????文件????????2927??2017-08-16?12:15??glm-0.9.8.5\doc\api\a00005.html
?????文件??????152832??2017-08-16?12:15??glm-0.9.8.5\doc\api\a00005_source.html
?????文件????????2918??2017-08-16?12:15??glm-0.9.8.5\doc\api\a00006.html
?????文件???????22772??2017-08-16?12:15??glm-0.9.8.5\doc\api\a00006_source.html
?????文件???????19445??2017-08-16?12:15??glm-0.9.8.5\doc\api\a00007.html
?????文件???????30426??2017-08-16?12:15??glm-0.9.8.5\doc\api\a00007_source.html
?????文件????????8875??2017-08-16?12:15??glm-0.9.8.5\doc\api\a00008.html
?????文件???????12332??2017-08-16?12:15??glm-0.9.8.5\doc\api\a00008_source.html
?????文件???????16359??2017-08-16?12:15??glm-0.9.8.5\doc\api\a00009.html
............此處省略850個文件信息
評論
共有 條評論