This page has been translated automatically.
Video Tutorials
Interface
Essentials
Advanced
How To
UnigineEditor
Interface Overview
Assets Workflow
Settings and Preferences
Working With Projects
Adjusting Node Parameters
Setting Up Materials
Setting Up Properties
Lighting
Landscape Tool
Sandworm
Using Editor Tools for Specific Tasks
Extending Editor Functionality
Built-in Node Types
Nodes
Objects
Effects
Decals
Light Sources
Geodetics
World Objects
Sound Objects
Pathfinding Objects
Players
Programming
Fundamentals
Setting Up Development Environment
Usage Examples
UnigineScript
C++
C#
UUSL (Unified UNIGINE Shader Language)
File Formats
Rebuilding the Engine Tools
GUI
Double Precision Coordinates
API
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
Content Creation
Content Optimization
Materials
Art Samples
Tutorials
Warning! This version of documentation is OUTDATED, as it describes an older SDK version! Please switch to the documentation for the latest SDK version.
Warning! This version of documentation describes an old SDK version which is no longer supported! Please upgrade to the latest SDK version.

Unigine.vec3 Struct

This class represents a vector of 3 float components.

vec3 Class

Members


vec3 ( ) #

Default constructor. Produces a zero vector.

vec3 ( vec3 v ) #

Constructor. Initializes the vector by copying a given source vector.

Arguments

  • vec3 v - Source vector.

vec3 ( vec2 v, float z ) #

Constructor. Initializes the vector using a given two-component vec2 source vector and a scalar.

Arguments

  • vec2 v - Two-component vector.
  • float z - Z component of the vector.

vec3 ( float x, float y, float z ) #

Constructor. Initializes the vector using given float values.

Arguments

  • float x - X component of the vector.
  • float y - Y component of the vector.
  • float z - Z component of the vector.

vec3 ( float v ) #

Constructor. Initializes the vector using a given scalar value: x=v, y=v, z=v.

Arguments

  • float v - Scalar value.

Examples

Source code (UnigineScript)
vec3(1.0);
/*
Creates a vector (1.0, 1.0, 1.0)
*/

vec3 ( vec2 v ) #

Constructor. Initializes the vector using a given vec2 source vector: x=v.x, y=v.y, z=0.0f.

Arguments

  • vec2 v - Two-component source vector.

vec3 ( vec4 v ) #

Constructor. Initializes the vector using a given four-component vec4 source vector: x=v.x, y=v.y, z=v.z.

Arguments

  • vec4 v - Four-component source vector.

vec3 ( dvec3 v ) #

Constructor. Initializes the vector using a given dvec3 source vector.

Arguments

vec3 ( ivec3 v ) #

Constructor. Initializes the vector using a given ivec3 source vector .

Arguments

vec3 ( float[] v ) #

Constructor. Initializes the vector using a given pointer to the array of float elements: x=v[0], y=v[1], z=v[2].

Arguments

  • float[] v - Pointer to the array of float elements.

vec3 Abs ( ) #

Returns the absolute values of the vector components.

Return value

Vector with absolute values.

float Length ( ) #

Returns the length of the vector.

Return value

Vector length.

float Length2 ( ) #

Returns the squared length of the vector.

Return value

Squared length of the vector.

vec3 Lerp ( vec3 v0, vec3 v1, float k ) #

Returns the interpolated vector according to the following formula: v0 + (v 1 - v 0) * k .

Arguments

  • vec3 v0 - First vector.
  • vec3 v1 - Second vector.
  • float k - Interpolation coefficient.

Return value

Interpolated vector.

float MaxXY ( ) #

Compares the X and Y components of the vector and returns the greater one.

Return value

The greater out of the X and Y components of the vector.

float max ( ) #

Compares all vector components and returns the maximum value.

Return value

The greatest out of the vector components.

float MinXY ( ) #

Compares the X and Y components of the vector and returns the lower one.

Return value

The lower value out of the X and Y components of the vector.

vec3 Normalize ( ) #

Returns normalized vector.

Return value

Normalized vector.

vec3 NormalizeValid ( ) #

Normalizes a vector, makes its magnitude equal to 1. When normalized, a vector keeps the same direction but its length is equal to 1. Check for the zero vector is performed: if the argument is a zero vector, then a zero vector is returned.

Return value

Normalized vector.

vec3 NormalizeFast ( ) #

Returns normalized vector, calculated using the fast inverse square root algorithm.

Return value

Normalized vector.

vec3 NormalizeValidFast ( ) #

Returns normalized vector, calculated using the fast inverse square root algorithm. Check for the zero vector is performed: if the argument is a zero vector, then a zero vector is returned.

Return value

Normalized vector.

vec3 Saturate ( ) #

Clamps the values of vector components within the range of 0.0 to 1.0.

Return value

Vector with components clamped within the range of 0.0 to 1.0.

vec3 Operator*= ( float val ) #

Performs scalar multiplication.

Arguments

  • float val - Scalar value.

Return value

Resulting vector.

vec3 Operator*= ( vec3 val ) #

Performs vector multiplication.

Arguments

  • vec3 val - Vector.

Return value

Resulting vector.

vec3 Operator+= ( vec3 val ) #

Performs vector addition.

Arguments

  • vec3 val - Vector.

Return value

Resulting vector.

vec3 Operator- ( ) #

Performs vector negation.

Return value

Resulting vector.

vec3 Operator-= ( vec3 val ) #

Performs vector subtraction.

Arguments

  • vec3 val - Vector.

Return value

Resulting vector.

float Operator[] ( int i ) #

Performs array access to the vector item by using given item index.

Arguments

  • int i - Vector item index.

Return value

Vector item.

vec3 Sign ( vec3 v ) #

Returns the vector with signs of the argument components.

Arguments

  • vec3 v - Argument.

Return value

Vector with signs of the argument components. 1.0 if v >= 0.0 ; -1.0 if v < 0.0.
Last update: 2021-04-29
Build: ()