- Document a few more properties and methods - Add more information to many classes - Fix lots of typos and gramar mistakes - Use [code] tags for parameters consistently - Use [b] and [i] tags consistently - Put "Warning:" and "Note:" on their own line to be more visible, and make them always bold - Tweak formatting in code examples to be more readable - Use double quotes consistently - Add more links to third-party technologies
77 lines
2.8 KiB
XML
77 lines
2.8 KiB
XML
<?xml version="1.0" encoding="UTF-8" ?>
|
|
<class name="RandomNumberGenerator" inherits="Reference" category="Core" version="3.2">
|
|
<brief_description>
|
|
A class for generating pseudo-random numbers.
|
|
</brief_description>
|
|
<description>
|
|
RandomNumberGenerator is a class for generating pseudo-random numbers. It currently uses [url=http://www.pcg-random.org/]PCG32[/url].
|
|
[b]Note:[/b] The underlying algorithm is an implementation detail. As a result, it should not be depended upon for reproducible random streams across Godot versions.
|
|
</description>
|
|
<tutorials>
|
|
</tutorials>
|
|
<methods>
|
|
<method name="randf">
|
|
<return type="float">
|
|
</return>
|
|
<description>
|
|
Generates a pseudo-random float between [code]0.0[/code] and [code]1.0[/code] (inclusive).
|
|
</description>
|
|
</method>
|
|
<method name="randf_range">
|
|
<return type="float">
|
|
</return>
|
|
<argument index="0" name="from" type="float">
|
|
</argument>
|
|
<argument index="1" name="to" type="float">
|
|
</argument>
|
|
<description>
|
|
Generates a pseudo-random float between [code]from[/code] and [code]to[/code] (inclusive).
|
|
</description>
|
|
</method>
|
|
<method name="randfn">
|
|
<return type="float">
|
|
</return>
|
|
<argument index="0" name="mean" type="float" default="0.0">
|
|
</argument>
|
|
<argument index="1" name="deviation" type="float" default="1.0">
|
|
</argument>
|
|
<description>
|
|
Generates a [url=https://en.wikipedia.org/wiki/Normal_distribution]normally-distributed[/url] pseudo-random number, using Box-Muller transform with the specified [code]mean[/code] and a standard [code]deviation[/code]. This is also called Gaussian distribution.
|
|
</description>
|
|
</method>
|
|
<method name="randi">
|
|
<return type="int">
|
|
</return>
|
|
<description>
|
|
Generates a pseudo-random 32-bit unsigned integer between [code]0[/code] and [code]4294967295[/code] (inclusive).
|
|
</description>
|
|
</method>
|
|
<method name="randi_range">
|
|
<return type="int">
|
|
</return>
|
|
<argument index="0" name="from" type="int">
|
|
</argument>
|
|
<argument index="1" name="to" type="int">
|
|
</argument>
|
|
<description>
|
|
Generates a pseudo-random 32-bit signed integer between [code]from[/code] and [code]to[/code] (inclusive).
|
|
</description>
|
|
</method>
|
|
<method name="randomize">
|
|
<return type="void">
|
|
</return>
|
|
<description>
|
|
Setups a time-based seed to generator.
|
|
</description>
|
|
</method>
|
|
</methods>
|
|
<members>
|
|
<member name="seed" type="int" setter="set_seed" getter="get_seed">
|
|
The seed used by the random number generator. A given seed will give a reproducible sequence of pseudo-random numbers.
|
|
[b]Note:[/b] The RNG does not have an avalanche effect, and can output similar random streams given similar seeds. Consider using a hash function to improve your seed quality if they're sourced externally.
|
|
</member>
|
|
</members>
|
|
<constants>
|
|
</constants>
|
|
</class>
|