Math Random Functions
The scope of applications for UnigineScript is limited to implementing materials-related logic (material expressions, scriptable materials, brush materials). Do not use UnigineScript as a language for application logic, please consider C#/C++ instead, as these APIs are the preferred ones. Availability of new Engine features in UnigineScipt (beyond its scope of applications) is not guaranteed, as the current level of support assumes only fixing critical issues.
float rand ( ) #
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
forloop(int i = 0; 4) {
printf("%s\n",typeinfo(rand()));
}
/*
result is:
float: 0.510393
float: 0.638238
float: 0.406844
float: 0.407974
*/
variable rand ( 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
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
*/
void srand ( 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:
2020-11-24
Help improve this article
Was this article helpful?
(or select a word/phrase and press Ctrl+Enter)