ParticleProcessMaterial

package
v0.0.0-...-fe0704e Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 19, 2025 License: MIT Imports: 29 Imported by: 0

Documentation

Overview

ParticleProcessMaterial defines particle properties and behavior. It is used in the process_material of the GPUParticles2D and GPUParticles3D nodes. Some of this material's properties are applied to each particle when emitted, while others can have a CurveTexture or a GradientTexture1D applied to vary numerical or color values over the lifetime of the particle.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Advanced

type Advanced = class

Advanced exposes a 1:1 low-level instance of the class, undocumented, for those who know what they are doing.

type Any

type Any interface {
	gd.IsClass
	AsParticleProcessMaterial() Instance
}

type CollisionMode

type CollisionMode int //gd:ParticleProcessMaterial.CollisionMode
const (
	// No collision for particles. Particles will go through [GPUParticlesCollision3D] nodes.
	//
	// [GPUParticlesCollision3D]: https://pkg.go.dev/graphics.gd/classdb/GPUParticlesCollision3D
	CollisionDisabled CollisionMode = 0
	// [RigidBody3D]-style collision for particles using [GPUParticlesCollision3D] nodes.
	//
	// [GPUParticlesCollision3D]: https://pkg.go.dev/graphics.gd/classdb/GPUParticlesCollision3D
	// [RigidBody3D]: https://pkg.go.dev/graphics.gd/classdb/RigidBody3D
	CollisionRigid CollisionMode = 1
	// Hide particles instantly when colliding with a [GPUParticlesCollision3D] node. This can be combined with a subemitter that uses the [CollisionRigid] collision mode to "replace" the parent particle with the subemitter on impact.
	//
	// [GPUParticlesCollision3D]: https://pkg.go.dev/graphics.gd/classdb/GPUParticlesCollision3D
	CollisionHideOnContact CollisionMode = 2
	// Represents the size of the [CollisionMode] enum.
	CollisionMax CollisionMode = 3
)

type EmissionShape

type EmissionShape int //gd:ParticleProcessMaterial.EmissionShape
const (
	// All particles will be emitted from a single point.
	EmissionShapePoint EmissionShape = 0
	// Particles will be emitted in the volume of a sphere.
	EmissionShapeSphere EmissionShape = 1
	// Particles will be emitted on the surface of a sphere.
	EmissionShapeSphereSurface EmissionShape = 2
	// Particles will be emitted in the volume of a box.
	EmissionShapeBox EmissionShape = 3
	// Particles will be emitted at a position determined by sampling a random point on the [EmissionPointTexture]. Particle color will be modulated by [EmissionColorTexture].
	//
	// [EmissionColorTexture]: https://pkg.go.dev/graphics.gd/classdb/#Instance.EmissionColorTexture
	// [EmissionPointTexture]: https://pkg.go.dev/graphics.gd/classdb/#Instance.EmissionPointTexture
	EmissionShapePoints EmissionShape = 4
	// Particles will be emitted at a position determined by sampling a random point on the [EmissionPointTexture]. Particle velocity and rotation will be set based on [EmissionNormalTexture]. Particle color will be modulated by [EmissionColorTexture].
	//
	// [EmissionColorTexture]: https://pkg.go.dev/graphics.gd/classdb/#Instance.EmissionColorTexture
	// [EmissionNormalTexture]: https://pkg.go.dev/graphics.gd/classdb/#Instance.EmissionNormalTexture
	// [EmissionPointTexture]: https://pkg.go.dev/graphics.gd/classdb/#Instance.EmissionPointTexture
	EmissionShapeDirectedPoints EmissionShape = 5
	// Particles will be emitted in a ring or cylinder.
	EmissionShapeRing EmissionShape = 6
	// Represents the size of the [EmissionShape] enum.
	EmissionShapeMax EmissionShape = 7
)

type Extension

type Extension[T gdclass.Interface] struct{ gdclass.Extension[T, Instance] }

Extension can be embedded in a new struct to create an extension of this class. T should be the type that is embedding this Extension

func (*Extension[T]) AsMaterial

func (self *Extension[T]) AsMaterial() Material.Instance

func (*Extension[T]) AsObject

func (self *Extension[T]) AsObject() [1]gd.Object

func (*Extension[T]) AsParticleProcessMaterial

func (self *Extension[T]) AsParticleProcessMaterial() Instance

func (*Extension[T]) AsRefCounted

func (self *Extension[T]) AsRefCounted() [1]gd.RefCounted

func (*Extension[T]) AsResource

func (self *Extension[T]) AsResource() Resource.Instance

type ID

type ID Object.ID

ID is a typed object ID (reference) to an instance of this class, use it to store references to objects with unknown lifetimes, as an ID will not panic on use if the underlying object has been destroyed.

func (ID) Instance

func (id ID) Instance() (Instance, bool)

type Instance

type Instance [1]gdclass.ParticleProcessMaterial

Instance of the class with convieniently typed arguments and results.

var Nil Instance

Nil is a nil/null instance of the class. Equivalent to the zero value.

func New

func New() Instance

func (Instance) AlphaCurve

func (self Instance) AlphaCurve() Texture2D.Instance

The alpha value of each particle's color will be multiplied by this CurveTexture over its lifetime.

Note: AlphaCurve multiplies the particle mesh's vertex colors. To have a visible effect on a BaseMaterial3D, BaseMaterial3D.VertexColorUseAsAlbedo must be true. For a ShaderMaterial, ALBEDO *= COLOR.rgb; must be inserted in the shader's fragment() function. Otherwise, AlphaCurve will have no visible effect.

func (Instance) Angle

func (self Instance) Angle() Vector2.XY

func (Instance) AngleCurve

func (self Instance) AngleCurve() Texture2D.Instance

Each particle's rotation will be animated along this CurveTexture.

func (Instance) AngleMax

func (self Instance) AngleMax() Angle.Radians

Maximum initial rotation applied to each particle, in degrees.

Only applied when ParticleFlagDisableZ or ParticleFlagRotateY are true or the BaseMaterial3D being used to draw the particle is using [Basematerial3d.BillboardParticles].

func (Instance) AngleMin

func (self Instance) AngleMin() Angle.Radians

Minimum equivalent of AngleMax.

func (Instance) AngularVelocity

func (self Instance) AngularVelocity() Vector2.XY

func (Instance) AngularVelocityCurve

func (self Instance) AngularVelocityCurve() Texture2D.Instance

Each particle's angular velocity (rotation speed) will vary along this CurveTexture over its lifetime.

func (Instance) AngularVelocityMax

func (self Instance) AngularVelocityMax() Float.X

Maximum initial angular velocity (rotation speed) applied to each particle in degrees per second.

Only applied when ParticleFlagDisableZ or ParticleFlagRotateY are true or the BaseMaterial3D being used to draw the particle is using [Basematerial3d.BillboardParticles].

func (Instance) AngularVelocityMin

func (self Instance) AngularVelocityMin() Float.X

Minimum equivalent of AngularVelocityMax.

func (Instance) AnimOffset

func (self Instance) AnimOffset() Vector2.XY

func (Instance) AnimOffsetCurve

func (self Instance) AnimOffsetCurve() Texture2D.Instance

Each particle's animation offset will vary along this CurveTexture.

func (Instance) AnimOffsetMax

func (self Instance) AnimOffsetMax() Float.X

Maximum animation offset that corresponds to frame index in the texture. 0 is the first frame, 1 is the last one. See CanvasItemMaterial.ParticlesAnimation.

