using System;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace BansheeEngine
{
/** @addtogroup Particles
* @{
*/
/// Structure used for initializing a ParticleOrbit object.
[StructLayout(LayoutKind.Sequential), SerializeObject]
public partial struct ParticleOrbitOptions
{
/// Initializes the struct with default values.
public static ParticleOrbitOptions Default()
{
ParticleOrbitOptions value = new ParticleOrbitOptions();
value.center = null;
value.velocity = null;
value.radial = new FloatDistribution(0f);
value.worldSpace = false;
return value;
}
/// Position of the center around which to orbit. Evaluated over particle system lifetime.
public Vector3Distribution center;
///
/// Determines the speed of rotation around each axis. The speed is specified in "turns" where 0 = no rotation, 0.5 =
/// 180 degree rotation and 1 = 360 degree rotation. Evaluated over particle lifetime.
///
public Vector3Distribution velocity;
///
/// Speed at which to push or pull the particles towards/away from the center. Evaluated over particle lifetime.
///
public FloatDistribution radial;
/// True if the properties provided are in world space, false if in local space.
public bool worldSpace;
}
/** @} */
}