This page has been translated automatically.
Video Tutorials
Interface
Essentials
Advanced
How To
Basics
Rendering
Professional (SIM)
UnigineEditor
Interface Overview
Assets Workflow
Version Control
Settings and Preferences
Working With Projects
Adjusting Node Parameters
Setting Up Materials
Setting Up Properties
Lighting
Sandworm
Using Editor Tools for Specific Tasks
Extending Editor Functionality
Built-in Node Types
Nodes
Objects
Effects
Decals
Light Sources
Geodetics
World Nodes
Sound Objects
Pathfinding Objects
Players
Programming
Fundamentals
Setting Up Development Environment
Usage Examples
C++
C#
UnigineScript
UUSL (Unified UNIGINE Shader Language)
Plugins
File Formats
Materials and Shaders
Rebuilding the Engine Tools
GUI
Double Precision Coordinates
API
Animations-Related Classes
Containers
Common Functionality
Controls-Related Classes
Engine-Related Classes
Filesystem Functionality
GUI-Related Classes
Node-Related Classes
Objects-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
IG Plugin
CIGIConnector Plugin
Rendering-Related Classes
VR-Related Classes
Content Creation
Content Optimization
Materials
Material Nodes Library
Miscellaneous
Input
Math
Matrix
Textures
Art Samples
Tutorials

Unigine.mat3 Struct

Notice
The functions listed below are the members of the Unigine.MathLib namespace.

mat3 Class

Properties

float m00#

The Matrix element in the corresponding row and column mxy = M[x, y]. Provides convenient access to matrix elements.

float m10#

The Matrix element in the corresponding row and column mxy = M[x, y]. Provides convenient access to matrix elements.

float m20#

The Matrix element in the corresponding row and column mxy = M[x, y]. Provides convenient access to matrix elements.

float m01#

The Matrix element in the corresponding row and column mxy = M[x, y]. Provides convenient access to matrix elements.

float m11#

The Matrix element in the corresponding row and column mxy = M[x, y]. Provides convenient access to matrix elements.

float m21#

The Matrix element in the corresponding row and column mxy = M[x, y]. Provides convenient access to matrix elements.

float m02#

The Matrix element in the corresponding row and column mxy = M[x, y]. Provides convenient access to matrix elements.

float m12#

The Matrix element in the corresponding row and column mxy = M[x, y]. Provides convenient access to matrix elements.

float m22#

The Matrix element in the corresponding row and column mxy = M[x, y]. Provides convenient access to matrix elements.

mat3 ZERO#

The Matrix, filled with zeros (0).

mat3 ONE#

The Matrix, filled with ones (1).

mat3 IDENTITY#

The Identity matrix.

quat Quat#

The Quaternion that this matrix represents.

vec3 Row0#

The First row.

vec3 Row1#

The Second row.

vec3 Row2#

The Third row.

vec3 Column0#

The First column.

vec3 Column1#

The Second column.

vec3 Column2#

The Third column.

vec3 AxisX#

The X axis.

vec3 AxisY#

The Y axis.

vec3 AxisZ#

The Z axis.

vec3 Diagonal#

The Vector containing diagonal elements of the matrix.

float Trace#

The Trace of the matrix: (sum of its diagonal elements).

float Determinant#

The Determinant of the matrix.

Members


bool operator== ( mat3 v0, mat3 v1 ) #

Performs equal comparison.

Arguments

  • mat3 v0 - First value.
  • mat3 v1 - Second value.

bool operator!= ( mat3 v0, mat3 v1 ) #

Not equal comparison.

Arguments

  • mat3 v0 - First value.
  • mat3 v1 - Second value.

bool Equals ( mat3 other ) #

Checks if the vector and the specified argument are equal (epsilon).

Arguments

  • mat3 other - Value to be checked for equality.

Return value

Return value.

bool Equals ( object obj ) #

Checks if the vector and the specified argument are equal (epsilon).

Arguments

Return value

Return value.

int GetHashCode ( ) #

Returns a hash code for the current object. Serves as the default hash function.

Return value

Resulting int value.

mat3 operator- ( mat3 m ) #

Subtraction.

Arguments

mat3 operator* ( mat3 m, float v ) #

Multiplication.

Arguments

  • mat3 m - Matrix.
  • float v - Value.

vec2 operator* ( mat3 m, vec2 v ) #

Multiplication.

Arguments

vec2 operator* ( vec2 v, mat3 m ) #

Multiplication.

Arguments

vec3 operator* ( mat3 m, vec3 v ) #

Multiplication.

Arguments

vec3 operator* ( vec3 v, mat3 m ) #

Multiplication.

Arguments

dvec2 operator* ( mat3 m, dvec2 v ) #

Multiplication.

Arguments

dvec2 operator* ( dvec2 v, mat3 m ) #

Multiplication.

Arguments

dvec3 operator* ( mat3 m, dvec3 v ) #

Multiplication.

Arguments