func (Instance) AnimOffsetMin

func (self Instance) AnimOffsetMin() Float.X

Minimum equivalent of AnimOffsetMax.

func (Instance) AnimSpeed

func (self Instance) AnimSpeed() Vector2.XY

func (Instance) AnimSpeedCurve

func (self Instance) AnimSpeedCurve() Texture2D.Instance

Each particle's animation speed will vary along this CurveTexture.

func (Instance) AnimSpeedMax

func (self Instance) AnimSpeedMax() Float.X

Maximum particle animation speed. Animation speed of 1 means that the particles will make full 0 to 1 offset cycle during lifetime, 2 means 2 cycles etc.

With animation speed greater than 1, remember to enable CanvasItemMaterial.ParticlesAnimLoop property if you want the animation to repeat.

func (Instance) AnimSpeedMin

func (self Instance) AnimSpeedMin() Float.X

Minimum equivalent of AnimSpeedMax.

func (Instance) AsMaterial

func (self Instance) AsMaterial() Material.Instance

func (Instance) AsObject

func (self Instance) AsObject() [1]gd.Object

func (Instance) AsParticleProcessMaterial

func (self Instance) AsParticleProcessMaterial() Instance

func (Instance) AsRefCounted

func (self Instance) AsRefCounted() [1]gd.RefCounted

func (Instance) AsResource

func (self Instance) AsResource() Resource.Instance

func (Instance) AttractorInteractionEnabled

func (self Instance) AttractorInteractionEnabled() bool

If true, interaction with particle attractors is enabled. In 3D, attraction only occurs within the area defined by the GPUParticles3D node's GPUParticles3D.VisibilityAabb.

func (Instance) CollisionBounce

func (self Instance) CollisionBounce() Float.X

The particles' bounciness. Values range from 0 (no bounce) to 1 (full bounciness). Only effective if CollisionMode is CollisionRigid.

func (Instance) CollisionFriction

func (self Instance) CollisionFriction() Float.X

The particles' friction. Values range from 0 (frictionless) to 1 (maximum friction). Only effective if CollisionMode is CollisionRigid.

func (Instance) CollisionMode

func (self Instance) CollisionMode() CollisionMode

The particles' collision mode.

Note: 3D Particles can only collide with GPUParticlesCollision3D nodes, not PhysicsBody3D nodes. To make particles collide with various objects, you can add GPUParticlesCollision3D nodes as children of PhysicsBody3D nodes. In 3D, collisions only occur within the area defined by the GPUParticles3D node's GPUParticles3D.VisibilityAabb.

Note: 2D Particles can only collide with LightOccluder2D nodes, not PhysicsBody2D nodes.

func (Instance) CollisionUseScale

func (self Instance) CollisionUseScale() bool

If true, GPUParticles3D.CollisionBaseSize is multiplied by the particle's effective scale (see ScaleMin, ScaleMax, ScaleCurve, and ScaleOverVelocityCurve).

func (Instance) Color

func (self Instance) Color() Color.RGBA

Each particle's initial color. If the GPUParticles2D's texture is defined, it will be multiplied by this color.

Note: Color multiplies the particle mesh's vertex colors. To have a visible effect on a BaseMaterial3D, BaseMaterial3D.VertexColorUseAsAlbedo must be true. For a ShaderMaterial, ALBEDO *= COLOR.rgb; must be inserted in the shader's fragment() function. Otherwise, Color will have no visible effect.

func (Instance) ColorInitialRamp

func (self Instance) ColorInitialRamp() Texture2D.Instance

Each particle's initial color will vary along this GradientTexture1D (multiplied with Color).

Note: ColorInitialRamp multiplies the particle mesh's vertex colors. To have a visible effect on a BaseMaterial3D, BaseMaterial3D.VertexColorUseAsAlbedo must be true. For a ShaderMaterial, ALBEDO *= COLOR.rgb; must be inserted in the shader's fragment() function. Otherwise, ColorInitialRamp will have no visible effect.

func (Instance) ColorRamp

func (self Instance) ColorRamp() Texture2D.Instance

Each particle's color will vary along this GradientTexture1D over its lifetime (multiplied with Color).

Note: ColorRamp multiplies the particle mesh's vertex colors. To have a visible effect on a BaseMaterial3D, BaseMaterial3D.VertexColorUseAsAlbedo must be true. For a ShaderMaterial, ALBEDO *= COLOR.rgb; must be inserted in the shader's fragment() function. Otherwise, ColorRamp will have no visible effect.

func (Instance) Damping

func (self Instance) Damping() Vector2.XY

func (Instance) DampingCurve

func (self Instance) DampingCurve() Texture2D.Instance

Damping will vary along this CurveTexture.

func (Instance) DampingMax

func (self Instance) DampingMax() Float.X

The maximum rate at which particles lose velocity. For example value of 100 means that the particle will go from 100 velocity to 0 in 1 second.

func (Instance) DampingMin

func (self Instance) DampingMin() Float.X

Minimum equivalent of DampingMax.

func (Instance) Direction

func (self Instance) Direction() Vector3.XYZ

Unit vector specifying the particles' emission direction.

func (Instance) DirectionalVelocity

func (self Instance) DirectionalVelocity() Vector2.XY

func (Instance) DirectionalVelocityCurve

func (self Instance) DirectionalVelocityCurve() Texture2D.Instance

A curve that specifies the velocity along each of the axes of the particle system along its lifetime.

Note: Animated velocities will not be affected by damping, use VelocityLimitCurve instead.

func (Instance) DirectionalVelocityMax

func (self Instance) DirectionalVelocityMax() Float.X

Maximum directional velocity value, which is multiplied by DirectionalVelocityCurve.

Note: Animated velocities will not be affected by damping, use VelocityLimitCurve instead.

func (Instance) DirectionalVelocityMin

func (self Instance) DirectionalVelocityMin() Float.X

Minimum directional velocity value, which is multiplied by DirectionalVelocityCurve.

Note: Animated velocities will not be affected by damping, use VelocityLimitCurve instead.

func (Instance) EmissionBoxExtents

func (self Instance) EmissionBoxExtents() Vector3.XYZ

The box's extents if EmissionShape is set to EmissionShapeBox.

Note: EmissionBoxExtents starts from the center point and applies the X, Y, and Z values in both directions. The size is twice the area of the extents.

func (Instance) EmissionColorTexture

func (self Instance) EmissionColorTexture() Texture2D.Instance

Particle color will be modulated by color determined by sampling this texture at the same point as the EmissionPointTexture.

Note: EmissionColorTexture multiplies the particle mesh's vertex colors. To have a visible effect on a BaseMaterial3D, BaseMaterial3D.VertexColorUseAsAlbedo must be true. For a ShaderMaterial, ALBEDO *= COLOR.rgb; must be inserted in the shader's fragment() function. Otherwise, EmissionColorTexture will have no visible effect.

func (Instance) EmissionCurve

func (self Instance) EmissionCurve() Texture2D.Instance

Each particle's color will be multiplied by this CurveTexture over its lifetime.

Note: EmissionCurve multiplies the particle mesh's vertex colors. To have a visible effect on a BaseMaterial3D, BaseMaterial3D.VertexColorUseAsAlbedo must be true. For a ShaderMaterial, ALBEDO *= COLOR.rgb; must be inserted in the shader's fragment() function. Otherwise, EmissionCurve will have no visible effect.

