Merge branch '0.9.1' into doc

master
Christophe Riccio ago%!(EXTRA string=15 years)
commit 30a372fd59
  1. 6
      CMakeLists.txt
  2. 13
      doc/src/about.xsl
  3. 13
      doc/src/code.xsl
  4. 16
      doc/src/data.xml
  5. 13
      doc/src/download.xsl
  6. 13
      doc/src/goodies.xsl
  7. 13
      doc/src/link.xsl
  8. 13
      doc/src/news.xsl
  9. 7
      glm/gtc/quaternion.hpp
  10. 14
      glm/gtc/quaternion.inl
  11. 20
      glm/setup.hpp

@ -19,5 +19,7 @@ add_subdirectory(test)
add_subdirectory(bench) add_subdirectory(bench)
add_subdirectory(doc) add_subdirectory(doc)
option(GLM_DEVELOPMENT_MODE "GLM development" OFF)
if(NOT GLM_DEVELOPMENT_MODE)
message(FATAL_ERROR "GLM is a header only library, no need to build it")
endif()

@ -12,6 +12,19 @@
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=iso-8859-1" /> <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=iso-8859-1" />
<meta name="copyright" content="G-Truc Creation" /> <meta name="copyright" content="G-Truc Creation" />
<link href="./common/style.css" rel="stylesheet" media="screen, print, embossed" type="text/css" /> <link href="./common/style.css" rel="stylesheet" media="screen, print, embossed" type="text/css" />
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-20182250-1']);
_gaq.push(['_setDomainName', '.g-truc.net']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
</head> </head>
<body> <body>
<table> <table>

@ -12,6 +12,19 @@
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=iso-8859-1" /> <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=iso-8859-1" />
<meta name="copyright" content="G-Truc Creation" /> <meta name="copyright" content="G-Truc Creation" />
<link href="./common/style.css" rel="stylesheet" media="screen, print, embossed" type="text/css" /> <link href="./common/style.css" rel="stylesheet" media="screen, print, embossed" type="text/css" />
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-20182250-1']);
_gaq.push(['_setDomainName', '.g-truc.net']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
</head> </head>
<body> <body>
<table> <table>

@ -1540,7 +1540,7 @@
<page_news> <page_news>
<news index="0059" date="31/01/2011" title="GLM 0.9.1 alpha released" image="goodies/logo.png" image-mini="image/logo-mini.png"> <news index="0059" date="31/01/2011" title="GLM 0.9.1 alpha released (updated)" image="goodies/logo.png" image-mini="image/logo-mini.png">
<paragraph> <paragraph>
This new version of GLM is bringing a lot of improvements and maybe too many considering the development time it has required: This new version of GLM is bringing a lot of improvements and maybe too many considering the development time it has required:
API exposing SIMD implementation but also some new, safe and feature complet swizzling functions and a new setup API. API exposing SIMD implementation but also some new, safe and feature complet swizzling functions and a new setup API.
@ -1563,17 +1563,17 @@
and <codeword>float</codeword> to <codeword>__m128</codeword>). and <codeword>float</codeword> to <codeword>__m128</codeword>).
This implementation can probably be improve in many ways so don't hesitate to send me some feedbacks. This implementation can probably be improve in many ways so don't hesitate to send me some feedbacks.
</paragraph> </paragraph>
<paragraph> <paragraph>
GLM 0.9.1 is not 100% backward compatible with GLM 0.9.0 but mostly advanced usages should be concerned by this compatibility issues. GLM 0.9.1 is not 100% backward compatible with GLM 0.9.0 but mostly advanced usages should be concerned by this compatibility issues.
</paragraph> </paragraph>
<paragraph>
UPDATED: SF.net mirrors are available again.
</paragraph>
<source-list> <source type="Download" href="https://sourceforge.net/projects/ogl-math/files/glm-0.9.1.A/glm-0.9.1.A.zip/download">GLM 0.9.1.A (zip, 3.0 MB)</source>
<source type="Download" href="https://sourceforge.net/projects/ogl-math/files/glm-0.9.1.A/glm-0.9.1.A.zip/download">GLM 0.9.1.A (zip, 2.7 MB)</source> <source type="Download" href="https://sourceforge.net/projects/ogl-math/files/glm-0.9.1.A/glm-0.9.1.A.7z/download">GLM 0.9.1.A (7z, 2.0 MB)</source>
<source type="Download" href="https://sourceforge.net/projects/ogl-math/files/glm-0.9.1.A/glm-0.9.1.A.7z/download">GLM 0.9.1.A (7z, 1.7 MB)</source> <source type="Link" href="http://glm.g-truc.net/glm-0.9.1.pdf">GLM Manual</source>
<source type="Link" href="http://glm.g-truc.net/glm-0.9.1.pdf" title="GLM Manual" /> <source type="Link" href="https://sourceforge.net/apps/trac/ogl-math/newticket">Submit a bug report</source>
<source type="Link" href="https://sourceforge.net/apps/trac/ogl-math/newticket" title="Submit a feature request or a bug report" />
</source-list>
</news> </news>
<news index="0058" date="30/01/2011" title="GLM 0.9.0.7 released" image="goodies/logo.png" image-mini="image/logo-mini.png"> <news index="0058" date="30/01/2011" title="GLM 0.9.0.7 released" image="goodies/logo.png" image-mini="image/logo-mini.png">

