Getting Started
Migrating to UNIGINE 2.0
C++ API Migration
UnigineScript
The Language
Core Library
Engine Library
Node-Related Classes
GUI-Related Classes
Plugins Library
High-Level Systems
Samples
Usage Examples
C++ API
API Reference
Integration Samples
Usage Examples
C++ Plugins

Unigine::vec4 Struct

Vector of 4 float components.

To use this structure, include the UnigineMathLib.h file.

Unigine::vec4 Structure

Members


UNIGINE_DECLARE_USE_MEMORY UNIGINE_INLINE vec4 ()

Default constructor that produces a zero vector.

UNIGINE_INLINE vec4 (const vec4 & v)

Initialization by a vector.

Arguments

  • const vec4 & v - The value of the vector.

UNIGINE_INLINE vec4 (const vec2 & v, float z, float w)

Initialization by a vector and two scalars.

Arguments

  • const vec2 & v - The value of the vector.
  • float z - Z component of the vector.
  • float w - W component of the vector.

UNIGINE_INLINE vec4 (const vec3 & v, float w)

Initialization by a vector and a scalar.

Arguments

  • const vec3 & v - The value of the vector.
  • float w - W component of the vector.

UNIGINE_INLINE vec4 (float x, float y, float z, float w)

Initialization by scalars.

Arguments

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

explicit UNIGINE_INLINE vec4 (float v)

Initialization by a scalar.

Arguments

  • float v - The value of the scalar.

explicit UNIGINE_INLINE vec4 (const vec2 & v)

Initialization by a two component vector: x=v.x, y=v.y, z=0.0f, w=1.0f.

Arguments

  • const vec2 & v - The value of the vector.

explicit UNIGINE_INLINE vec4 (const vec3 & v)

Initialization by a three component vector: x=v.x, y=v.y, z=v.z, w=1.0f.

Arguments

  • const vec3 & v - The value of the vector.

explicit UNIGINE_INLINE vec4 (const dvec4 & v)

Initialization by a vector of double components.

Arguments

  • const dvec4 & v - The value of the vector.

explicit UNIGINE_INLINE vec4 (const ivec4 & v)

Initialization by a vector of integer components.

Arguments

  • const ivec4 & v - The value of the vector.

explicit UNIGINE_INLINE vec4 (const bvec4 & v)

Initialization by a vector of byte components.

Arguments

  • const bvec4 & v - The value of the vector.

explicit UNIGINE_INLINE vec4 (const float * v)

Initialization by a pointer to the vector.

Arguments

  • const float * v - Pointer to the vector.

UNIGINE_INLINE vec4 operator- () const

Vector negation.

Return value

The resulting vector.

UNIGINE_INLINE vec4 & operator*= (float v)

Scalar multiplication.

Arguments

  • float v - The value of the scalar.

Return value

The resulting vector.

UNIGINE_INLINE vec4 & operator*= (const vec4 & v)

Vector multiplication.

Arguments

  • const vec4 & v - The value of the vector.

Return value

The resulting vector.

UNIGINE_INLINE vec4 & operator+= (const vec4 & v)

Vector addition.

Arguments

  • const vec4 & v - The value of the vector.

Return value

The resulting vector.

UNIGINE_INLINE vec4 & operator-= (const vec4 & v)

Vector subtraction.

Arguments

  • const vec4 & v - The value of the vector.

Return value

The resulting vector.

UNIGINE_INLINE float & operator[] (int i)

Array access.

Arguments

  • int i - Array item index.

Return value

The array item.

UNIGINE_INLINE float operator[] (int i) const

Constant array access.

Arguments

  • int i - Array item index.

Return value

The array item.

UNIGINE_INLINE void set (float x_, float y_, float z_, float w_)

Set vector.

Arguments

  • float x_ - X component of the vector.
  • float y_ - Y component of the vector.
  • float z_ - Z component of the vector.
  • float w_ - W component of the vector.

UNIGINE_INLINE void set (const float * v)

Set vector.

Arguments

  • const float * v - Pointer to the vector.

UNIGINE_INLINE void get (float * v) const

Get vector.

Arguments

  • float * v - Pointer to the vector.

UNIGINE_INLINE float * get ()

Get a pointer to the vector.

Return value

Pointer to the vector.

UNIGINE_INLINE const float * get () const

Get a constant pointer to the vector.

Return value

Pointer to the vector.

Unigine::vec4:: Union

union {
struct {
float x;
float y;
float z;
float w;
};
float v[4];
};
Last update: 2017-07-03