func (Instance) EmissionNormalTexture

func (self Instance) EmissionNormalTexture() Texture2D.Instance

Particle velocity and rotation will be set by sampling this texture at the same point as the EmissionPointTexture. Used only in EmissionShapeDirectedPoints. Can be created automatically from mesh or node by selecting "Create Emission Points from Mesh/Node" under the "Particles" tool in the toolbar.

func (Instance) EmissionPointCount

func (self Instance) EmissionPointCount() int

The number of emission points if EmissionShape is set to EmissionShapePoints or EmissionShapeDirectedPoints.

func (Instance) EmissionPointTexture

func (self Instance) EmissionPointTexture() Texture2D.Instance

Particles will be emitted at positions determined by sampling this texture at a random position. Used with EmissionShapePoints and EmissionShapeDirectedPoints. Can be created automatically from mesh or node by selecting "Create Emission Points from Mesh/Node" under the "Particles" tool in the toolbar.

func (Instance) EmissionRingAxis

func (self Instance) EmissionRingAxis() Vector3.XYZ

The axis of the ring when using the emitter EmissionShapeRing.

func (Instance) EmissionRingConeAngle

func (self Instance) EmissionRingConeAngle() Angle.Radians

The angle of the cone when using the emitter EmissionShapeRing. The default angle of 90 degrees results in a ring, while an angle of 0 degrees results in a cone. Intermediate values will result in a ring where one end is larger than the other.

Note: Depending on EmissionRingHeight, the angle may be clamped if the ring's end is reached to form a perfect cone.

func (Instance) EmissionRingHeight

func (self Instance) EmissionRingHeight() Float.X

The height of the ring when using the emitter EmissionShapeRing.

func (Instance) EmissionRingInnerRadius

func (self Instance) EmissionRingInnerRadius() Float.X

The inner radius of the ring when using the emitter EmissionShapeRing.

func (Instance) EmissionRingRadius

func (self Instance) EmissionRingRadius() Float.X

The radius of the ring when using the emitter EmissionShapeRing.

func (Instance) EmissionShape

func (self Instance) EmissionShape() EmissionShape

Particles will be emitted inside this region.

func (Instance) EmissionShapeOffset

func (self Instance) EmissionShapeOffset() Vector3.XYZ

The offset for the EmissionShape, in local space.

func (Instance) EmissionShapeScale

func (self Instance) EmissionShapeScale() Vector3.XYZ

The scale of the EmissionShape, in local space.

func (Instance) EmissionSphereRadius

func (self Instance) EmissionSphereRadius() Float.X

The sphere's radius if EmissionShape is set to EmissionShapeSphere.

func (Instance) Flatness

func (self Instance) Flatness() Float.X

Amount of Spread along the Y axis.

func (Instance) Gravity

func (self Instance) Gravity() Vector3.XYZ

Gravity applied to every particle.

func (Instance) HueVariation

func (self Instance) HueVariation() Vector2.XY

func (Instance) HueVariationCurve

func (self Instance) HueVariationCurve() Texture2D.Instance

Each particle's hue will vary along this CurveTexture.

func (Instance) HueVariationMax

func (self Instance) HueVariationMax() Float.X

Maximum initial hue variation applied to each particle. It will shift the particle color's hue.

func (Instance) HueVariationMin

func (self Instance) HueVariationMin() Float.X

Minimum equivalent of HueVariationMax.

func (Instance) ID

func (self Instance) ID() ID

func (Instance) InheritVelocityRatio

func (self Instance) InheritVelocityRatio() Float.X

Percentage of the velocity of the respective GPUParticles2D or GPUParticles3D inherited by each particle when spawning.

func (Instance) InitialVelocity

func (self Instance) InitialVelocity() Vector2.XY

func (Instance) InitialVelocityMax

func (self Instance) InitialVelocityMax() Float.X

Maximum initial velocity magnitude for each particle. Direction comes from Direction and Spread.

func (Instance) InitialVelocityMin

func (self Instance) InitialVelocityMin() Float.X

Minimum equivalent of InitialVelocityMax.

func (Instance) LifetimeRandomness

func (self Instance) LifetimeRandomness() Float.X

Particle lifetime randomness ratio. The equation for the lifetime of a particle is lifetime * (1.0 - randf() * lifetime_randomness). For example, a LifetimeRandomness of 0.4 scales the lifetime between 0.6 to 1.0 of its original value.

func (Instance) LinearAccel

func (self Instance) LinearAccel() Vector2.XY

func (Instance) LinearAccelCurve

func (self Instance) LinearAccelCurve() Texture2D.Instance

Each particle's linear acceleration will vary along this CurveTexture.

func (Instance) LinearAccelMax

func (self Instance) LinearAccelMax() Float.X

Maximum linear acceleration applied to each particle in the direction of motion.

func (Instance) LinearAccelMin

func (self Instance) LinearAccelMin() Float.X

Minimum equivalent of LinearAccelMax.

func (Instance) OnEmissionShapeChanged

func (self Instance) OnEmissionShapeChanged(cb func(), flags ...Signal.Flags)

Emitted when this material's emission shape is changed in any way. This includes changes to EmissionShape, EmissionShapeScale, or EmissionSphereRadius, and any other property that affects the emission shape's offset, size, scale, or orientation.

Note: This signal is only emitted inside the editor for performance reasons.

func (Instance) OrbitVelocity

func (self Instance) OrbitVelocity() Vector2.XY

func (Instance) OrbitVelocityCurve

func (self Instance) OrbitVelocityCurve() Texture2D.Instance

Each particle's orbital velocity will vary along this CurveTexture.

Note: For 3D orbital velocity, use a CurveXYZTexture.

Note: Animated velocities will not be affected by damping, use VelocityLimitCurve instead.

func (Instance) OrbitVelocityMax

func (self Instance) OrbitVelocityMax() Float.X

Maximum orbital velocity applied to each particle. Makes the particles circle around origin. Specified in number of full rotations around origin per second.

Note: Animated velocities will not be affected by damping, use VelocityLimitCurve instead.

func (Instance) OrbitVelocityMin

func (self Instance) OrbitVelocityMin() Float.X

Minimum equivalent of OrbitVelocityMax.

Note: Animated velocities will not be affected by damping, use VelocityLimitCurve instead.

func (Instance) ParticleFlagAlignY

func (self Instance) ParticleFlagAlignY() bool

Align Y axis of particle with the direction of its velocity.

func (Instance) ParticleFlagDampingAsFriction

func (self Instance) ParticleFlagDampingAsFriction() bool

Changes the behavior of the damping properties from a linear deceleration to a deceleration based on speed percentage.

func (Instance) ParticleFlagDisableZ

func (self Instance) ParticleFlagDisableZ() bool

If true, particles will not move on the z axis.

func (Instance) ParticleFlagRotateY

func (self Instance) ParticleFlagRotateY() bool

If true, particles rotate around Y axis by AngleMin.

func (Instance) RadialAccel

func (self Instance) RadialAccel() Vector2.XY

func (Instance) RadialAccelCurve

func (self Instance) RadialAccelCurve() Texture2D.Instance

Each particle's radial acceleration will vary along this CurveTexture.

func (Instance) RadialAccelMax

func (self Instance) RadialAccelMax() Float.X

Maximum radial acceleration applied to each particle. Makes particle accelerate away from the origin or towards it if negative.

func (Instance) RadialAccelMin

func (self Instance) RadialAccelMin() Float.X