dvec3 operator* ( dvec3 v, mat3 m ) #

Multiplication.

Arguments

mat3 operator* ( mat3 m0, mat3 m1 ) #

Multiplication.

Arguments

  • mat3 m0 - First value.
  • mat3 m1 - Second value.

mat3 operator+ ( mat3 m0, mat3 m1 ) #

Addition.

Arguments

  • mat3 m0 - First value.
  • mat3 m1 - Second value.

mat3 operator- ( mat3 m0, mat3 m1 ) #

Subtraction.

Arguments

  • mat3 m0 - First value.
  • mat3 m1 - Second value.

void Set ( float m00_, float m10_, float m20_, float m01_, float m11_, float m21_, float m02_, float m12_, float m22_ ) #

Sets the value using the specified argument(s).
Output
Resulting matrix: 
    | m00_	 m01_	m02_ | 
M=  | m10_   m11_   m12_ |
    | m20_   m21_   m22_ |

Arguments

  • float m00_ - m00_ element.
  • float m10_ - m10_ element.
  • float m20_ - m20_ element.
  • float m01_ - m01_ element.
  • float m11_ - m11_ element.
  • float m21_ - m21_ element.
  • float m02_ - m02_ element.
  • float m12_ - m12_ element.
  • float m22_ - m22_ element.

void Set ( float v ) #

Sets the value using the specified argument(s).

Arguments

  • float v - A float value to be used.

void Set ( float[] m ) #

Sets the value using the specified argument(s).

Arguments

  • float[] m - Source matrix.

void Set ( mat3 m ) #

Sets the value using the specified argument(s).

Arguments

  • mat3 m - Source matrix.

void Set ( mat2 m ) #

Sets the value using the specified argument(s).

Arguments

  • mat2 m - Source matrix.

void Set ( mat4 m ) #

Sets the value using the specified argument(s).

Arguments

  • mat4 m - Source matrix.

void Set ( dmat4 m ) #

Sets the value using the specified argument(s).

Arguments

void Set ( vec3 col0, vec3 col1, vec3 col2 ) #

Sets the value using the specified argument(s).

Arguments

  • vec3 col0 - First column.
  • vec3 col1 - Second column.
  • vec3 col2 - Third column.

void Set ( quat q ) #

Sets the value using the specified argument(s).

Arguments

  • quat q - Source quaternion.

void SetRow ( int row, vec3 v ) #

Sets the specified row of the matrix using a given vec3 vector as a source.

Arguments

  • int row - Row index.
  • vec3 v - Source vector.

vec3 GetRow ( int row ) #

Returns the specified matrix row.

Arguments

  • int row - Row index.

Return value

Return value.

void SetColumn ( int column, vec3 v ) #

Sets the specified column of the matrix using a given vec3 vector as a source.

Arguments

  • int column - Column index.
  • vec3 v - Source vector.

vec3 GetColumn ( int column ) #

Returns the specified matrix column.

Arguments

  • int column - Column index.

Return value

Return value.

float Get ( int row, int column ) #

Returns the matrix element specified by a given row and column.

Arguments

  • int row - Row index.
  • int column - Column index.

Return value

Resulting float value.

float Set ( int row, int column, float v ) #

Sets the value using the specified argument(s).

Arguments

  • int row - Row index.
  • int column - Column index.
  • float v - A float value to be used.

Return value

Resulting float value.

void Clear ( ) #

Clears the value by setting all components/elements to 0.

void SetZero ( ) #

Sets all matrix elements equal to 0.

void SetIdentity ( ) #

Sets the matrix equal to the identity matrix.

void SetSkewSymmetric ( vec3 v ) #

Fills the skew-symmetric matrix using a given vec3 source vector.
Output
Skew-symmetric matrix: 
    | 0.0f   	-v.z	   v.y | 
S=  | v.z       0.0f      -v.x |
    | -v.y      v.x       0.0f |

Arguments

  • vec3 v - Source vector.

void SetRotate ( vec3 axis, float angle ) #

Sets the rotation matrix for a given axis.

Arguments

  • vec3 axis - Axis of rotation.
  • float angle - Angle, in degrees.

void SetRotateX ( float angle ) #

Sets X rotation matrix.

Arguments

  • float angle - Angle, in degrees.

void SetRotateY ( float angle ) #

Sets Y rotation matrix.

Arguments

  • float angle - Angle, in degrees.

void SetRotateZ ( float angle ) #

Sets Z rotation matrix.

Arguments

  • float angle - Angle, in degrees.

void SetScale ( vec3 v ) #

Fills the scaling matrix using a given vec3 source vector.
Output
Scaling matrix: 
    | v.x   	0.0f	  0.0f | 
S=  | 0.0f      v.y    	  0.0f |
    | 0.0f      0.0f      v.z  |

Arguments

  • vec3 v - Source vector.

string ToString ( ) #

Converts the current value to a string value.

Return value

Resulting string value.
Last update: 2021-08-24
Build: ()