- Bvec2
alias Bvec2 = Vector2!(bool)
2D bool vector (bvec2 in GLSL)
- Bvec3
alias Bvec3 = Vector3!(bool)
3D bool vector (bvec3 in GLSL)
- Bvec4
alias Bvec4 = Vector4!(bool)
4D bool vector (bvec4 in GLSL)
- Ivec2
alias Ivec2 = Vector2!(int)
2D int vector (ivec2 in GLSL)
- Ivec3
alias Ivec3 = Vector3!(int)
3D int vector (ivec3 in GLSL)
- Ivec4
alias Ivec4 = Vector4!(int)
4D int vector ( ivec4 in GLSL)
- Mat3
alias Mat3 = Matrix!(3, 3)
3x3 float matrix (mat3 in GLSL)
- Mat4
alias Mat4 = Matrix!(4, 4)
4x4 float matrix (mat4 in GLSL)
- Vec2
alias Vec2 = Vector2!(float)
2D float vector (vec2 in GLSL)
- Vec3
alias Vec3 = Vector3!(float)
3D float vector (vec3 in GLSL)
- Vec4
alias Vec4 = Vector4!(float)
4D float vector (vec4 in GLSL)
The glsl module contains types that match their equivalents in GLSL, the OpenGL shading language. These types are exclusively used by the $(SHADER_LINK) class.
Types that already exist in DSFML, such as $(VECTOR2_LINK) and $(VECTOR3_LINK), are reused as aliases, so you can use the types in this module as well as the original ones. Others are newly defined, such as Vec4 or Mat3. Their actual type is an implementation detail and should not be used.
All vector types support a default constructor that initializes every component to zero, in addition to a constructor with one parameter for each component. The components are stored in member variables called x, y, z, and w.
All matrix types support a constructor with a float[] parameter of the appropriate size (that is, 9 in a 3x3 matrix, 16 in a 4x4 matrix). Furthermore, they can be converted from $(TRANSFORM_LINK) objects.