Minimum equivalent of RadialAccelMax.

func (Instance) RadialVelocity

func (self Instance) RadialVelocity() Vector2.XY

func (Instance) RadialVelocityCurve

func (self Instance) RadialVelocityCurve() Texture2D.Instance

A CurveTexture that defines the velocity over the particle's lifetime away (or toward) the VelocityPivot.

Note: Animated velocities will not be affected by damping, use VelocityLimitCurve instead.

func (Instance) RadialVelocityMax

func (self Instance) RadialVelocityMax() Float.X

Maximum radial velocity applied to each particle. Makes particles move away from the VelocityPivot, or toward it if negative.

Note: Animated velocities will not be affected by damping, use VelocityLimitCurve instead.

func (Instance) RadialVelocityMin

func (self Instance) RadialVelocityMin() Float.X

Minimum radial velocity applied to each particle. Makes particles move away from the VelocityPivot, or toward it if negative.

Note: Animated velocities will not be affected by damping, use VelocityLimitCurve instead.

func (Instance) Scale

func (self Instance) Scale() Vector2.XY

func (Instance) ScaleCurve

func (self Instance) ScaleCurve() Texture2D.Instance

Each particle's scale will vary along this CurveTexture over its lifetime. If a CurveXYZTexture is supplied instead, the scale will be separated per-axis.

func (Instance) ScaleMax

func (self Instance) ScaleMax() Float.X

Maximum initial scale applied to each particle.

func (Instance) ScaleMin

func (self Instance) ScaleMin() Float.X

Minimum equivalent of ScaleMax.

func (Instance) ScaleOverVelocity

func (self Instance) ScaleOverVelocity() Vector2.XY

func (Instance) ScaleOverVelocityCurve

func (self Instance) ScaleOverVelocityCurve() Texture2D.Instance

Either a CurveTexture or a CurveXYZTexture that scales each particle based on its velocity.

func (Instance) ScaleOverVelocityMax

func (self Instance) ScaleOverVelocityMax() Float.X

Maximum velocity value reference for ScaleOverVelocityCurve.

ScaleOverVelocityCurve will be interpolated between ScaleOverVelocityMin and ScaleOverVelocityMax.

func (Instance) ScaleOverVelocityMin

func (self Instance) ScaleOverVelocityMin() Float.X

Minimum velocity value reference for ScaleOverVelocityCurve.

ScaleOverVelocityCurve will be interpolated between ScaleOverVelocityMin and ScaleOverVelocityMax.

func (Instance) SetAlphaCurve

func (self Instance) SetAlphaCurve(value Texture2D.Instance)

SetAlphaCurve sets the property returned by [GetAlphaCurve].

func (Instance) SetAngle

func (self Instance) SetAngle(value Vector2.XY)

SetAngle sets the property returned by [GetParam].

func (Instance) SetAngleCurve

func (self Instance) SetAngleCurve(value Texture2D.Instance)

SetAngleCurve sets the property returned by [GetParamTexture].

func (Instance) SetAngleMax

func (self Instance) SetAngleMax(value Angle.Radians)

SetAngleMax sets the property returned by [GetParamMax].

func (Instance) SetAngleMin

func (self Instance) SetAngleMin(value Angle.Radians)

SetAngleMin sets the property returned by [GetParamMin].

func (Instance) SetAngularVelocity

func (self Instance) SetAngularVelocity(value Vector2.XY)

SetAngularVelocity sets the property returned by [GetParam].

func (Instance) SetAngularVelocityCurve

func (self Instance) SetAngularVelocityCurve(value Texture2D.Instance)

SetAngularVelocityCurve sets the property returned by [GetParamTexture].

func (Instance) SetAngularVelocityMax

func (self Instance) SetAngularVelocityMax(value Float.X)

SetAngularVelocityMax sets the property returned by [GetParamMax].

func (Instance) SetAngularVelocityMin

func (self Instance) SetAngularVelocityMin(value Float.X)

SetAngularVelocityMin sets the property returned by [GetParamMin].

func (Instance) SetAnimOffset

func (self Instance) SetAnimOffset(value Vector2.XY)

SetAnimOffset sets the property returned by [GetParam].

func (Instance) SetAnimOffsetCurve

func (self Instance) SetAnimOffsetCurve(value Texture2D.Instance)

SetAnimOffsetCurve sets the property returned by [GetParamTexture].

func (Instance) SetAnimOffsetMax

func (self Instance) SetAnimOffsetMax(value Float.X)

SetAnimOffsetMax sets the property returned by [GetParamMax].

func (Instance) SetAnimOffsetMin

func (self Instance) SetAnimOffsetMin(value Float.X)

SetAnimOffsetMin sets the property returned by [GetParamMin].

func (Instance) SetAnimSpeed

func (self Instance) SetAnimSpeed(value Vector2.XY)

SetAnimSpeed sets the property returned by [GetParam].

func (Instance) SetAnimSpeedCurve

func (self Instance) SetAnimSpeedCurve(value Texture2D.Instance)

SetAnimSpeedCurve sets the property returned by [GetParamTexture].

func (Instance) SetAnimSpeedMax

func (self Instance) SetAnimSpeedMax(value Float.X)

SetAnimSpeedMax sets the property returned by [GetParamMax].

func (Instance) SetAnimSpeedMin

func (self Instance) SetAnimSpeedMin(value Float.X)

SetAnimSpeedMin sets the property returned by [GetParamMin].

func (Instance) SetAttractorInteractionEnabled

func (self Instance) SetAttractorInteractionEnabled(value bool)

SetAttractorInteractionEnabled sets the property returned by [IsAttractorInteractionEnabled].

func (Instance) SetCollisionBounce

func (self Instance) SetCollisionBounce(value Float.X)

SetCollisionBounce sets the property returned by [GetCollisionBounce].

func (Instance) SetCollisionFriction

func (self Instance) SetCollisionFriction(value Float.X)

SetCollisionFriction sets the property returned by [GetCollisionFriction].

func (Instance) SetCollisionMode

func (self Instance) SetCollisionMode(value CollisionMode)

SetCollisionMode sets the property returned by [GetCollisionMode].

func (Instance) SetCollisionUseScale

func (self Instance) SetCollisionUseScale(value bool)

SetCollisionUseScale sets the property returned by [IsCollisionUsingScale].

func (Instance) SetColor

func (self Instance) SetColor(value Color.RGBA)

SetColor sets the property returned by [GetColor].

func (Instance) SetColorInitialRamp

func (self Instance) SetColorInitialRamp(value Texture2D.Instance)

SetColorInitialRamp sets the property returned by [GetColorInitialRamp].

func (Instance) SetColorRamp

func (self Instance) SetColorRamp(value Texture2D.Instance)

SetColorRamp sets the property returned by [GetColorRamp].

func (Instance) SetDamping

func (self Instance) SetDamping(value Vector2.XY)

SetDamping sets the property returned by [GetParam].

func (Instance) SetDampingCurve

func (self Instance) SetDampingCurve(value Texture2D.Instance)

SetDampingCurve sets the property returned by [GetParamTexture].

func (Instance) SetDampingMax

func (self Instance) SetDampingMax(value Float.X)

SetDampingMax sets the property returned by [GetParamMax].

func (Instance) SetDampingMin

func (self Instance) SetDampingMin(value Float.X)

SetDampingMin sets the property returned by [GetParamMin].

func (Instance) SetDirection

func (self Instance) SetDirection(value Vector3.XYZ)

