using NativeEngine; namespace Sandbox; /// /// A SceneObject used to render particles. /// We need to be careful with what we do here, because this object is created for in-engine particles /// as well as custom scene object particles. /// With custom particles there's no automatic Simulate, or deletion.. You're completely on your own. This /// is perhaps a good thing though, it's maybe what you want to happen. To be completely isolated and completely /// in control. But at the same time maybe it's not and it's something we need to sort out. /// [Obsolete] public class SceneParticles : SceneObject { internal SceneParticles() { } internal SceneParticles( HandleCreationData _ ) { } /// /// Create scene particles. /// /// The scene world to create the particles in. /// Path to the particle system file. [Obsolete] public SceneParticles( SceneWorld world, string particleSystem ) { } /// /// Create scene particles. /// /// The scene world to create the particles in. /// Particle system resource. [Obsolete] public SceneParticles( SceneWorld world, ParticleSystem particleSystem ) { } /// /// Whether to render the particles or not. /// public bool RenderParticles { get; set; } /// /// Stop (or start) the particle system emission. /// public bool EmissionStopped { get; set; } /// /// Particle collisions use this physics world to perform traces. /// public PhysicsWorld PhysicsWorld { get; set; } /// /// Whether given control point has any data set. /// /// The control point index. Range is 0-63. public bool IsControlPointSet( int index ) => default; /// /// Returns the position set on a given control point. /// /// The control point index. Range is 0-63. public Vector3 GetControlPointPosition( int index ) => default; /// /// Set position on given control point. /// /// The control point index. Range is 0-63. /// The position to set. public void SetControlPoint( int i, Vector3 position ) { } /// /// Set rotation on given control point. /// /// The control point index. Range is 0-63. /// The rotation to set. public void SetControlPoint( int i, Rotation rotation ) { } /// /// Set transform on given control point. /// /// The control point index. Range is 0-63. /// The transform to set. public void SetControlPoint( int i, Transform transform ) { } /// /// Set snapshot on given control point. /// /// The control point index. Range is 0-63. /// The snapshot to set. public void SetControlPoint( int i, ParticleSnapshot snapshot ) { } /// /// Set model on given control point. /// /// The control point index. Range is 0-63. /// The model to set. public void SetControlPoint( int i, Model model ) { } /// /// Set vector on given named value. /// /// The name of the key. /// The value to set. public void SetNamedValue( string name, Vector3 value ) { } /// /// Simulate the particles for given amount of time. /// /// Amount of time has passed since last simulation. public void Simulate( float f ) { } internal override void OnNativeInit( CSceneObject ptr ) { } internal override void OnNativeDestroy() { } /// /// The amount of particles /// public int ActiveParticlesSelf => default; /// /// The amount of particles including child systems /// public int ActiveParticlesTotal => default; /// /// The total allowed particle count /// public int MaximumParticles => default; /// /// Manually emit a bunch of particles /// public void Emit( int count ) { } /// /// True if particle system has reached the end /// public bool Finished => default; /// /// Get or set the simulation time /// public float SimulationTime { get; set; } }