EvolvingNatFloat: Difference between revisions

From Vintage Story Wiki
(Created page with "= EvolvingNatFloat = A number generator whose return value changes over time according a transform and factor.<br> Each sequential value is retrieved according to the first va...")
 
No edit summary
Line 1: Line 1:
= EvolvingNatFloat =
= EvolvingNatFloat =
A number generator whose return value changes over time according a transform and factor.<br>
A number generator whose return value changes over time according to a transform and factor.<br>
Each sequential value is retrieved according to the first value and the sequence number.  
Each sequential value is retrieved according to the first value and the sequence number.  



Revision as of 11:27, 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.

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, the value of factor = 1
For linearincrease, linearreduce, the initialValue = 1, -1
For every other function, the initialValue = 0

Annotatedclampedpositivesinus.png Annotatedcosinus.png Annotatedidentical.png Annotatedinverselinear.png

Annotatedlinear.png Annotatedlinearincreaseplusminus.png Annotatedlinearnullify.png Annotatedlinearreduceplusminus.png

Annotatedquadratic.png Annotatedroot.png Annotatedsinus.png Annotatedsmoothstep.png