SetDirection sets the property returned by [GetDirection].

func (Instance) SetDirectionalVelocity

func (self Instance) SetDirectionalVelocity(value Vector2.XY)

SetDirectionalVelocity sets the property returned by [GetParam].

func (Instance) SetDirectionalVelocityCurve

func (self Instance) SetDirectionalVelocityCurve(value Texture2D.Instance)

SetDirectionalVelocityCurve sets the property returned by [GetParamTexture].

func (Instance) SetDirectionalVelocityMax

func (self Instance) SetDirectionalVelocityMax(value Float.X)

SetDirectionalVelocityMax sets the property returned by [GetParamMax].

func (Instance) SetDirectionalVelocityMin

func (self Instance) SetDirectionalVelocityMin(value Float.X)

SetDirectionalVelocityMin sets the property returned by [GetParamMin].

func (Instance) SetEmissionBoxExtents

func (self Instance) SetEmissionBoxExtents(value Vector3.XYZ)

SetEmissionBoxExtents sets the property returned by [GetEmissionBoxExtents].

func (Instance) SetEmissionColorTexture

func (self Instance) SetEmissionColorTexture(value Texture2D.Instance)

SetEmissionColorTexture sets the property returned by [GetEmissionColorTexture].

func (Instance) SetEmissionCurve

func (self Instance) SetEmissionCurve(value Texture2D.Instance)

SetEmissionCurve sets the property returned by [GetEmissionCurve].

func (Instance) SetEmissionNormalTexture

func (self Instance) SetEmissionNormalTexture(value Texture2D.Instance)

SetEmissionNormalTexture sets the property returned by [GetEmissionNormalTexture].

func (Instance) SetEmissionPointCount

func (self Instance) SetEmissionPointCount(value int)

SetEmissionPointCount sets the property returned by [GetEmissionPointCount].

func (Instance) SetEmissionPointTexture

func (self Instance) SetEmissionPointTexture(value Texture2D.Instance)

SetEmissionPointTexture sets the property returned by [GetEmissionPointTexture].

func (Instance) SetEmissionRingAxis

func (self Instance) SetEmissionRingAxis(value Vector3.XYZ)

SetEmissionRingAxis sets the property returned by [GetEmissionRingAxis].

func (Instance) SetEmissionRingConeAngle

func (self Instance) SetEmissionRingConeAngle(value Angle.Radians)

SetEmissionRingConeAngle sets the property returned by [GetEmissionRingConeAngle].

func (Instance) SetEmissionRingHeight

func (self Instance) SetEmissionRingHeight(value Float.X)

SetEmissionRingHeight sets the property returned by [GetEmissionRingHeight].

func (Instance) SetEmissionRingInnerRadius

func (self Instance) SetEmissionRingInnerRadius(value Float.X)

SetEmissionRingInnerRadius sets the property returned by [GetEmissionRingInnerRadius].

func (Instance) SetEmissionRingRadius

func (self Instance) SetEmissionRingRadius(value Float.X)

SetEmissionRingRadius sets the property returned by [GetEmissionRingRadius].

func (Instance) SetEmissionShape

func (self Instance) SetEmissionShape(value EmissionShape)

SetEmissionShape sets the property returned by [GetEmissionShape].

func (Instance) SetEmissionShapeOffset

func (self Instance) SetEmissionShapeOffset(value Vector3.XYZ)

SetEmissionShapeOffset sets the property returned by [GetEmissionShapeOffset].

func (Instance) SetEmissionShapeScale

func (self Instance) SetEmissionShapeScale(value Vector3.XYZ)

SetEmissionShapeScale sets the property returned by [GetEmissionShapeScale].

func (Instance) SetEmissionSphereRadius

func (self Instance) SetEmissionSphereRadius(value Float.X)

SetEmissionSphereRadius sets the property returned by [GetEmissionSphereRadius].

func (Instance) SetFlatness

func (self Instance) SetFlatness(value Float.X)

SetFlatness sets the property returned by [GetFlatness].

func (Instance) SetGravity

func (self Instance) SetGravity(value Vector3.XYZ)

SetGravity sets the property returned by [GetGravity].

func (Instance) SetHueVariation

func (self Instance) SetHueVariation(value Vector2.XY)

SetHueVariation sets the property returned by [GetParam].

func (Instance) SetHueVariationCurve

func (self Instance) SetHueVariationCurve(value Texture2D.Instance)

SetHueVariationCurve sets the property returned by [GetParamTexture].

func (Instance) SetHueVariationMax

func (self Instance) SetHueVariationMax(value Float.X)

SetHueVariationMax sets the property returned by [GetParamMax].

func (Instance) SetHueVariationMin

func (self Instance) SetHueVariationMin(value Float.X)

SetHueVariationMin sets the property returned by [GetParamMin].

func (Instance) SetInheritVelocityRatio

func (self Instance) SetInheritVelocityRatio(value Float.X)

SetInheritVelocityRatio sets the property returned by [GetInheritVelocityRatio].

func (Instance) SetInitialVelocity

func (self Instance) SetInitialVelocity(value Vector2.XY)

SetInitialVelocity sets the property returned by [GetParam].

func (Instance) SetInitialVelocityMax

func (self Instance) SetInitialVelocityMax(value Float.X)

SetInitialVelocityMax sets the property returned by [GetParamMax].

func (Instance) SetInitialVelocityMin

func (self Instance) SetInitialVelocityMin(value Float.X)

SetInitialVelocityMin sets the property returned by [GetParamMin].

func (Instance) SetLifetimeRandomness

func (self Instance) SetLifetimeRandomness(value Float.X)

SetLifetimeRandomness sets the property returned by [GetLifetimeRandomness].

func (Instance) SetLinearAccel

func (self Instance) SetLinearAccel(value Vector2.XY)

SetLinearAccel sets the property returned by [GetParam].

func (Instance) SetLinearAccelCurve

func (self Instance) SetLinearAccelCurve(value Texture2D.Instance)

SetLinearAccelCurve sets the property returned by [GetParamTexture].

func (Instance) SetLinearAccelMax

func (self Instance) SetLinearAccelMax(value Float.X)

SetLinearAccelMax sets the property returned by [GetParamMax].

func (Instance) SetLinearAccelMin

func (self Instance) SetLinearAccelMin(value Float.X)

SetLinearAccelMin sets the property returned by [GetParamMin].

func (*Instance) SetObject

func (self *Instance) SetObject(obj [1]gd.Object) bool

func (Instance) SetOrbitVelocity

func (self Instance) SetOrbitVelocity(value Vector2.XY)

SetOrbitVelocity sets the property returned by [GetParam].

func (Instance) SetOrbitVelocityCurve

func (self Instance) SetOrbitVelocityCurve(value Texture2D.Instance)

SetOrbitVelocityCurve sets the property returned by [GetParamTexture].

func (Instance) SetOrbitVelocityMax

func (self Instance) SetOrbitVelocityMax(value Float.X)

SetOrbitVelocityMax sets the property returned by [GetParamMax].

func (Instance) SetOrbitVelocityMin

func (self Instance) SetOrbitVelocityMin(value Float.X)

SetOrbitVelocityMin sets the property returned by [GetParamMin].

func (Instance) SetParticleFlagAlignY

func (self Instance) SetParticleFlagAlignY(value bool)

SetParticleFlagAlignY sets the property returned by [GetParticleFlag].

func (Instance) SetParticleFlagDampingAsFriction

