Flow Visualisation
GTX Extensions (Experimental)

Functions and types that the GLSL specification doesn't define, but useful to have for a C++ program. More...

Collaboration diagram for GTX Extensions (Experimental):

Modules

 GLM_GTX_associated_min_max
 Min and max functions that return associated values not the compared onces. <glm/gtx/associated_min_max.hpp> need to be included to use these functionalities.
 
 GLM_GTX_bit
 Allow to perform bit operations on integer values.
 
 GLM_GTX_closest_point
 Find the point on a straight line which is the closet of a point.
 
 GLM_GTX_color_cast
 Conversion between two color types.
 
 GLM_GTX_color_space
 Related to RGB to HSV conversions and operations.
 
 GLM_GTX_color_space_YCoCg
 RGB to YCoCg conversions and operations.
 
 GLM_GTX_compatibility
 Provide functions to increase the compatibility with Cg and HLSL languages.
 
 GLM_GTX_component_wise
 Operations between components of a type.
 
 GLM_GTX_euler_angles
 Build matrices from Euler angles.
 
 GLM_GTX_extend
 Extend a position from a source to a position at a defined length.
 
 GLM_GTX_extented_min_max
 
 GLM_GTX_fast_exponential
 Fast but less accurate implementations of exponential based functions.
 
 GLM_GTX_fast_square_root
 Fast but less accurate implementations of square root based functions.
 
 GLM_GTX_fast_trigonometry
 Fast but less accurate implementations of trigonometric functions.
 
 GLM_GTX_gradient_paint
 Functions that return the color of procedural gradient for specific coordinates. <glm/gtx/gradient_paint.hpp> need to be included to use these functionalities.
 
 GLM_GTX_handed_coordinate_space
 To know if a set of three basis vectors defines a right or left-handed coordinate system.
 
 GLM_GTX_inertia
 Create inertia matrices.
 
 GLM_GTX_int_10_10_10_2
 Pack vector to 1010102 integers. Storage only.
 
 GLM_GTX_integer
 Add support for integer for core functions.
 
 GLM_GTX_intersect
 Add intersection functions.
 
 GLM_GTX_log_base
 Logarithm for any base. base can be a vector or a scalar.
 
 GLM_GTX_matrix_cross_product
 Build cross product matrices.
 
 GLM_GTX_matrix_interpolation
 Allows to directly interpolate two exiciting matrices.
 
 GLM_GTX_matrix_major_storage
 Build matrices with specific matrix order, row or column.
 
 GLM_GTX_matrix_operation
 Build diagonal matrices from vectors.
 
 GLM_GTX_matrix_query
 Query to evaluate matrix properties.
 
 GLM_GTX_mixed_producte
 Mixed product of 3 vectors.
 
 GLM_GTX_multiple
 Find the closest number of a number multiple of other number.
 
 GLM_GTX_norm
 Various ways to compute vector norms.
 
 GLM_GTX_normal
 Compute the normal of a triangle.
 
 GLM_GTX_normalize_dot
 Dot product of vectors that need to be normalize with a single square root.
 
 GLM_GTX_number_precision
 Defined size types.
 
 GLM_GTX_ocl_type
 OpenCL types.
 
 GLM_GTX_optimum_pow
 Integer exponentiation of power functions.
 
 GLM_GTX_orthonormalize
 Orthonormalize matrices.
 
 GLM_GTX_perpendicular
 Perpendicular of a vector from other one.
 
 GLM_GTX_polar_coordinates
 Conversion from Euclidean space to polar space and revert.
 
 GLM_GTX_projection
 Projection of a vector to other one.
 
 GLM_GTX_quaternion
 Extented quaternion types and functions.
 
 GLM_GTX_raw_data
 Projection of a vector to other one.
 
 GLM_GTX_rotate_vector
 Function to directly rotate a vector.
 
 GLM_GTX_simd_mat4
 SIMD implementation of mat4 type.
 
 GLM_GTX_simd_vec4
 SIMD implementation of vec4 type.
 
 GLM_GTX_spline
 Spline functions.
 
 GLM_GTX_std_based_type
 Adds vector types based on STL value types. <glm/gtx/std_based_type.hpp> need to be included to use these functionalities.
 
 GLM_GTX_string_cast
 Setup strings for GLM type values.
 
 GLM_GTX_transform
 Add transformation matrices.
 
 GLM_GTX_transform2
 Add extra transformation matrices.
 
 GLM_GTX_vec1
 Add vec1, ivec1, uvec1 and bvec1 types. <glm/gtx/vec1.hpp> need to be included to use these functionalities.
 
 GLM_GTX_vector_access
 Function to set values to vectors.
 
 GLM_GTX_vector_angle
 Compute angle between vectors.
 
 GLM_GTX_vector_query
 Query informations of vector types.
 
 GLM_GTX_verbose_operator
 Use words to replace operators.
 
 GLM_GTX_wrap
 Wrapping mode of texture coordinates.
 

Detailed Description

Functions and types that the GLSL specification doesn't define, but useful to have for a C++ program.

Experimental extensions are useful functions and types, but the development of their API and functionality is not necessarily stable. They can change substantially between versions. Backwards compatibility is not much of an issue for them.

Even if it's highly unrecommended, it's possible to include all the extensions at once by including <glm/ext.hpp>. Otherwise, each extension needs to be included a specific file.