using System; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; namespace BansheeEngine { /** @addtogroup Particles * @{ */ /// Structure used for initializing a ParticleRotation object. [StructLayout(LayoutKind.Sequential), SerializeObject] public partial struct ParticleRotationOptions { /// Initializes the struct with default values. public static ParticleRotationOptions Default() { ParticleRotationOptions value = new ParticleRotationOptions(); value.rotation = new FloatDistribution(0f); value.rotation3D = null; value.use3DRotation = false; return value; } /// /// Determines the rotation of the particles in degrees, applied around the particle's local Z axis. Only used if 3D /// rotation is disabled. /// public FloatDistribution rotation; /// /// Determines the rotation of the particles in degrees as Euler angles. Only used if 3D rotation is enabled. /// public Vector3Distribution rotation3D; /// /// Determines should the particle rotation be a single angle applied around a Z axis (if disabled), or a set of Euler /// angles that allow you to rotate around every axis (if enabled). /// public bool use3DRotation; } /** @} */ }