mirror of
https://github.com/JoeyDeVries/LearnOpenGL.git
synced 2026-01-10 02:23:23 +08:00
Update GLM to latest version (0.9.9.3). This includes GLM's change of matrices no longer default initializing to the identity matrix. This commit thus also includes the update of all of LearnOpenGL's code to reflect this: all matrices are now constructor-initialized to the identity matrix where relevant.
This commit is contained in:
74
includes/glm/ext/scalar_ulp.hpp
Normal file
74
includes/glm/ext/scalar_ulp.hpp
Normal file
@@ -0,0 +1,74 @@
|
||||
/// @ref ext_scalar_ulp
|
||||
/// @file glm/ext/scalar_ulp.hpp
|
||||
///
|
||||
/// @defgroup ext_scalar_ulp GLM_EXT_scalar_ulp
|
||||
/// @ingroup ext
|
||||
///
|
||||
/// Allow the measurement of the accuracy of a function against a reference
|
||||
/// implementation. This extension works on floating-point data and provide results
|
||||
/// in ULP.
|
||||
///
|
||||
/// Include <glm/ext/scalar_ulp.hpp> to use the features of this extension.
|
||||
///
|
||||
/// @see ext_vector_ulp
|
||||
/// @see ext_scalar_relational
|
||||
|
||||
#pragma once
|
||||
|
||||
// Dependencies
|
||||
#include "../ext/scalar_int_sized.hpp"
|
||||
#include "../common.hpp"
|
||||
#include "../detail/qualifier.hpp"
|
||||
|
||||
#if GLM_MESSAGES == GLM_ENABLE && !defined(GLM_EXT_INCLUDED)
|
||||
# pragma message("GLM: GLM_EXT_scalar_ulp extension included")
|
||||
#endif
|
||||
|
||||
namespace glm
|
||||
{
|
||||
/// Return the next ULP value(s) after the input value(s).
|
||||
///
|
||||
/// @tparam genType A floating-point scalar type.
|
||||
///
|
||||
/// @see ext_scalar_ulp
|
||||
template<typename genType>
|
||||
GLM_FUNC_DECL genType next_float(genType x);
|
||||
|
||||
/// Return the previous ULP value(s) before the input value(s).
|
||||
///
|
||||
/// @tparam genType A floating-point scalar type.
|
||||
///
|
||||
/// @see ext_scalar_ulp
|
||||
template<typename genType>
|
||||
GLM_FUNC_DECL genType prev_float(genType x);
|
||||
|
||||
/// Return the value(s) ULP distance after the input value(s).
|
||||
///
|
||||
/// @tparam genType A floating-point scalar type.
|
||||
///
|
||||
/// @see ext_scalar_ulp
|
||||
template<typename genType>
|
||||
GLM_FUNC_DECL genType next_float(genType x, int ULPs);
|
||||
|
||||
/// Return the value(s) ULP distance before the input value(s).
|
||||
///
|
||||
/// @tparam genType A floating-point scalar type.
|
||||
///
|
||||
/// @see ext_scalar_ulp
|
||||
template<typename genType>
|
||||
GLM_FUNC_DECL genType prev_float(genType x, int ULPs);
|
||||
|
||||
/// Return the distance in the number of ULP between 2 single-precision floating-point scalars.
|
||||
///
|
||||
/// @see ext_scalar_ulp
|
||||
GLM_FUNC_DECL int float_distance(float x, float y);
|
||||
|
||||
/// Return the distance in the number of ULP between 2 double-precision floating-point scalars.
|
||||
///
|
||||
/// @see ext_scalar_ulp
|
||||
GLM_FUNC_DECL int64 float_distance(double x, double y);
|
||||
|
||||
/// @}
|
||||
}//namespace glm
|
||||
|
||||
#include "scalar_ulp.inl"
|
||||
Reference in New Issue
Block a user