mirror of
https://github.com/g-truc/glm.git
synced 2024-11-30 03:44:38 +00:00
More CUDA coverage, deprecated GTX_1010102 extension
This commit is contained in:
parent
086706caa5
commit
02c3ce21e8
@ -41,7 +41,6 @@
|
|||||||
|
|
||||||
// Dependency:
|
// Dependency:
|
||||||
#include "../glm.hpp"
|
#include "../glm.hpp"
|
||||||
#include "../gtc/half_float.hpp"
|
|
||||||
#include "../gtc/quaternion.hpp"
|
#include "../gtc/quaternion.hpp"
|
||||||
|
|
||||||
#if(defined(GLM_MESSAGES) && !defined(glm_ext))
|
#if(defined(GLM_MESSAGES) && !defined(glm_ext))
|
||||||
@ -119,22 +118,6 @@ namespace glm
|
|||||||
typedef detail::tmat4x3<int, highp> int4x3; //!< \brief integer matrix with 4 x 3 components. (From GLM_GTX_compatibility extension)
|
typedef detail::tmat4x3<int, highp> int4x3; //!< \brief integer matrix with 4 x 3 components. (From GLM_GTX_compatibility extension)
|
||||||
typedef detail::tmat4x4<int, highp> int4x4; //!< \brief integer matrix with 4 x 4 components. (From GLM_GTX_compatibility extension)
|
typedef detail::tmat4x4<int, highp> int4x4; //!< \brief integer matrix with 4 x 4 components. (From GLM_GTX_compatibility extension)
|
||||||
|
|
||||||
typedef detail::half half1; //!< \brief half-precision floating-point vector with 1 component. (From GLM_GTX_compatibility extension)
|
|
||||||
typedef detail::tvec2<detail::half, highp> half2; //!< \brief half-precision floating-point vector with 2 components. (From GLM_GTX_compatibility extension)
|
|
||||||
typedef detail::tvec3<detail::half, highp> half3; //!< \brief half-precision floating-point vector with 2 components. (From GLM_GTX_compatibility extension)
|
|
||||||
typedef detail::tvec4<detail::half, highp> half4; //!< \brief half-precision floating-point vector with 2 components. (From GLM_GTX_compatibility extension)
|
|
||||||
|
|
||||||
typedef detail::half half1x1; //!< \brief half-precision floating-point matrix with 1 component. (From GLM_GTX_compatibility extension)
|
|
||||||
typedef detail::tmat2x2<detail::half, highp> half2x2; //!< \brief half-precision floating-point matrix with 2 x 2 components. (From GLM_GTX_compatibility extension)
|
|
||||||
typedef detail::tmat2x3<detail::half, highp> half2x3; //!< \brief half-precision floating-point matrix with 2 x 3 components. (From GLM_GTX_compatibility extension)
|
|
||||||
typedef detail::tmat2x4<detail::half, highp> half2x4; //!< \brief half-precision floating-point matrix with 2 x 4 components. (From GLM_GTX_compatibility extension)
|
|
||||||
typedef detail::tmat3x2<detail::half, highp> half3x2; //!< \brief half-precision floating-point matrix with 3 x 2 components. (From GLM_GTX_compatibility extension)
|
|
||||||
typedef detail::tmat3x3<detail::half, highp> half3x3; //!< \brief half-precision floating-point matrix with 3 x 3 components. (From GLM_GTX_compatibility extension)
|
|
||||||
typedef detail::tmat3x4<detail::half, highp> half3x4; //!< \brief half-precision floating-point matrix with 3 x 3 components. (From GLM_GTX_compatibility extension)
|
|
||||||
typedef detail::tmat4x2<detail::half, highp> half4x2; //!< \brief half-precision floating-point matrix with 4 x 2 components. (From GLM_GTX_compatibility extension)
|
|
||||||
typedef detail::tmat4x3<detail::half, highp> half4x3; //!< \brief half-precision floating-point matrix with 4 x 3 components. (From GLM_GTX_compatibility extension)
|
|
||||||
typedef detail::tmat4x4<detail::half, highp> half4x4; //!< \brief half-precision floating-point matrix with 4 x 4 components. (From GLM_GTX_compatibility extension)
|
|
||||||
|
|
||||||
typedef float float1; //!< \brief single-precision floating-point vector with 1 component. (From GLM_GTX_compatibility extension)
|
typedef float float1; //!< \brief single-precision floating-point vector with 1 component. (From GLM_GTX_compatibility extension)
|
||||||
typedef detail::tvec2<float, highp> float2; //!< \brief single-precision floating-point vector with 2 components. (From GLM_GTX_compatibility extension)
|
typedef detail::tvec2<float, highp> float2; //!< \brief single-precision floating-point vector with 2 components. (From GLM_GTX_compatibility extension)
|
||||||
typedef detail::tvec3<float, highp> float3; //!< \brief single-precision floating-point vector with 3 components. (From GLM_GTX_compatibility extension)
|
typedef detail::tvec3<float, highp> float3; //!< \brief single-precision floating-point vector with 3 components. (From GLM_GTX_compatibility extension)
|
||||||
|
@ -19,21 +19,6 @@
|
|||||||
/// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
/// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
/// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
/// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
/// THE SOFTWARE.
|
/// THE SOFTWARE.
|
||||||
///
|
|
||||||
/// @ref gtx_int_10_10_10_2
|
|
||||||
/// @file glm/gtx/int_10_10_10_2.hpp
|
|
||||||
/// @date 2010-07-07 / 2011-06-07
|
|
||||||
/// @author Christophe Riccio
|
|
||||||
///
|
|
||||||
/// @see core (dependence)
|
|
||||||
/// @see gtx_raw_data (dependence)
|
|
||||||
///
|
|
||||||
/// @defgroup gtx_int_10_10_10_2 GLM_GTX_int_10_10_10_2
|
|
||||||
/// @ingroup gtx
|
|
||||||
///
|
|
||||||
/// @brief Pack vector to 1010102 integers. Storage only.
|
|
||||||
///
|
|
||||||
/// <glm/gtx/int_10_10_10_2.hpp> need to be included to use these functionalities.
|
|
||||||
///////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
#ifndef GLM_GTX_int_10_10_10_2
|
#ifndef GLM_GTX_int_10_10_10_2
|
||||||
@ -43,20 +28,15 @@
|
|||||||
#include "../glm.hpp"
|
#include "../glm.hpp"
|
||||||
#include "../gtx/raw_data.hpp"
|
#include "../gtx/raw_data.hpp"
|
||||||
|
|
||||||
#if(defined(GLM_MESSAGES) && !defined(glm_ext))
|
#if(defined(GLM_MESSAGES))
|
||||||
# pragma message("GLM: GLM_GTX_int_10_10_10_2 extension included")
|
# pragma message("GLM: GLM_GTX_int_10_10_10_2 extension is deprecated, include GLM_GTC_packing (glm/gtc/packing.hpp) instead")
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
namespace glm
|
namespace glm
|
||||||
{
|
{
|
||||||
/// @addtogroup gtx_int_10_10_10_2
|
//! Deprecated, use packUnorm3x10_1x2 instead.
|
||||||
/// @{
|
GLM_DEPRECATED dword uint10_10_10_2_cast(glm::vec4 const & v);
|
||||||
|
|
||||||
//! From GLM_GTX_int_10_10_10_2 extension.
|
|
||||||
//! Cast a vec4 to an u_10_10_10_2.
|
|
||||||
dword uint10_10_10_2_cast(glm::vec4 const & v);
|
|
||||||
|
|
||||||
/// @}
|
|
||||||
}//namespace glm
|
}//namespace glm
|
||||||
|
|
||||||
#include "int_10_10_10_2.inl"
|
#include "int_10_10_10_2.inl"
|
||||||
|
@ -1,11 +1,25 @@
|
|||||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////
|
||||||
// OpenGL Mathematics Copyright (c) 2005 - 2013 G-Truc Creation (www.g-truc.net)
|
/// OpenGL Mathematics (glm.g-truc.net)
|
||||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
///
|
||||||
// Created : 2010-07-07
|
/// Copyright (c) 2005 - 2013 G-Truc Creation (www.g-truc.net)
|
||||||
// Updated : 2010-07-07
|
/// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
// Licence : This source is under MIT License
|
/// of this software and associated documentation files (the "Software"), to deal
|
||||||
// File : glm/gtx/int_10_10_10_2.inl
|
/// in the Software without restriction, including without limitation the rights
|
||||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
/// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
/// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
/// furnished to do so, subject to the following conditions:
|
||||||
|
///
|
||||||
|
/// The above copyright notice and this permission notice shall be included in
|
||||||
|
/// all copies or substantial portions of the Software.
|
||||||
|
///
|
||||||
|
/// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
/// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
/// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
/// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
/// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
/// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
/// THE SOFTWARE.
|
||||||
|
///////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
namespace glm
|
namespace glm
|
||||||
{
|
{
|
||||||
|
@ -54,32 +54,32 @@ namespace glm
|
|||||||
//! Return a point from a catmull rom curve.
|
//! Return a point from a catmull rom curve.
|
||||||
/// @see gtx_spline extension.
|
/// @see gtx_spline extension.
|
||||||
template <typename genType>
|
template <typename genType>
|
||||||
genType catmullRom(
|
GLM_FUNC_DECL genType catmullRom(
|
||||||
genType const & v1,
|
genType const & v1,
|
||||||
genType const & v2,
|
genType const & v2,
|
||||||
genType const & v3,
|
genType const & v3,
|
||||||
genType const & v4,
|
genType const & v4,
|
||||||
typename genType::T const & s);
|
typename genType::value_type const & s);
|
||||||
|
|
||||||
//! Return a point from a hermite curve.
|
//! Return a point from a hermite curve.
|
||||||
/// @see gtx_spline extension.
|
/// @see gtx_spline extension.
|
||||||
template <typename genType>
|
template <typename genType>
|
||||||
genType hermite(
|
GLM_FUNC_DECL genType hermite(
|
||||||
genType const & v1,
|
genType const & v1,
|
||||||
genType const & t1,
|
genType const & t1,
|
||||||
genType const & v2,
|
genType const & v2,
|
||||||
genType const & t2,
|
genType const & t2,
|
||||||
typename genType::T const & s);
|
typename genType::value_type const & s);
|
||||||
|
|
||||||
//! Return a point from a cubic curve.
|
//! Return a point from a cubic curve.
|
||||||
/// @see gtx_spline extension.
|
/// @see gtx_spline extension.
|
||||||
template <typename genType>
|
template <typename genType>
|
||||||
genType cubic(
|
GLM_FUNC_DECL genType cubic(
|
||||||
genType const & v1,
|
genType const & v1,
|
||||||
genType const & v2,
|
genType const & v2,
|
||||||
genType const & v3,
|
genType const & v3,
|
||||||
genType const & v4,
|
genType const & v4,
|
||||||
typename genType::T const & s);
|
typename genType::value_type const & s);
|
||||||
|
|
||||||
/// @}
|
/// @}
|
||||||
}//namespace glm
|
}//namespace glm
|
||||||
|
@ -16,7 +16,7 @@ GLM_FUNC_QUALIFIER genType catmullRom
|
|||||||
genType const & v2,
|
genType const & v2,
|
||||||
genType const & v3,
|
genType const & v3,
|
||||||
genType const & v4,
|
genType const & v4,
|
||||||
typename genType::T const & s
|
typename genType::value_type const & s
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
typename genType::value_type s1 = s;
|
typename genType::value_type s1 = s;
|
||||||
@ -39,7 +39,7 @@ GLM_FUNC_QUALIFIER genType hermite
|
|||||||
genType const & t1,
|
genType const & t1,
|
||||||
genType const & v2,
|
genType const & v2,
|
||||||
genType const & t2,
|
genType const & t2,
|
||||||
typename genType::T const & s
|
typename genType::value_type const & s
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
typename genType::value_type s1 = s;
|
typename genType::value_type s1 = s;
|
||||||
@ -61,7 +61,7 @@ GLM_FUNC_QUALIFIER genType cubic
|
|||||||
genType const & v2,
|
genType const & v2,
|
||||||
genType const & v3,
|
genType const & v3,
|
||||||
genType const & v4,
|
genType const & v4,
|
||||||
typename genType::T const & s
|
typename genType::value_type const & s
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
return ((v1 * s + v2) * s + v3) * s + v4;
|
return ((v1 * s + v2) * s + v3) * s + v4;
|
||||||
|
@ -53,27 +53,27 @@ namespace glm
|
|||||||
|
|
||||||
/// Vector type based of two std::size_t components.
|
/// Vector type based of two std::size_t components.
|
||||||
/// @see GLM_GTX_std_based_type
|
/// @see GLM_GTX_std_based_type
|
||||||
typedef detail::tvec2<std::size_t> size2;
|
typedef detail::tvec2<std::size_t, defaultp> size2;
|
||||||
|
|
||||||
/// Vector type based of three std::size_t components.
|
/// Vector type based of three std::size_t components.
|
||||||
/// @see GLM_GTX_std_based_type
|
/// @see GLM_GTX_std_based_type
|
||||||
typedef detail::tvec3<std::size_t> size3;
|
typedef detail::tvec3<std::size_t, defaultp> size3;
|
||||||
|
|
||||||
/// Vector type based of four std::size_t components.
|
/// Vector type based of four std::size_t components.
|
||||||
/// @see GLM_GTX_std_based_type
|
/// @see GLM_GTX_std_based_type
|
||||||
typedef detail::tvec4<std::size_t> size4;
|
typedef detail::tvec4<std::size_t, defaultp> size4;
|
||||||
|
|
||||||
/// Vector type based of two std::size_t components.
|
/// Vector type based of two std::size_t components.
|
||||||
/// @see GLM_GTX_std_based_type
|
/// @see GLM_GTX_std_based_type
|
||||||
typedef detail::tvec2<std::size_t> size2_t;
|
typedef detail::tvec2<std::size_t, defaultp> size2_t;
|
||||||
|
|
||||||
/// Vector type based of three std::size_t components.
|
/// Vector type based of three std::size_t components.
|
||||||
/// @see GLM_GTX_std_based_type
|
/// @see GLM_GTX_std_based_type
|
||||||
typedef detail::tvec3<std::size_t> size3_t;
|
typedef detail::tvec3<std::size_t, defaultp> size3_t;
|
||||||
|
|
||||||
/// Vector type based of four std::size_t components.
|
/// Vector type based of four std::size_t components.
|
||||||
/// @see GLM_GTX_std_based_type
|
/// @see GLM_GTX_std_based_type
|
||||||
typedef detail::tvec4<std::size_t> size4_t;
|
typedef detail::tvec4<std::size_t, defaultp> size4_t;
|
||||||
|
|
||||||
/// @}
|
/// @}
|
||||||
}//namespace glm
|
}//namespace glm
|
||||||
|
@ -53,17 +53,17 @@ namespace glm
|
|||||||
/// Simulate GL_CLAMP OpenGL wrap mode
|
/// Simulate GL_CLAMP OpenGL wrap mode
|
||||||
/// @see gtx_wrap extension.
|
/// @see gtx_wrap extension.
|
||||||
template <typename genType>
|
template <typename genType>
|
||||||
genType clamp(genType const & Texcoord);
|
GLM_FUNC_DECL genType clamp(genType const & Texcoord);
|
||||||
|
|
||||||
/// Simulate GL_REPEAT OpenGL wrap mode
|
/// Simulate GL_REPEAT OpenGL wrap mode
|
||||||
/// @see gtx_wrap extension.
|
/// @see gtx_wrap extension.
|
||||||
template <typename genType>
|
template <typename genType>
|
||||||
genType repeat(genType const & Texcoord);
|
GLM_FUNC_DECL genType repeat(genType const & Texcoord);
|
||||||
|
|
||||||
/// Simulate GL_MIRROR_REPEAT OpenGL wrap mode
|
/// Simulate GL_MIRROR_REPEAT OpenGL wrap mode
|
||||||
/// @see gtx_wrap extension.
|
/// @see gtx_wrap extension.
|
||||||
template <typename genType>
|
template <typename genType>
|
||||||
genType mirrorRepeat(genType const & Texcoord);
|
GLM_FUNC_DECL genType mirrorRepeat(genType const & Texcoord);
|
||||||
|
|
||||||
/// @}
|
/// @}
|
||||||
}// namespace glm
|
}// namespace glm
|
||||||
|
Loading…
Reference in New Issue
Block a user