如何在 c++/opengl 中使用 glm 常量
Howto use glm constants in c++/opengl
我只使用 OpenGL 编程并使用 GLM (OpenGL Mathematics)。我发现在 GLM 中有一个名为 "GLM_GTC_constants" 的扩展,它应该提供一个内置常量列表。这是函数头在 constants.hpp
:
中的样子
/// Return the pi constant.
/// @see gtc_constants
template <typename genType>
GLM_FUNC_DECL GLM_CONSTEXPR genType pi();
函数本身看起来像这样 (constants.inl
):
template <typename genType>
GLM_FUNC_QUALIFIER GLM_CONSTEXPR genType pi()
{
return genType(3.14159265358979323846264338327950288);
}
现在我想知道如何使用这个功能。
glm::pi();
使用上面的函数不起作用。
float PI = glm::pi();
例如,上面的代码给我这个错误:
error: no matching function for call to ‘pi()’
我搜索了文档,但没有在任何地方找到这些常量的用法示例。
使用此模板函数时应明确指定类型,因为没有参数推导。
glm::pi<float>()
应该可以解决问题
我只使用 OpenGL 编程并使用 GLM (OpenGL Mathematics)。我发现在 GLM 中有一个名为 "GLM_GTC_constants" 的扩展,它应该提供一个内置常量列表。这是函数头在 constants.hpp
:
/// Return the pi constant.
/// @see gtc_constants
template <typename genType>
GLM_FUNC_DECL GLM_CONSTEXPR genType pi();
函数本身看起来像这样 (constants.inl
):
template <typename genType>
GLM_FUNC_QUALIFIER GLM_CONSTEXPR genType pi()
{
return genType(3.14159265358979323846264338327950288);
}
现在我想知道如何使用这个功能。
glm::pi();
使用上面的函数不起作用。
float PI = glm::pi();
例如,上面的代码给我这个错误:
error: no matching function for call to ‘pi()’
我搜索了文档,但没有在任何地方找到这些常量的用法示例。
使用此模板函数时应明确指定类型,因为没有参数推导。
glm::pi<float>()
应该可以解决问题