EvolvingNatFloat: Difference between revisions
From Vintage Story Wiki
No edit summary |
m (Edited photos, added warning about sequence limit, specified variables in functions.) |
||
Line 85: | Line 85: | ||
== Visual representation == | == Visual representation == | ||
For every representation, the | For every representation except smoothstep, the '''factor = 1'''<br> | ||
For | For every representation except smoothstep, linearnullify, the '''initalValue = 1'''<br> | ||
[[File:Txtpositiveclampedsinus.png|150px]] | [[File:Txtpositiveclampedsinus.png|150px]] |
Revision as of 12:39, 13 April 2020
EvolvingNatFloat
A number generator whose return value changes over time according to a transform and factor.
Each sequential value is retrieved according to the first value and the sequence number.
To use EvolvingNatFloat, add the using statement for Vintagestory.API.MathTools.
Important note: The value of sequence should always satisfy sequence < 0
Example in code
using Vintagestory.API.MathTools;
class Example
{
Example()
{
float factor = 1;
EvolvingNatFloat evolve;
evolve = new EvolvingNatFloat(
EnumTransformFunction.CLAMPEDPOSITIVESINUS,
factor
);
float firstValue = 5;
for (float sequence = firstValue; sequence < 100; sequence++)
{
// Retrieve each sequential value
float y = evolve.nextFloat(firstValue, sequence);
}
}
}
Transform variants
Overview | |
---|---|
Name | Explanation |
clampedpositivesinus | Clamped positive sine wave function. |
cosinus | Cosine wave function. |
identical | Identical to first value. |
inverselinear | Linear change in the direction of the first value. |
linearnullify | Linear change towards zero, then clamp at zero. |
linearreduce | Linear change in the opposite direction of the first value. |
quadratic | Quadratic function. |
root | Root function. |
sinus | Sine wave function. |
smoothstep | Smooth step function. |
Visual representation
For every representation except smoothstep, the factor = 1
For every representation except smoothstep, linearnullify, the initalValue = 1