using System; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; namespace BansheeEngine { /** @addtogroup Particles * @{ */ /// /// Particle emitter shape that emits particles from a surface of a static (non-animated) mesh. Particles can be emitted /// from mesh vertices, edges or triangles. If information about normals exists, particles will also inherit the normals. /// public partial class ParticleEmitterStaticMeshShape : ParticleEmitterShape { private ParticleEmitterStaticMeshShape(bool __dummy0) { } /// Creates a new particle emitter static mesh shape. public ParticleEmitterStaticMeshShape(ParticleStaticMeshShapeOptions desc) { Internal_create(this, ref desc); } /// Creates a new particle emitter static mesh shape. public ParticleEmitterStaticMeshShape() { Internal_create0(this); } /// Options describing the shape. public ParticleStaticMeshShapeOptions Options { get { ParticleStaticMeshShapeOptions temp; Internal_getOptions(mCachedPtr, out temp); return temp; } set { Internal_setOptions(mCachedPtr, ref value); } } [MethodImpl(MethodImplOptions.InternalCall)] private static extern void Internal_setOptions(IntPtr thisPtr, ref ParticleStaticMeshShapeOptions options); [MethodImpl(MethodImplOptions.InternalCall)] private static extern void Internal_getOptions(IntPtr thisPtr, out ParticleStaticMeshShapeOptions __output); [MethodImpl(MethodImplOptions.InternalCall)] private static extern void Internal_create(ParticleEmitterStaticMeshShape managedInstance, ref ParticleStaticMeshShapeOptions desc); [MethodImpl(MethodImplOptions.InternalCall)] private static extern void Internal_create0(ParticleEmitterStaticMeshShape managedInstance); } /** @} */ }