@ -12,6 +12,19 @@
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=iso-8859-1" /> <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=iso-8859-1" />
<meta name="copyright" content="G-Truc Creation" /> <meta name="copyright" content="G-Truc Creation" />
<link href="./common/style.css" rel="stylesheet" media="screen, print, embossed" type="text/css" /> <link href="./common/style.css" rel="stylesheet" media="screen, print, embossed" type="text/css" />
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-20182250-1']);
_gaq.push(['_setDomainName', '.g-truc.net']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
</head> </head>
<body> <body>
<table> <table>

@ -12,6 +12,19 @@
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=iso-8859-1" /> <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=iso-8859-1" />
<meta name="copyright" content="G-Truc Creation" /> <meta name="copyright" content="G-Truc Creation" />
<link href="./common/style.css" rel="stylesheet" media="screen, print, embossed" type="text/css" /> <link href="./common/style.css" rel="stylesheet" media="screen, print, embossed" type="text/css" />
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-20182250-1']);
_gaq.push(['_setDomainName', '.g-truc.net']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
</head> </head>
<body> <body>
<table> <table>

@ -12,6 +12,19 @@
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=iso-8859-1" /> <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=iso-8859-1" />
<meta name="copyright" content="&#65533; 2005 C-Truc Creation" /> <meta name="copyright" content="&#65533; 2005 C-Truc Creation" />
<link href="./common/style.css" rel="stylesheet" media="screen, print, embossed" type="text/css" /> <link href="./common/style.css" rel="stylesheet" media="screen, print, embossed" type="text/css" />
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-20182250-1']);
_gaq.push(['_setDomainName', '.g-truc.net']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
</head> </head>
<body> <body>
<div class="title1"> <div class="title1">

@ -12,6 +12,19 @@
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=iso-8859-1" /> <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=iso-8859-1" />
<meta name="copyright" content="G-Truc Creation" /> <meta name="copyright" content="G-Truc Creation" />
<link href="./common/style.css" rel="stylesheet" media="screen, print, embossed" type="text/css" /> <link href="./common/style.css" rel="stylesheet" media="screen, print, embossed" type="text/css" />
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-20182250-1']);
_gaq.push(['_setDomainName', '.g-truc.net']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
</head> </head>
<body> <body>
<table> <table>

@ -79,6 +79,11 @@ namespace glm
detail::tquat<T> operator- ( detail::tquat<T> operator- (
detail::tquat<T> const & q); detail::tquat<T> const & q);
template <typename T>
detail::tquat<T> operator* (
detail::tquat<T> const & q,
detail::tquat<T> const & p);
template <typename T> template <typename T>
detail::tvec3<T> operator* ( detail::tvec3<T> operator* (
detail::tquat<T> const & q, detail::tquat<T> const & q,
@ -145,7 +150,7 @@ namespace glm
//! Returns the cross product of q1 and q2. //! Returns the cross product of q1 and q2.
//! From GLM_GTC_quaternion extension. //! From GLM_GTC_quaternion extension.
template <typename T> template <typename T>
detail::tquat<T> cross( GLM_DEPRECATED detail::tquat<T> cross(
detail::tquat<T> const & q1, detail::tquat<T> const & q1,
detail::tquat<T> const & q2); detail::tquat<T> const & q2);

@ -156,6 +156,20 @@ namespace detail{
return detail::tquat<T>(-q.w, -q.x, -q.y, -q.z); return detail::tquat<T>(-q.w, -q.x, -q.y, -q.z);
} }
template <typename T>
inline detail::tquat<T> operator*
(
detail::tquat<T> const & q,
detail::tquat<T> const & p
)
{
return detail::tquat<T>(
q.w * p.w - q.x * p.x - q.y * p.y - q.z * p.z,
q.w * p.x + q.x * p.w + q.y * p.z - q.z * p.y,
q.w * p.y + q.y * p.w + q.z * p.x - q.x * p.z,
q.w * p.z + q.z * p.w + q.x * p.y - q.y * p.x);
}
// Transformation // Transformation
template <typename T> template <typename T>
inline detail::tvec3<T> operator* inline detail::tvec3<T> operator*

@ -22,9 +22,9 @@
/////////////////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////////////////
// Compiler // Compiler
// User defines: GLM_FORCE_COMPILER_UNKNOWNED // User defines: GLM_FORCE_COMPILER_UNKNOWN
#define GLM_COMPILER_UNKNOWNED 0x00000000 #define GLM_COMPILER_UNKNOWN 0x00000000
// Visual C++ defines // Visual C++ defines
#define GLM_COMPILER_VC 0x01000000 #define GLM_COMPILER_VC 0x01000000
@ -76,8 +76,8 @@
#define GLM_COMPILER_CODEWARRIOR 0x04000000 #define GLM_COMPILER_CODEWARRIOR 0x04000000
// Force generic C++ compiler // Force generic C++ compiler
#ifdef GLM_FORCE_COMPILER_UNKNOWNED #ifdef GLM_FORCE_COMPILER_UNKNOWN
# define GLM_COMPILER GLM_COMPILER_UNKNOWNED # define GLM_COMPILER GLM_COMPILER_UNKNOWN
// Visual C++ // Visual C++
#elif defined(_MSC_VER) #elif defined(_MSC_VER)
# if _MSC_VER == 900 # if _MSC_VER == 900
@ -157,7 +157,7 @@
# define GLM_COMPILER GLM_COMPILER_CODEWARRIOR # define GLM_COMPILER GLM_COMPILER_CODEWARRIOR
#else #else
# define GLM_COMPILER GLM_COMPILER_UNKNOWNED # define GLM_COMPILER GLM_COMPILER_UNKNOWN
#endif #endif
#ifndef GLM_COMPILER #ifndef GLM_COMPILER
@ -249,7 +249,7 @@
///////////////// /////////////////
// Platform // Platform
// User defines: GLM_FORCE_PURE // User defines: GLM_FORCE_PURE GLM_FORCE_SSE2 GLM_FORCE_AVX
#define GLM_ARCH_PURE 0x0000 //(0x0000) #define GLM_ARCH_PURE 0x0000 //(0x0000)
#define GLM_ARCH_SSE2 0x0001 //(0x0001) #define GLM_ARCH_SSE2 0x0001 //(0x0001)
@ -258,6 +258,12 @@
#if(defined(GLM_FORCE_PURE)) #if(defined(GLM_FORCE_PURE))
# define GLM_ARCH GLM_ARCH_PURE # define GLM_ARCH GLM_ARCH_PURE
#elif(defined(GLM_FORCE_AVX))
# define GLM_ARCH GLM_ARCH_AVX
#elif(defined(GLM_FORCE_SSE3))
# define GLM_ARCH GLM_ARCH_SSE3
#elif(defined(GLM_FORCE_SSE2))
# define GLM_ARCH GLM_ARCH_SSE2
#elif((GLM_COMPILER & GLM_COMPILER_VC) && (defined(_M_IX86) || defined(_M_X64))) #elif((GLM_COMPILER & GLM_COMPILER_VC) && (defined(_M_IX86) || defined(_M_X64)))
# if(defined(_M_CEE_PURE)) # if(defined(_M_CEE_PURE))
# define GLM_ARCH GLM_ARCH_PURE # define GLM_ARCH GLM_ARCH_PURE
@ -344,7 +350,7 @@
# elif(GLM_COMPONENT == GLM_COMPONENT_MS_EXT) # elif(GLM_COMPONENT == GLM_COMPONENT_MS_EXT)
# pragma message("GLM: Multiple vector component names through Visual C++ language extensions") # pragma message("GLM: Multiple vector component names through Visual C++ language extensions")
# else # else
# error "GLM_COMPONENT value unknowned" # error "GLM_COMPONENT value unknown"
# endif//GLM_MESSAGE_COMPONENT_DISPLAYED # endif//GLM_MESSAGE_COMPONENT_DISPLAYED
#endif//GLM_MESSAGE #endif//GLM_MESSAGE

Loading…
Cancel
Save