GLM 0.9.3.0 is finally released. Since the branch 0.9.2, the test bench and the Doxygen API documentation has been expend.
</p><p>
</p><p/><p>
Swizzle operators are a challenging task to implement but thanks to the effort of many contributors, GLM 0.9.3.0 provides finally something interesting even if
not perfect but still a great improvement considering the incompatibilities with some external libraries. GLM 0.9.3 provides two implemetanations, one for C++ 98
compilers and one for C++ 11 compilers providing an implemetnation closer to what GLSL does. Indeed the C++ 98 implementation is compatible with C++ 11 compilers.
</p><spanxmlns="http://www.w3.org/1999/xhtml"class="code-title">Implementation for C++ 98 compilers</span><ulxmlns="http://www.w3.org/1999/xhtml"class="code-list"><liclass="code-line"><spanclass="code-line-content"><spanclass="comment">// To declare before including glm.hpp, to use the swizzle operators</span></span></li><liclass="code-line"><spanclass="code-line-content"><spanclass="keyword">#define </span> GLM_SWIZZLE
</p><imgsrc=""alt=""/><spanxmlns="http://www.w3.org/1999/xhtml"class="code-title">Implementation for C++ 98 compilers:</span><ulxmlns="http://www.w3.org/1999/xhtml"class="code-list"><liclass="code-line"><spanclass="code-line-content"><spanclass="comment">// To declare before including glm.hpp, to use the swizzle operators</span></span></li><liclass="code-line"><spanclass="code-line-content"><spanclass="keyword">#define </span> GLM_SWIZZLE
</span></li></ul><spanxmlns="http://www.w3.org/1999/xhtml"class="code-title">Implementation for C++ 11 compilers:</span><ulxmlns="http://www.w3.org/1999/xhtml"class="code-list"><liclass="code-line"><spanclass="code-line-content"><spanclass="comment">// To declare before including glm.hpp, to use the swizzle operators</span></span></li><liclass="code-line"><spanclass="code-line-content"><spanclass="keyword">#define </span> GLM_SWIZZLE
GLM 0.9.3.0 is finally released. Since the branch 0.9.2, the test bench and the Doxygen API documentation has been expend.
</paragraph>
<paragraph>
Swizzle operators are a challenging task to implement but thanks to the effort of many contributors, GLM 0.9.3.0 provides finally something interesting even if
not perfect but still a great improvement considering the incompatibilities with some external libraries. GLM 0.9.3 provides two implemetanations, one for C++ 98
compilers and one for C++ 11 compilers providing an implemetnation closer to what GLSL does. Indeed the C++ 98 implementation is compatible with C++ 11 compilers.
For the feature set, the GLSL noise functions have been implemented and based on the implementation of <linkhref="https://github.com/ashima/webgl-noise">webgl-noise</link>.
Some users might prefer the promoted GLM_GTC_noise extension also based on <linkhref="https://github.com/ashima/webgl-noise">webgl-noise</link> but different interface and three noise methods: Perlin noise, periodic noise and simplex noise.
</paragraph>
<imagesrc="./image/0075-1.jpg"/>
<codetitle="Implementation for C++ 98 compilers">
<paragraph>
Finally, swizzle operators are a challenging task to implement but thanks to the effort of many contributors, GLM 0.9.3.0 provides finally something interesting even if
not perfect but still a great improvement considering the incompatibilities with some external libraries. GLM 0.9.3 provides two implemetanations, one for C++ 98
compilers and one for C++ 11 compilers providing an implemetnation closer to what GLSL does. Indeed the C++ 98 implementation is compatible with C++ 11 compilers.
</paragraph>
<codetitle="Implementation for C++ 98 compilers:">
<line>
<comment>// To declare before including glm.hpp, to use the swizzle operators</comment>
</line>
@ -213,14 +219,14 @@
glm::vec2 d = glm::normalize(glm::vec2(c.yz()));
</line>
<linealign="32px">
a.xyzw = d.xyxy;
a.xyzw() = d.xyxy();
</line>
<line>
}
</line>
</code>
<codetitle="Implementation for C++ 11 compilers">
<codetitle="Implementation for C++ 11 compilers:">
<line>
<comment>// To declare before including glm.hpp, to use the swizzle operators</comment>