diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 00000000..7a73a41b --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,2 @@ +{ +} \ No newline at end of file diff --git a/doc/manual.pdf b/doc/manual.pdf new file mode 100644 index 00000000..f93479a4 Binary files /dev/null and b/doc/manual.pdf differ diff --git a/glm/ext/matrix_clip_space.hpp b/glm/ext/matrix_clip_space.hpp index fe7606e7..c3874f2f 100644 --- a/glm/ext/matrix_clip_space.hpp +++ b/glm/ext/matrix_clip_space.hpp @@ -4,7 +4,7 @@ /// @defgroup ext_matrix_clip_space GLM_EXT_matrix_clip_space /// @ingroup ext /// -/// Defines functions that generate common transformation matrices. +/// Defines functions that generate clip space transformation matrices. /// /// The matrices generated by this extension use standard OpenGL fixed-function /// conventions. For example, the lookAt function generates a transform from world diff --git a/manual.md b/manual.md index c934be7f..9c112a49 100644 --- a/manual.md +++ b/manual.md @@ -1,10 +1,12 @@ -![Alt](/doc/manual/logo-mini.png "GLM Logo") +![Alt](./doc/manual/logo-mini.png "GLM Logo") # GLM 0.9.9 Manual -![Alt](/doc/manual/g-truc.png "G-Truc Logo") +![Alt](./doc/manual/g-truc.png "G-Truc Logo") --- +
+ ## Table of Contents + [0. Licenses](#section0) + [1. Getting started](#section1) @@ -103,6 +105,8 @@ + [10.7. Acknowledgements](#section10_7) --- +
+ ## Licenses ### The Happy Bunny License (Modified MIT License) @@ -131,7 +135,7 @@ 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. -![](https://github.com/g-truc/glm/blob/manual/doc/manual/frontpage1.png) +![](./doc/manual/frontpage1.png) ### The MIT License @@ -156,14 +160,16 @@ 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. -![](https://github.com/g-truc/glm/blob/manual/doc/manual/frontpage2.png) +![](./doc/manual/frontpage2.png) --- +
## 1. Getting started ### 1.1. Using global headers GLM is a header-only library, and thus does not need to be compiled. We can use GLM's implementation of GLSL's mathematics functionality by including the `` header: + ```cpp #include ``` @@ -266,6 +272,8 @@ glm::mat4 transform(glm::vec2 const& Orientation, glm::vec3 const& Translate, gl GLM does not depend on external libraries or headers such as ``, [``](http://www.opengl.org/registry/api/GL/glcorearb.h), ``, ``, or ``. --- +
+ ## 2. Preprocessor configurations ### 2.1. GLM\_FORCE\_MESSAGES: Platform auto detection and default configuration @@ -689,6 +697,8 @@ int average(int const A, int const B) ``` --- +
+ ## 3. Stable extensions ### 3.1. Scalar types @@ -1336,6 +1346,8 @@ This extension exposes functions to transform objects. Include `` to use these features. --- +
+ ## 4. Recommended extensions GLM extends the core GLSL feature set with extensions. These extensions include: quaternion, transformation, spline, matrix inverse, color spaces, etc. @@ -1578,6 +1590,8 @@ Add \*vec1 types. `` need to be included to use these features. --- +
+ ## 5. OpenGL interoperability ### 5.1. GLM replacements for deprecated OpenGL functions @@ -1724,6 +1738,8 @@ glm::dvec3 unProject(glm::dvec3 const& win, glm::dmat4 const& model, glm::dmat4 From `GLM_GTC_matrix_transform` extension: `` --- +
+ ## 6. Known issues This section reports GLSL features that GLM can't accurately emulate due to language restrictions. @@ -1763,6 +1779,8 @@ ivec3 foo(const vec4 & v) ``` --- +
+ ## 7. FAQ ### 7.1 Why GLM follows GLSL specification and conventions? @@ -1835,6 +1853,8 @@ GLM has some C++ c Unfortunately, GCC and Clang doesn't support SIMD instrinsics as constant expressions. To allow constant expressions on all vectors and matrices types, define `GLM_FORCE_PURE` before including GLM headers. --- +
+ ##
8. Code samples This series of samples only shows various GLM features without consideration of any sort. @@ -1969,6 +1989,8 @@ glm::vec3 lighting(intersection const& Intersection, material const& Material, l ``` --- +
+ ## 9. Contributing to GLM ### 9.1. Submitting bug reports @@ -2184,6 +2206,8 @@ namespace detail // glm::detail namespace is for implementation detail ``` --- +
+ ## 10. References ### 10.1. OpenGL specifications diff --git a/readme.md b/readme.md index ddfe1d39..10347c22 100644 --- a/readme.md +++ b/readme.md @@ -26,8 +26,9 @@ Thanks for contributing to the project by [submitting issues](https://github.com #include // glm::vec3 #include // glm::vec4 #include // glm::mat4 -#include // glm::translate, glm::rotate, glm::scale, glm::perspective -#include // glm::pi +#include // glm::translate, glm::rotate, glm::scale +#include // glm::perspective +#include // glm::pi glm::mat4 camera(float Translate, glm::vec2 const& Rotate) { @@ -51,7 +52,7 @@ glm::mat4 camera(float Translate, glm::vec2 const& Rotate) ## Release notes -### [GLM 0.9.9.1](https://github.com/g-truc/glm/commits/master) - 2018-0X-XX +### [GLM 0.9.9.1](https://github.com/g-truc/glm/releases/tag/0.9.9.1) - 2018-09-03 #### Features: - Added bitfieldDeinterleave to GTC_bitfield - Added missing equal and notEqual with epsilon for quaternion types to GTC_quaternion @@ -59,6 +60,7 @@ glm::mat4 camera(float Translate, glm::vec2 const& Rotate) - Added missing aligned matrix types to GTC_type_aligned - Added C++17 detection - Added Visual C++ language standard version detection +- Added PDF manual build from markdown #### Improvements: - Added a section to the manual for contributing to GLM