| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433 |
- using System;
- using System.Runtime.CompilerServices;
- using System.Runtime.InteropServices;
- namespace BansheeEngine
- {
- /** @addtogroup Particles
- * @{
- */
- /// <summary>Specifies a value as a distribution, which can include a constant value, random range or a curve.</summary>
- public partial class FloatDistribution : ScriptObject
- {
- private FloatDistribution(bool __dummy0) { }
- /// <summary>Creates a new empty distribution.</summary>
- public FloatDistribution()
- {
- Internal_TDistribution(this);
- }
- /// <summary>Creates a new distribution that returns a constant value.</summary>
- public FloatDistribution(float value)
- {
- Internal_TDistribution0(this, value);
- }
- /// <summary>Creates a new distribution that returns a random value in the specified range.</summary>
- public FloatDistribution(float minValue, float maxValue)
- {
- Internal_TDistribution1(this, minValue, maxValue);
- }
- /// <summary>Creates a new distribution that evaluates a curve.</summary>
- public FloatDistribution(AnimationCurve curve)
- {
- Internal_TDistribution2(this, curve);
- }
- /// <summary>Creates a new distribution that returns a random value in a range determined by two curves.</summary>
- public FloatDistribution(AnimationCurve minCurve, AnimationCurve maxCurve)
- {
- Internal_TDistribution3(this, minCurve, maxCurve);
- }
- /// <summary>Returns the type of the represented distribution.</summary>
- public PropertyDistributionType DistributionType
- {
- get { return Internal_getType(mCachedPtr); }
- }
- /// <summary>
- /// Returns the constant value of the distribution, or the minimal value of a constant range. Undefined if the
- /// distribution is represented by a curve.
- /// </summary>
- public float GetMinConstant()
- {
- return Internal_getMinConstant(mCachedPtr);
- }
- /// <summary>
- /// Returns the maximum value of a constant range. Only defined if the distribution represents a non-curve range.
- /// </summary>
- public float GetMaxConstant()
- {
- return Internal_getMaxConstant(mCachedPtr);
- }
- /// <summary>
- /// Returns the curve representing the distribution, or the first curve representing a curve range. Undefined if the
- /// distribution is represented by a constant or a non-curve range.
- /// </summary>
- public AnimationCurve GetMinCurve()
- {
- return Internal_getMinCurve(mCachedPtr);
- }
- /// <summary>
- /// Returns the curve representing the second curve of a curve range. Only defined if the distribution represents a curve
- /// range.
- /// </summary>
- public AnimationCurve GetMaxCurve()
- {
- return Internal_getMaxCurve(mCachedPtr);
- }
- /// <summary>Evaluates the value of the distribution.</summary>
- /// <param name="t">
- /// Time at which to evaluate the distribution. This is only relevant if the distribution contains curves.
- /// </param>
- /// <param name="factor">
- /// Value in range [0, 1] that determines how to interpolate between min/max value, if the distribution represents a
- /// range. Value of 0 will return the minimum value, while value of 1 will return the maximum value, and interpolate the
- /// values in-between.
- /// </param>
- /// <returns>Evaluated value.</returns>
- public float Evaluate(float t, float factor)
- {
- return Internal_evaluate(mCachedPtr, t, factor);
- }
- /// <summary>Evaluates the value of the distribution.</summary>
- /// <param name="t">
- /// Time at which to evaluate the distribution. This is only relevant if the distribution contains curves.
- /// </param>
- /// <param name="factor">
- /// Random number generator that determines the factor. Factor determines how to interpolate between min/max value, if
- /// the distribution represents a range.
- /// </param>
- /// <returns>Evaluated value.</returns>
- public float Evaluate(float t, Random factor)
- {
- return Internal_evaluate0(mCachedPtr, t, factor);
- }
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern void Internal_TDistribution(FloatDistribution managedInstance);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern void Internal_TDistribution0(FloatDistribution managedInstance, float value);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern void Internal_TDistribution1(FloatDistribution managedInstance, float minValue, float maxValue);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern void Internal_TDistribution2(FloatDistribution managedInstance, AnimationCurve curve);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern void Internal_TDistribution3(FloatDistribution managedInstance, AnimationCurve minCurve, AnimationCurve maxCurve);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern PropertyDistributionType Internal_getType(IntPtr thisPtr);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern float Internal_getMinConstant(IntPtr thisPtr);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern float Internal_getMaxConstant(IntPtr thisPtr);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern AnimationCurve Internal_getMinCurve(IntPtr thisPtr);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern AnimationCurve Internal_getMaxCurve(IntPtr thisPtr);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern float Internal_evaluate(IntPtr thisPtr, float t, float factor);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern float Internal_evaluate0(IntPtr thisPtr, float t, Random factor);
- }
- /** @} */
- /** @addtogroup Particles
- * @{
- */
- /// <summary>Specifies a value as a distribution, which can include a constant value, random range or a curve.</summary>
- public partial class Vector3Distribution : ScriptObject
- {
- private Vector3Distribution(bool __dummy0) { }
- /// <summary>Creates a new empty distribution.</summary>
- public Vector3Distribution()
- {
- Internal_TDistribution(this);
- }
- /// <summary>Creates a new distribution that returns a constant value.</summary>
- public Vector3Distribution(Vector3 value)
- {
- Internal_TDistribution0(this, ref value);
- }
- /// <summary>Creates a new distribution that returns a random value in the specified range.</summary>
- public Vector3Distribution(Vector3 minValue, Vector3 maxValue)
- {
- Internal_TDistribution1(this, ref minValue, ref maxValue);
- }
- /// <summary>Creates a new distribution that evaluates a curve.</summary>
- public Vector3Distribution(Vector3Curve curve)
- {
- Internal_TDistribution2(this, curve);
- }
- /// <summary>Creates a new distribution that returns a random value in a range determined by two curves.</summary>
- public Vector3Distribution(Vector3Curve minCurve, Vector3Curve maxCurve)
- {
- Internal_TDistribution3(this, minCurve, maxCurve);
- }
- /// <summary>Returns the type of the represented distribution.</summary>
- public PropertyDistributionType DistributionType
- {
- get { return Internal_getType(mCachedPtr); }
- }
- /// <summary>
- /// Returns the constant value of the distribution, or the minimal value of a constant range. Undefined if the
- /// distribution is represented by a curve.
- /// </summary>
- public Vector3 GetMinConstant()
- {
- Vector3 temp;
- Internal_getMinConstant(mCachedPtr, out temp);
- return temp;
- }
- /// <summary>
- /// Returns the maximum value of a constant range. Only defined if the distribution represents a non-curve range.
- /// </summary>
- public Vector3 GetMaxConstant()
- {
- Vector3 temp;
- Internal_getMaxConstant(mCachedPtr, out temp);
- return temp;
- }
- /// <summary>
- /// Returns the curve representing the distribution, or the first curve representing a curve range. Undefined if the
- /// distribution is represented by a constant or a non-curve range.
- /// </summary>
- public Vector3Curve GetMinCurve()
- {
- return Internal_getMinCurve(mCachedPtr);
- }
- /// <summary>
- /// Returns the curve representing the second curve of a curve range. Only defined if the distribution represents a curve
- /// range.
- /// </summary>
- public Vector3Curve GetMaxCurve()
- {
- return Internal_getMaxCurve(mCachedPtr);
- }
- /// <summary>Evaluates the value of the distribution.</summary>
- /// <param name="t">
- /// Time at which to evaluate the distribution. This is only relevant if the distribution contains curves.
- /// </param>
- /// <param name="factor">
- /// Value in range [0, 1] that determines how to interpolate between min/max value, if the distribution represents a
- /// range. Value of 0 will return the minimum value, while value of 1 will return the maximum value, and interpolate the
- /// values in-between.
- /// </param>
- /// <returns>Evaluated value.</returns>
- public Vector3 Evaluate(float t, float factor)
- {
- Vector3 temp;
- Internal_evaluate(mCachedPtr, t, factor, out temp);
- return temp;
- }
- /// <summary>Evaluates the value of the distribution.</summary>
- /// <param name="t">
- /// Time at which to evaluate the distribution. This is only relevant if the distribution contains curves.
- /// </param>
- /// <param name="factor">
- /// Random number generator that determines the factor. Factor determines how to interpolate between min/max value, if
- /// the distribution represents a range.
- /// </param>
- /// <returns>Evaluated value.</returns>
- public Vector3 Evaluate(float t, Random factor)
- {
- Vector3 temp;
- Internal_evaluate0(mCachedPtr, t, factor, out temp);
- return temp;
- }
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern void Internal_TDistribution(Vector3Distribution managedInstance);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern void Internal_TDistribution0(Vector3Distribution managedInstance, ref Vector3 value);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern void Internal_TDistribution1(Vector3Distribution managedInstance, ref Vector3 minValue, ref Vector3 maxValue);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern void Internal_TDistribution2(Vector3Distribution managedInstance, Vector3Curve curve);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern void Internal_TDistribution3(Vector3Distribution managedInstance, Vector3Curve minCurve, Vector3Curve maxCurve);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern PropertyDistributionType Internal_getType(IntPtr thisPtr);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern void Internal_getMinConstant(IntPtr thisPtr, out Vector3 __output);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern void Internal_getMaxConstant(IntPtr thisPtr, out Vector3 __output);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern Vector3Curve Internal_getMinCurve(IntPtr thisPtr);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern Vector3Curve Internal_getMaxCurve(IntPtr thisPtr);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern void Internal_evaluate(IntPtr thisPtr, float t, float factor, out Vector3 __output);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern void Internal_evaluate0(IntPtr thisPtr, float t, Random factor, out Vector3 __output);
- }
- /** @} */
- /** @addtogroup Particles
- * @{
- */
- /// <summary>Specifies a value as a distribution, which can include a constant value, random range or a curve.</summary>
- public partial class Vector2Distribution : ScriptObject
- {
- private Vector2Distribution(bool __dummy0) { }
- /// <summary>Creates a new empty distribution.</summary>
- public Vector2Distribution()
- {
- Internal_TDistribution(this);
- }
- /// <summary>Creates a new distribution that returns a constant value.</summary>
- public Vector2Distribution(Vector2 value)
- {
- Internal_TDistribution0(this, ref value);
- }
- /// <summary>Creates a new distribution that returns a random value in the specified range.</summary>
- public Vector2Distribution(Vector2 minValue, Vector2 maxValue)
- {
- Internal_TDistribution1(this, ref minValue, ref maxValue);
- }
- /// <summary>Creates a new distribution that evaluates a curve.</summary>
- public Vector2Distribution(Vector2Curve curve)
- {
- Internal_TDistribution2(this, curve);
- }
- /// <summary>Creates a new distribution that returns a random value in a range determined by two curves.</summary>
- public Vector2Distribution(Vector2Curve minCurve, Vector2Curve maxCurve)
- {
- Internal_TDistribution3(this, minCurve, maxCurve);
- }
- /// <summary>Returns the type of the represented distribution.</summary>
- public PropertyDistributionType DistributionType
- {
- get { return Internal_getType(mCachedPtr); }
- }
- /// <summary>
- /// Returns the constant value of the distribution, or the minimal value of a constant range. Undefined if the
- /// distribution is represented by a curve.
- /// </summary>
- public Vector2 GetMinConstant()
- {
- Vector2 temp;
- Internal_getMinConstant(mCachedPtr, out temp);
- return temp;
- }
- /// <summary>
- /// Returns the maximum value of a constant range. Only defined if the distribution represents a non-curve range.
- /// </summary>
- public Vector2 GetMaxConstant()
- {
- Vector2 temp;
- Internal_getMaxConstant(mCachedPtr, out temp);
- return temp;
- }
- /// <summary>
- /// Returns the curve representing the distribution, or the first curve representing a curve range. Undefined if the
- /// distribution is represented by a constant or a non-curve range.
- /// </summary>
- public Vector2Curve GetMinCurve()
- {
- return Internal_getMinCurve(mCachedPtr);
- }
- /// <summary>
- /// Returns the curve representing the second curve of a curve range. Only defined if the distribution represents a curve
- /// range.
- /// </summary>
- public Vector2Curve GetMaxCurve()
- {
- return Internal_getMaxCurve(mCachedPtr);
- }
- /// <summary>Evaluates the value of the distribution.</summary>
- /// <param name="t">
- /// Time at which to evaluate the distribution. This is only relevant if the distribution contains curves.
- /// </param>
- /// <param name="factor">
- /// Value in range [0, 1] that determines how to interpolate between min/max value, if the distribution represents a
- /// range. Value of 0 will return the minimum value, while value of 1 will return the maximum value, and interpolate the
- /// values in-between.
- /// </param>
- /// <returns>Evaluated value.</returns>
- public Vector2 Evaluate(float t, float factor)
- {
- Vector2 temp;
- Internal_evaluate(mCachedPtr, t, factor, out temp);
- return temp;
- }
- /// <summary>Evaluates the value of the distribution.</summary>
- /// <param name="t">
- /// Time at which to evaluate the distribution. This is only relevant if the distribution contains curves.
- /// </param>
- /// <param name="factor">
- /// Random number generator that determines the factor. Factor determines how to interpolate between min/max value, if
- /// the distribution represents a range.
- /// </param>
- /// <returns>Evaluated value.</returns>
- public Vector2 Evaluate(float t, Random factor)
- {
- Vector2 temp;
- Internal_evaluate0(mCachedPtr, t, factor, out temp);
- return temp;
- }
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern void Internal_TDistribution(Vector2Distribution managedInstance);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern void Internal_TDistribution0(Vector2Distribution managedInstance, ref Vector2 value);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern void Internal_TDistribution1(Vector2Distribution managedInstance, ref Vector2 minValue, ref Vector2 maxValue);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern void Internal_TDistribution2(Vector2Distribution managedInstance, Vector2Curve curve);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern void Internal_TDistribution3(Vector2Distribution managedInstance, Vector2Curve minCurve, Vector2Curve maxCurve);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern PropertyDistributionType Internal_getType(IntPtr thisPtr);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern void Internal_getMinConstant(IntPtr thisPtr, out Vector2 __output);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern void Internal_getMaxConstant(IntPtr thisPtr, out Vector2 __output);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern Vector2Curve Internal_getMinCurve(IntPtr thisPtr);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern Vector2Curve Internal_getMaxCurve(IntPtr thisPtr);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern void Internal_evaluate(IntPtr thisPtr, float t, float factor, out Vector2 __output);
- [MethodImpl(MethodImplOptions.InternalCall)]
- private static extern void Internal_evaluate0(IntPtr thisPtr, float t, Random factor, out Vector2 __output);
- }
- /** @} */
- }
|