func (self Instance) SetParticleFlagDampingAsFriction(value bool)

SetParticleFlagDampingAsFriction sets the property returned by [GetParticleFlag].

func (Instance) SetParticleFlagDisableZ

func (self Instance) SetParticleFlagDisableZ(value bool)

SetParticleFlagDisableZ sets the property returned by [GetParticleFlag].

func (Instance) SetParticleFlagRotateY

func (self Instance) SetParticleFlagRotateY(value bool)

SetParticleFlagRotateY sets the property returned by [GetParticleFlag].

func (Instance) SetRadialAccel

func (self Instance) SetRadialAccel(value Vector2.XY)

SetRadialAccel sets the property returned by [GetParam].

func (Instance) SetRadialAccelCurve

func (self Instance) SetRadialAccelCurve(value Texture2D.Instance)

SetRadialAccelCurve sets the property returned by [GetParamTexture].

func (Instance) SetRadialAccelMax

func (self Instance) SetRadialAccelMax(value Float.X)

SetRadialAccelMax sets the property returned by [GetParamMax].

func (Instance) SetRadialAccelMin

func (self Instance) SetRadialAccelMin(value Float.X)

SetRadialAccelMin sets the property returned by [GetParamMin].

func (Instance) SetRadialVelocity

func (self Instance) SetRadialVelocity(value Vector2.XY)

SetRadialVelocity sets the property returned by [GetParam].

func (Instance) SetRadialVelocityCurve

func (self Instance) SetRadialVelocityCurve(value Texture2D.Instance)

SetRadialVelocityCurve sets the property returned by [GetParamTexture].

func (Instance) SetRadialVelocityMax

func (self Instance) SetRadialVelocityMax(value Float.X)

SetRadialVelocityMax sets the property returned by [GetParamMax].

func (Instance) SetRadialVelocityMin

func (self Instance) SetRadialVelocityMin(value Float.X)

SetRadialVelocityMin sets the property returned by [GetParamMin].

func (Instance) SetScale

func (self Instance) SetScale(value Vector2.XY)

SetScale sets the property returned by [GetParam].

func (Instance) SetScaleCurve

func (self Instance) SetScaleCurve(value Texture2D.Instance)

SetScaleCurve sets the property returned by [GetParamTexture].

func (Instance) SetScaleMax

func (self Instance) SetScaleMax(value Float.X)

SetScaleMax sets the property returned by [GetParamMax].

func (Instance) SetScaleMin

func (self Instance) SetScaleMin(value Float.X)

SetScaleMin sets the property returned by [GetParamMin].

func (Instance) SetScaleOverVelocity

func (self Instance) SetScaleOverVelocity(value Vector2.XY)

SetScaleOverVelocity sets the property returned by [GetParam].

func (Instance) SetScaleOverVelocityCurve

func (self Instance) SetScaleOverVelocityCurve(value Texture2D.Instance)

SetScaleOverVelocityCurve sets the property returned by [GetParamTexture].

func (Instance) SetScaleOverVelocityMax

func (self Instance) SetScaleOverVelocityMax(value Float.X)

SetScaleOverVelocityMax sets the property returned by [GetParamMax].

func (Instance) SetScaleOverVelocityMin

func (self Instance) SetScaleOverVelocityMin(value Float.X)

SetScaleOverVelocityMin sets the property returned by [GetParamMin].

func (Instance) SetSpread

func (self Instance) SetSpread(value Float.X)

SetSpread sets the property returned by [GetSpread].

func (Instance) SetSubEmitterAmountAtCollision

func (self Instance) SetSubEmitterAmountAtCollision(value int)

SetSubEmitterAmountAtCollision sets the property returned by [GetSubEmitterAmountAtCollision].

func (Instance) SetSubEmitterAmountAtEnd

func (self Instance) SetSubEmitterAmountAtEnd(value int)

SetSubEmitterAmountAtEnd sets the property returned by [GetSubEmitterAmountAtEnd].

func (Instance) SetSubEmitterAmountAtStart

func (self Instance) SetSubEmitterAmountAtStart(value int)

SetSubEmitterAmountAtStart sets the property returned by [GetSubEmitterAmountAtStart].

func (Instance) SetSubEmitterFrequency

func (self Instance) SetSubEmitterFrequency(value Float.X)

SetSubEmitterFrequency sets the property returned by [GetSubEmitterFrequency].

func (Instance) SetSubEmitterKeepVelocity

func (self Instance) SetSubEmitterKeepVelocity(value bool)

SetSubEmitterKeepVelocity sets the property returned by [GetSubEmitterKeepVelocity].

func (Instance) SetSubEmitterMode

func (self Instance) SetSubEmitterMode(value SubEmitterMode)

SetSubEmitterMode sets the property returned by [GetSubEmitterMode].

func (Instance) SetTangentialAccel

func (self Instance) SetTangentialAccel(value Vector2.XY)

SetTangentialAccel sets the property returned by [GetParam].

func (Instance) SetTangentialAccelCurve

func (self Instance) SetTangentialAccelCurve(value Texture2D.Instance)

SetTangentialAccelCurve sets the property returned by [GetParamTexture].

func (Instance) SetTangentialAccelMax

func (self Instance) SetTangentialAccelMax(value Float.X)

SetTangentialAccelMax sets the property returned by [GetParamMax].

func (Instance) SetTangentialAccelMin

func (self Instance) SetTangentialAccelMin(value Float.X)

SetTangentialAccelMin sets the property returned by [GetParamMin].

func (Instance) SetTurbulenceEnabled

func (self Instance) SetTurbulenceEnabled(value bool)

SetTurbulenceEnabled sets the property returned by [GetTurbulenceEnabled].

func (Instance) SetTurbulenceInfluence

func (self Instance) SetTurbulenceInfluence(value Vector2.XY)

SetTurbulenceInfluence sets the property returned by [GetParam].

func (Instance) SetTurbulenceInfluenceMax

func (self Instance) SetTurbulenceInfluenceMax(value Float.X)

SetTurbulenceInfluenceMax sets the property returned by [GetParamMax].

func (Instance) SetTurbulenceInfluenceMin

func (self Instance) SetTurbulenceInfluenceMin(value Float.X)

SetTurbulenceInfluenceMin sets the property returned by [GetParamMin].

func (Instance) SetTurbulenceInfluenceOverLife

func (self Instance) SetTurbulenceInfluenceOverLife(value Texture2D.Instance)

SetTurbulenceInfluenceOverLife sets the property returned by [GetParamTexture].

func (Instance) SetTurbulenceInitialDisplacement

func (self Instance) SetTurbulenceInitialDisplacement(value Vector2.XY)

SetTurbulenceInitialDisplacement sets the property returned by [GetParam].

func (Instance) SetTurbulenceInitialDisplacementMax

func (self Instance) SetTurbulenceInitialDisplacementMax(value Float.X)

SetTurbulenceInitialDisplacementMax sets the property returned by [GetParamMax].

func (Instance) SetTurbulenceInitialDisplacementMin

func (self Instance) SetTurbulenceInitialDisplacementMin(value Float.X)

SetTurbulenceInitialDisplacementMin sets the property returned by [GetParamMin].

func (Instance) SetTurbulenceNoiseScale

func (self Instance) SetTurbulenceNoiseScale(value Float.X)

SetTurbulenceNoiseScale sets the property returned by [GetTurbulenceNoiseScale].

func (Instance) SetTurbulenceNoiseSpeed

