如何在c ++/opengl中使用glm常量

Jul*_*ian 7 c++ opengl glm-math

我只用OpenGL编程并使用GLM(OpenGL数学).我发现GLM中有一个名为"GLM_GTC_constants"的扩展,它应该提供一个内置常量列表.这是函数头的外观constants.hpp:

/// Return the pi constant.
/// @see gtc_constants
template <typename genType>
GLM_FUNC_DECL GLM_CONSTEXPR genType pi();
Run Code Online (Sandbox Code Playgroud)

函数本身看起来像this(constants.inl):

template <typename genType>
GLM_FUNC_QUALIFIER GLM_CONSTEXPR genType pi()
{
    return genType(3.14159265358979323846264338327950288);
}
Run Code Online (Sandbox Code Playgroud)

现在我想知道如何使用这个功能.


glm::pi();
Run Code Online (Sandbox Code Playgroud)

使用上述功能不起作用.

float PI = glm::pi();
Run Code Online (Sandbox Code Playgroud)

例如,上面的代码给了我这个错误:

error: no matching function for call to ‘pi()’
Run Code Online (Sandbox Code Playgroud)

我搜索了文档但没有在任何地方找到这些常量的用法示例.

Sta*_*ght 23

应使用此模板化函数明确指定类型.

glm::pi<float>() 应该做的伎俩