This version of documentation is OUTDATED! Please switch to the latest one.

# Math Random Functions

## floatrand( )

Generate a floating point random value in range [0,1). The function returns system rand() / RAND_MAX.

### Return value

A pseudo-random number between 0.0 and 1.0.

### Examples

Source code (UnigineScript)
``````forloop(int i = 0; 4) {
printf("%s\n",typeinfo(rand()));
}
/*
result is:
float: 0.510393
float: 0.638238
float: 0.406844
float: 0.407974
*/``````

## variablerand( variable from, variable to )

Generate a random value in range [to,from). For vectors values are obtained per component.

### Arguments

• variable from - From value. Can be the following types:
• variable to - To value. Can be the following types:
• int, long, float or double if the first argument is either int, float or double.
• string if the first argument is int:
• If a string is empty, it will equal to int(0).
• If a string is nonempty, it will equal to int(1).
• vec3 or dvec3 if the first argument is vec3
• vec4 or dvec4 if the first argument is vec4
• dvec3 if the first argument is dvec3
• dvec4 if the first argument is dvec4
• ivec3 if the first argument is ivec3
• ivec4 if the first argument is ivec4

### Return value

A pseudo-random number between from and to.

### Examples

Source code (UnigineScript)
``````printf("%s\n",typeinfo(rand(-2,3)));
printf("%s\n",typeinfo(rand(-3.0,2)));
printf("%s\n",typeinfo(rand(vec3(-1,-2,-3),vec3(1,2,3))));
/*
result is:
int: 1
float: 1.5561
vec3: 0.19138 1.81164 -0.688218
*/``````

## voidsrand( int seed )

Set a new sequence of random numbers. Function calls system srand() function.

### Arguments

• int seed - Seed value for system random number generator.
Last update: 2018-12-27