func (self Instance) SetTurbulenceNoiseSpeed(value Vector3.XYZ)

SetTurbulenceNoiseSpeed sets the property returned by [GetTurbulenceNoiseSpeed].

func (Instance) SetTurbulenceNoiseSpeedRandom

func (self Instance) SetTurbulenceNoiseSpeedRandom(value Float.X)

SetTurbulenceNoiseSpeedRandom sets the property returned by [GetTurbulenceNoiseSpeedRandom].

func (Instance) SetTurbulenceNoiseStrength

func (self Instance) SetTurbulenceNoiseStrength(value Float.X)

SetTurbulenceNoiseStrength sets the property returned by [GetTurbulenceNoiseStrength].

func (Instance) SetVelocityLimitCurve

func (self Instance) SetVelocityLimitCurve(value Texture2D.Instance)

SetVelocityLimitCurve sets the property returned by [GetVelocityLimitCurve].

func (Instance) SetVelocityPivot

func (self Instance) SetVelocityPivot(value Vector3.XYZ)

SetVelocityPivot sets the property returned by [GetVelocityPivot].

func (Instance) Spread

func (self Instance) Spread() Float.X

Each particle's initial direction range from +spread to -spread degrees.

func (Instance) SubEmitterAmountAtCollision

func (self Instance) SubEmitterAmountAtCollision() int

The amount of particles to spawn from the subemitter node when a collision occurs. When combined with CollisionHideOnContact on the main particles material, this can be used to achieve effects such as raindrops hitting the ground.

Note: This value shouldn't exceed GPUParticles2D.Amount or GPUParticles3D.Amount defined on the subemitter node (not the main node), relative to the subemitter's particle lifetime. If the number of particles is exceeded, no new particles will spawn from the subemitter until enough particles have expired.

func (Instance) SubEmitterAmountAtEnd

func (self Instance) SubEmitterAmountAtEnd() int

The amount of particles to spawn from the subemitter node when the particle expires.

Note: This value shouldn't exceed GPUParticles2D.Amount or GPUParticles3D.Amount defined on the subemitter node (not the main node), relative to the subemitter's particle lifetime. If the number of particles is exceeded, no new particles will spawn from the subemitter until enough particles have expired.

func (Instance) SubEmitterAmountAtStart

func (self Instance) SubEmitterAmountAtStart() int

The amount of particles to spawn from the subemitter node when the particle spawns.

Note: This value shouldn't exceed GPUParticles2D.Amount or GPUParticles3D.Amount defined on the subemitter node (not the main node), relative to the subemitter's particle lifetime. If the number of particles is exceeded, no new particles will spawn from the subemitter until enough particles have expired.

func (Instance) SubEmitterFrequency

func (self Instance) SubEmitterFrequency() Float.X

The frequency at which particles should be emitted from the subemitter node. One particle will be spawned every SubEmitterFrequency seconds.

Note: This value shouldn't exceed GPUParticles2D.Amount or GPUParticles3D.Amount defined on the subemitter node (not the main node), relative to the subemitter's particle lifetime. If the number of particles is exceeded, no new particles will spawn from the subemitter until enough particles have expired.

func (Instance) SubEmitterKeepVelocity

func (self Instance) SubEmitterKeepVelocity() bool

If true, the subemitter inherits the parent particle's velocity when it spawns.

func (Instance) SubEmitterMode

func (self Instance) SubEmitterMode() SubEmitterMode

The particle subemitter mode (see GPUParticles2D.SubEmitter and GPUParticles3D.SubEmitter).

func (Instance) TangentialAccel

func (self Instance) TangentialAccel() Vector2.XY

func (Instance) TangentialAccelCurve

func (self Instance) TangentialAccelCurve() Texture2D.Instance

Each particle's tangential acceleration will vary along this CurveTexture.

func (Instance) TangentialAccelMax

func (self Instance) TangentialAccelMax() Float.X

Maximum tangential acceleration applied to each particle. Tangential acceleration is perpendicular to the particle's velocity giving the particles a swirling motion.

func (Instance) TangentialAccelMin

func (self Instance) TangentialAccelMin() Float.X

Minimum equivalent of TangentialAccelMax.

func (Instance) TurbulenceEnabled

func (self Instance) TurbulenceEnabled() bool

If true, enables turbulence for the particle system. Turbulence can be used to vary particle movement according to its position (based on a 3D noise pattern). In 3D, GPUParticlesAttractorVectorField3D with NoiseTexture3D can be used as an alternative to turbulence that works in world space and with multiple particle systems reacting in the same way.

Note: Enabling turbulence has a high performance cost on the GPU. Only enable turbulence on a few particle systems at once at most, and consider disabling it when targeting mobile/web platforms.

func (Instance) TurbulenceInfluence

func (self Instance) TurbulenceInfluence() Vector2.XY

func (Instance) TurbulenceInfluenceMax

func (self Instance) TurbulenceInfluenceMax() Float.X

Maximum turbulence influence on each particle.

The actual amount of turbulence influence on each particle is calculated as a random value between TurbulenceInfluenceMin and TurbulenceInfluenceMax and multiplied by the amount of turbulence influence from TurbulenceInfluenceOverLife.

func (Instance) TurbulenceInfluenceMin

func (self Instance) TurbulenceInfluenceMin() Float.X

Minimum turbulence influence on each particle.

The actual amount of turbulence influence on each particle is calculated as a random value between TurbulenceInfluenceMin and TurbulenceInfluenceMax and multiplied by the amount of turbulence influence from TurbulenceInfluenceOverLife.

func (Instance) TurbulenceInfluenceOverLife

func (self Instance) TurbulenceInfluenceOverLife() Texture2D.Instance

Each particle's amount of turbulence will be influenced along this CurveTexture over its life time.

func (Instance) TurbulenceInitialDisplacement

func (self Instance) TurbulenceInitialDisplacement() Vector2.XY

func (Instance) TurbulenceInitialDisplacementMax

func (self Instance) TurbulenceInitialDisplacementMax() Float.X

Maximum displacement of each particle's spawn position by the turbulence.

The actual amount of displacement will be a factor of the underlying turbulence multiplied by a random value between TurbulenceInitialDisplacementMin and TurbulenceInitialDisplacementMax.

func (Instance) TurbulenceInitialDisplacementMin

func (self Instance) TurbulenceInitialDisplacementMin() Float.X

Minimum displacement of each particle's spawn position by the turbulence.

The actual amount of displacement will be a factor of the underlying turbulence multiplied by a random value between TurbulenceInitialDisplacementMin and TurbulenceInitialDisplacementMax.

func (Instance) TurbulenceNoiseScale

func (self Instance) TurbulenceNoiseScale() Float.X

This value controls the overall scale/frequency of the turbulence noise pattern.

A small scale will result in smaller features with more detail while a high scale will result in smoother noise with larger features.

func (Instance) TurbulenceNoiseSpeed

func (self Instance) TurbulenceNoiseSpeed() Vector3.XYZ

A scrolling velocity for the turbulence field. This sets a directional trend for the pattern to move in over time.

The default value of Vector3(0, 0, 0) turns off the scrolling.

func (Instance) TurbulenceNoiseSpeedRandom

func (self Instance) TurbulenceNoiseSpeedRandom() Float.X

The in-place rate of change of the turbulence field. This defines how quickly the noise pattern varies over time.

A value of 0.0 will result in a fixed pattern.

func (Instance) TurbulenceNoiseStrength

func (self Instance) TurbulenceNoiseStrength() Float.X

The turbulence noise strength. Increasing this will result in a stronger, more contrasting, flow pattern.

func (Instance) VelocityLimitCurve

func (self Instance) VelocityLimitCurve() Texture2D.Instance

A CurveTexture that defines the maximum velocity of a particle during its lifetime.

func (Instance) VelocityPivot

func (self Instance) VelocityPivot() Vector3.XYZ

A pivot point used to calculate radial and orbital velocity of particles.

func (Instance) Virtual

func (self Instance) Virtual(name string) reflect.Value

type Parameter

type Parameter int //gd:ParticleProcessMaterial.Parameter
const (
	// Use with [SetParamMin], [SetParamMax], and [SetParamTexture] to set initial velocity properties.
	//
	// [SetParamMax]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMax
	// [SetParamMin]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMin
	// [SetParamTexture]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamTexture
	ParamInitialLinearVelocity Parameter = 0
	// Use with [SetParamMin], [SetParamMax], and [SetParamTexture] to set angular velocity properties.
	//
	// [SetParamMax]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMax
	// [SetParamMin]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMin
	// [SetParamTexture]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamTexture
	ParamAngularVelocity Parameter = 1
	// Use with [SetParamMin], [SetParamMax], and [SetParamTexture] to set orbital velocity properties.
	//
	// [SetParamMax]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMax
	// [SetParamMin]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMin
	// [SetParamTexture]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamTexture
	ParamOrbitVelocity Parameter = 2
	// Use with [SetParamMin], [SetParamMax], and [SetParamTexture] to set linear acceleration properties.
	//
	// [SetParamMax]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMax
	// [SetParamMin]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMin
	// [SetParamTexture]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamTexture
	ParamLinearAccel Parameter = 3
	// Use with [SetParamMin], [SetParamMax], and [SetParamTexture] to set radial acceleration properties.
	//
	// [SetParamMax]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMax
	// [SetParamMin]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMin
	// [SetParamTexture]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamTexture
	ParamRadialAccel Parameter = 4
	// Use with [SetParamMin], [SetParamMax], and [SetParamTexture] to set tangential acceleration properties.
	//
	// [SetParamMax]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMax
	// [SetParamMin]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMin
	// [SetParamTexture]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamTexture
	ParamTangentialAccel Parameter = 5
	// Use with [SetParamMin], [SetParamMax], and [SetParamTexture] to set damping properties.
	//
	// [SetParamMax]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMax
	// [SetParamMin]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMin
	// [SetParamTexture]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamTexture
	ParamDamping Parameter = 6
	// Use with [SetParamMin], [SetParamMax], and [SetParamTexture] to set angle properties.
	//
	// [SetParamMax]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMax
	// [SetParamMin]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMin
	// [SetParamTexture]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamTexture
	ParamAngle Parameter = 7
	// Use with [SetParamMin], [SetParamMax], and [SetParamTexture] to set scale properties.
	//
	// [SetParamMax]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMax
	// [SetParamMin]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMin
	// [SetParamTexture]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamTexture
	ParamScale Parameter = 8
	// Use with [SetParamMin], [SetParamMax], and [SetParamTexture] to set hue variation properties.
	//
	// [SetParamMax]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMax
	// [SetParamMin]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMin
	// [SetParamTexture]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamTexture
	ParamHueVariation Parameter = 9
	// Use with [SetParamMin], [SetParamMax], and [SetParamTexture] to set animation speed properties.
	//
	// [SetParamMax]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMax
	// [SetParamMin]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMin
	// [SetParamTexture]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamTexture
	ParamAnimSpeed Parameter = 10
	// Use with [SetParamMin], [SetParamMax], and [SetParamTexture] to set animation offset properties.
	//
	// [SetParamMax]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMax
	// [SetParamMin]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMin
	// [SetParamTexture]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamTexture
	ParamAnimOffset Parameter = 11
	// Use with [SetParamMin], [SetParamMax], and [SetParamTexture] to set radial velocity properties.
	//
	// [SetParamMax]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMax
	// [SetParamMin]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMin
	// [SetParamTexture]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamTexture
	ParamRadialVelocity Parameter = 15
	// Use with [SetParamMin], [SetParamMax], and [SetParamTexture] to set directional velocity properties.
	//
	// [SetParamMax]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMax
	// [SetParamMin]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMin
	// [SetParamTexture]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamTexture
	ParamDirectionalVelocity Parameter = 16
	// Use with [SetParamMin], [SetParamMax], and [SetParamTexture] to set scale over velocity properties.
	//
	// [SetParamMax]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMax
	// [SetParamMin]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMin
	// [SetParamTexture]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamTexture
	ParamScaleOverVelocity Parameter = 17
	// Represents the size of the [Parameter] enum.
	ParamMax Parameter = 18
	// Use with [SetParamMin] and [SetParamMax] to set the turbulence minimum und maximum influence on each particles velocity.
	//
	// [SetParamMax]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMax
	// [SetParamMin]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMin
	ParamTurbVelInfluence Parameter = 13
	// Use with [SetParamMin] and [SetParamMax] to set the turbulence minimum and maximum displacement of the particles spawn position.
	//
	// [SetParamMax]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMax
	// [SetParamMin]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamMin
	ParamTurbInitDisplacement Parameter = 14
	// Use with [SetParamTexture] to set the turbulence influence over the particles life time.
	//
	// [SetParamTexture]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParamTexture
	ParamTurbInfluenceOverLife Parameter = 12
)

type ParticleFlags

type ParticleFlags int //gd:ParticleProcessMaterial.ParticleFlags
const (
	// Use with [SetParticleFlag] to set [ParticleFlagAlignY].
	//
	// [ParticleFlagAlignY]: https://pkg.go.dev/graphics.gd/classdb/#Instance.ParticleFlagAlignY
	// [SetParticleFlag]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParticleFlag
	ParticleFlagAlignYToVelocity ParticleFlags = 0
	// Use with [SetParticleFlag] to set [ParticleFlagRotateY].
	//
	// [ParticleFlagRotateY]: https://pkg.go.dev/graphics.gd/classdb/#Instance.ParticleFlagRotateY
	// [SetParticleFlag]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParticleFlag
	ParticleFlagRotateY ParticleFlags = 1
	// Use with [SetParticleFlag] to set [ParticleFlagDisableZ].
	//
	// [ParticleFlagDisableZ]: https://pkg.go.dev/graphics.gd/classdb/#Instance.ParticleFlagDisableZ
	// [SetParticleFlag]: https://pkg.go.dev/graphics.gd/classdb/#Instance.SetParticleFlag
	ParticleFlagDisableZ          ParticleFlags = 2
	ParticleFlagDampingAsFriction ParticleFlags = 3
	// Represents the size of the [ParticleFlags] enum.
	ParticleFlagMax ParticleFlags = 4
)

type SubEmitterMode

type SubEmitterMode int //gd:ParticleProcessMaterial.SubEmitterMode
const (
	SubEmitterDisabled    SubEmitterMode = 0
	SubEmitterConstant    SubEmitterMode = 1
	SubEmitterAtEnd       SubEmitterMode = 2
	SubEmitterAtCollision SubEmitterMode = 3
	SubEmitterAtStart     SubEmitterMode = 4
	// Represents the size of the [SubEmitterMode] enum.
	SubEmitterMax SubEmitterMode = 5
)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL