CPUParticles3D

package
v0.0.0-...-ad02d68 Latest Latest
Warning

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

Go to latest
Published: Sep 13, 2025 License: MIT Imports: 32 Imported by: 0

Documentation

Overview

CPU-based 3D particle node used to create a variety of particle systems and effects. See also [GPUParticles3D], which provides the same functionality with hardware acceleration, but may not run on older devices.

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
	AsCPUParticles3D() Instance
}

type DrawOrder

type DrawOrder int //gd:CPUParticles3D.DrawOrder
const (
	/*Particles are drawn in the order emitted.*/
	DrawOrderIndex DrawOrder = 0
	/*Particles are drawn in order of remaining lifetime. In other words, the particle with the highest lifetime is drawn at the front.*/
	DrawOrderLifetime DrawOrder = 1
	/*Particles are drawn in order of depth.*/
	DrawOrderViewDepth DrawOrder = 2
)

type EmissionShape

type EmissionShape int //gd:CPUParticles3D.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 chosen randomly among [member emission_points]. Particle color will be modulated by [member emission_colors].*/
	EmissionShapePoints EmissionShape = 4
	/*Particles will be emitted at a position chosen randomly among [member emission_points]. Particle velocity and rotation will be set based on [member emission_normals]. Particle color will be modulated by [member emission_colors].*/
	EmissionShapeDirectedPoints EmissionShape = 5
	/*Particles will be emitted in a ring or cylinder.*/
	EmissionShapeRing EmissionShape = 6
	/*Represents the size of the [enum EmissionShape] enum.*/
	EmissionShapeMax EmissionShape = 7
)

type Expanded

type Expanded [1]gdclass.CPUParticles3D

func (Expanded) Restart

func (self Expanded) Restart(keep_seed bool)

Restarts the particle emitter. If 'keep_seed' is true, the current random seed will be preserved. Useful for seeking and playback.

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]) AsCPUParticles3D

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

func (*Extension[T]) AsGeometryInstance3D

func (self *Extension[T]) AsGeometryInstance3D() GeometryInstance3D.Instance

func (*Extension[T]) AsNode

func (self *Extension[T]) AsNode() Node.Instance

func (*Extension[T]) AsNode3D

func (self *Extension[T]) AsNode3D() Node3D.Instance

func (*Extension[T]) AsObject

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

func (*Extension[T]) AsVisualInstance3D

func (self *Extension[T]) AsVisualInstance3D() VisualInstance3D.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.CPUParticles3D

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) Amount

func (self Instance) Amount() int

func (Instance) AngleCurve

func (self Instance) AngleCurve() Curve.Instance

func (Instance) AngleMax

func (self Instance) AngleMax() Angle.Radians

func (Instance) AngleMin

func (self Instance) AngleMin() Angle.Radians

func (Instance) AngularVelocityCurve

func (self Instance) AngularVelocityCurve() Curve.Instance

func (Instance) AngularVelocityMax

func (self Instance) AngularVelocityMax() Float.X

func (Instance) AngularVelocityMin

func (self Instance) AngularVelocityMin() Float.X

func (Instance) AnimOffsetCurve

func (self Instance) AnimOffsetCurve() Curve.Instance

func (Instance) AnimOffsetMax

func (self Instance) AnimOffsetMax() Float.X

func (Instance) AnimOffsetMin

func (self Instance) AnimOffsetMin() Float.X

func (Instance) AnimSpeedCurve

func (self Instance) AnimSpeedCurve() Curve.Instance

func (Instance) AnimSpeedMax

func (self Instance) AnimSpeedMax() Float.X

func (Instance) AnimSpeedMin

func (self Instance) AnimSpeedMin() Float.X

func (Instance) AsCPUParticles3D

func (self Instance) AsCPUParticles3D() Instance

func (Instance) AsGeometryInstance3D

func (self Instance) AsGeometryInstance3D() GeometryInstance3D.Instance

func (Instance) AsNode

func (self Instance) AsNode() Node.Instance

func (Instance) AsNode3D

func (self Instance) AsNode3D() Node3D.Instance

func (Instance) AsObject

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

func (Instance) AsVisualInstance3D

func (self Instance) AsVisualInstance3D() VisualInstance3D.Instance

func (Instance) CaptureAabb

func (self Instance) CaptureAabb() AABB.PositionSize

Returns the axis-aligned bounding box that contains all the particles that are active in the current frame.

func (Instance) Color

func (self Instance) Color() Color.RGBA

func (Instance) ColorInitialRamp

func (self Instance) ColorInitialRamp() Gradient.Instance

func (Instance) ColorRamp

func (self Instance) ColorRamp() Gradient.Instance

func (Instance) ConvertFromParticles

func (self Instance) ConvertFromParticles(particles Node.Instance)

Sets this node's properties to match a given [GPUParticles3D] node with an assigned [ParticleProcessMaterial].

func (Instance) DampingCurve

func (self Instance) DampingCurve() Curve.Instance

func (Instance) DampingMax

func (self Instance) DampingMax() Float.X

func (Instance) DampingMin

func (self Instance) DampingMin() Float.X

func (Instance) Direction

func (self Instance) Direction() Vector3.XYZ

func (Instance) DrawOrder

func (self Instance) DrawOrder() DrawOrder

func (Instance) EmissionBoxExtents

func (self Instance) EmissionBoxExtents() Vector3.XYZ

func (Instance) EmissionColors

func (self Instance) EmissionColors() []Color.RGBA

func (Instance) EmissionNormals

func (self Instance) EmissionNormals() []Vector3.XYZ

func (Instance) EmissionPoints

func (self Instance) EmissionPoints() []Vector3.XYZ

func (Instance) EmissionRingAxis

func (self Instance) EmissionRingAxis() Vector3.XYZ

func (Instance) EmissionRingConeAngle

func (self Instance) EmissionRingConeAngle() Angle.Radians

func (Instance) EmissionRingHeight

func (self Instance) EmissionRingHeight() Float.X

func (Instance) EmissionRingInnerRadius

func (self Instance) EmissionRingInnerRadius() Float.X

func (Instance) EmissionRingRadius

func (self Instance) EmissionRingRadius() Float.X

func (Instance) EmissionShape

func (self Instance) EmissionShape() EmissionShape

func (Instance) EmissionSphereRadius

func (self Instance) EmissionSphereRadius() Float.X

func (Instance) Emitting

func (self Instance) Emitting() bool

func (Instance) Explosiveness

func (self Instance) Explosiveness() Float.X

func (Instance) FixedFps

func (self Instance) FixedFps() int

func (Instance) Flatness

func (self Instance) Flatness() Float.X

func (Instance) FractDelta

func (self Instance) FractDelta() bool

func (Instance) Gravity

func (self Instance) Gravity() Vector3.XYZ

func (Instance) HueVariationCurve

func (self Instance) HueVariationCurve() Curve.Instance

func (Instance) HueVariationMax

func (self Instance) HueVariationMax() Float.X

func (Instance) HueVariationMin

func (self Instance) HueVariationMin() Float.X

func (Instance) ID

func (self Instance) ID() ID

func (Instance) InitialVelocityMax

func (self Instance) InitialVelocityMax() Float.X

func (Instance) InitialVelocityMin

func (self Instance) InitialVelocityMin() Float.X

func (Instance) Lifetime

func (self Instance) Lifetime() Float.X

func (Instance) LifetimeRandomness

func (self Instance) LifetimeRandomness() Float.X

func (Instance) LinearAccelCurve

func (self Instance) LinearAccelCurve() Curve.Instance

func (Instance) LinearAccelMax

func (self Instance) LinearAccelMax() Float.X

func (Instance) LinearAccelMin

func (self Instance) LinearAccelMin() Float.X

func (Instance) LocalCoords

func (self Instance) LocalCoords() bool

func (Instance) Mesh

func (self Instance) Mesh() Mesh.Instance

func (Instance) OnFinished

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

func (Instance) OneShot

func (self Instance) OneShot() bool

func (Instance) OrbitVelocityCurve

func (self Instance) OrbitVelocityCurve() Curve.Instance

func (Instance) OrbitVelocityMax

func (self Instance) OrbitVelocityMax() Float.X

func (Instance) OrbitVelocityMin

func (self Instance) OrbitVelocityMin() Float.X

func (Instance) ParticleFlagAlignY

func (self Instance) ParticleFlagAlignY() bool

func (Instance) ParticleFlagDisableZ

func (self Instance) ParticleFlagDisableZ() bool

func (Instance) ParticleFlagRotateY

func (self Instance) ParticleFlagRotateY() bool

func (Instance) Preprocess

func (self Instance) Preprocess() Float.X

func (Instance) RadialAccelCurve

func (self Instance) RadialAccelCurve() Curve.Instance

func (Instance) RadialAccelMax

func (self Instance) RadialAccelMax() Float.X

func (Instance) RadialAccelMin

func (self Instance) RadialAccelMin() Float.X

func (Instance) Randomness

func (self Instance) Randomness() Float.X

func (Instance) RequestParticlesProcess

func (self Instance) RequestParticlesProcess(process_time Float.X)

Requests the particles to process for extra process time during a single frame. Useful for particle playback, if used in combination with [member use_fixed_seed] or by calling Instance.Restart with parameter keep_seed set to true.

func (Instance) Restart

func (self Instance) Restart()

Restarts the particle emitter. If 'keep_seed' is true, the current random seed will be preserved. Useful for seeking and playback.

func (Instance) ScaleAmountCurve

func (self Instance) ScaleAmountCurve() Curve.Instance

func (Instance) ScaleAmountMax

func (self Instance) ScaleAmountMax() Float.X

func (Instance) ScaleAmountMin

func (self Instance) ScaleAmountMin() Float.X

func (Instance) ScaleCurveX

func (self Instance) ScaleCurveX() Curve.Instance

func (Instance) ScaleCurveY

func (self Instance) ScaleCurveY() Curve.Instance

func (Instance) ScaleCurveZ

func (self Instance) ScaleCurveZ() Curve.Instance

func (Instance) Seed

func (self Instance) Seed() int

func (Instance) SetAmount

func (self Instance) SetAmount(value int)

func (Instance) SetAngleCurve

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

func (Instance) SetAngleMax

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

func (Instance) SetAngleMin

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

func (Instance) SetAngularVelocityCurve

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

func (Instance) SetAngularVelocityMax

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

func (Instance) SetAngularVelocityMin

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

func (Instance) SetAnimOffsetCurve

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

func (Instance) SetAnimOffsetMax

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

func (Instance) SetAnimOffsetMin

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

func (Instance) SetAnimSpeedCurve

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

func (Instance) SetAnimSpeedMax

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

func (Instance) SetAnimSpeedMin

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

func (Instance) SetColor

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

func (Instance) SetColorInitialRamp

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

func (Instance) SetColorRamp

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

func (Instance) SetDampingCurve

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

func (Instance) SetDampingMax

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

func (Instance) SetDampingMin

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

func (Instance) SetDirection

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

func (Instance) SetDrawOrder

func (self Instance) SetDrawOrder(value DrawOrder)

func (Instance) SetEmissionBoxExtents

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

func (Instance) SetEmissionColors

func (self Instance) SetEmissionColors(value []Color.RGBA)

func (Instance) SetEmissionNormals

func (self Instance) SetEmissionNormals(value []Vector3.XYZ)

func (Instance) SetEmissionPoints

func (self Instance) SetEmissionPoints(value []Vector3.XYZ)

func (Instance) SetEmissionRingAxis

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

func (Instance) SetEmissionRingConeAngle

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

func (Instance) SetEmissionRingHeight

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

func (Instance) SetEmissionRingInnerRadius

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

func (Instance) SetEmissionRingRadius

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

func (Instance) SetEmissionShape

func (self Instance) SetEmissionShape(value EmissionShape)

func (Instance) SetEmissionSphereRadius

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

func (Instance) SetEmitting

func (self Instance) SetEmitting(value bool)

func (Instance) SetExplosiveness

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

func (Instance) SetFixedFps

func (self Instance) SetFixedFps(value int)

func (Instance) SetFlatness

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

func (Instance) SetFractDelta

func (self Instance) SetFractDelta(value bool)

func (Instance) SetGravity

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

func (Instance) SetHueVariationCurve

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

func (Instance) SetHueVariationMax

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

func (Instance) SetHueVariationMin

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

func (Instance) SetInitialVelocityMax

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

func (Instance) SetInitialVelocityMin

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

func (Instance) SetLifetime

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

func (Instance) SetLifetimeRandomness

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

func (Instance) SetLinearAccelCurve

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

func (Instance) SetLinearAccelMax

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

func (Instance) SetLinearAccelMin

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

func (Instance) SetLocalCoords

func (self Instance) SetLocalCoords(value bool)

func (Instance) SetMesh

func (self Instance) SetMesh(value Mesh.Instance)

func (*Instance) SetObject

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

func (Instance) SetOneShot

func (self Instance) SetOneShot(value bool)

func (Instance) SetOrbitVelocityCurve

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

func (Instance) SetOrbitVelocityMax

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

func (Instance) SetOrbitVelocityMin

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

func (Instance) SetParticleFlagAlignY

func (self Instance) SetParticleFlagAlignY(value bool)

func (Instance) SetParticleFlagDisableZ

func (self Instance) SetParticleFlagDisableZ(value bool)

func (Instance) SetParticleFlagRotateY

func (self Instance) SetParticleFlagRotateY(value bool)

func (Instance) SetPreprocess

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

func (Instance) SetRadialAccelCurve

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

func (Instance) SetRadialAccelMax

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

func (Instance) SetRadialAccelMin

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

func (Instance) SetRandomness

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

func (Instance) SetScaleAmountCurve

func (self Instance) SetScaleAmountCurve(value Curve.Instance)

func (Instance) SetScaleAmountMax

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

func (Instance) SetScaleAmountMin

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

func (Instance) SetScaleCurveX

func (self Instance) SetScaleCurveX(value Curve.Instance)

func (Instance) SetScaleCurveY

func (self Instance) SetScaleCurveY(value Curve.Instance)

func (Instance) SetScaleCurveZ

func (self Instance) SetScaleCurveZ(value Curve.Instance)

func (Instance) SetSeed

func (self Instance) SetSeed(value int)

func (Instance) SetSpeedScale

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

func (Instance) SetSplitScale

func (self Instance) SetSplitScale(value bool)

func (Instance) SetSpread

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

func (Instance) SetTangentialAccelCurve

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

func (Instance) SetTangentialAccelMax

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

func (Instance) SetTangentialAccelMin

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

func (Instance) SetUseFixedSeed

func (self Instance) SetUseFixedSeed(value bool)

func (Instance) SetVisibilityAabb

func (self Instance) SetVisibilityAabb(value AABB.PositionSize)

func (Instance) SpeedScale

func (self Instance) SpeedScale() Float.X

func (Instance) SplitScale

func (self Instance) SplitScale() bool

func (Instance) Spread

func (self Instance) Spread() Float.X

func (Instance) TangentialAccelCurve

func (self Instance) TangentialAccelCurve() Curve.Instance

func (Instance) TangentialAccelMax

func (self Instance) TangentialAccelMax() Float.X

func (Instance) TangentialAccelMin

func (self Instance) TangentialAccelMin() Float.X

func (Instance) UseFixedSeed

func (self Instance) UseFixedSeed() bool

func (Instance) Virtual

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

func (Instance) VisibilityAabb

func (self Instance) VisibilityAabb() AABB.PositionSize

type Parameter

type Parameter int //gd:CPUParticles3D.Parameter
const (
	/*Use with [method set_param_min], [method set_param_max], and [method set_param_curve] to set initial velocity properties.*/
	ParamInitialLinearVelocity Parameter = 0
	/*Use with [method set_param_min], [method set_param_max], and [method set_param_curve] to set angular velocity properties.*/
	ParamAngularVelocity Parameter = 1
	/*Use with [method set_param_min], [method set_param_max], and [method set_param_curve] to set orbital velocity properties.*/
	ParamOrbitVelocity Parameter = 2
	/*Use with [method set_param_min], [method set_param_max], and [method set_param_curve] to set linear acceleration properties.*/
	ParamLinearAccel Parameter = 3
	/*Use with [method set_param_min], [method set_param_max], and [method set_param_curve] to set radial acceleration properties.*/
	ParamRadialAccel Parameter = 4
	/*Use with [method set_param_min], [method set_param_max], and [method set_param_curve] to set tangential acceleration properties.*/
	ParamTangentialAccel Parameter = 5
	/*Use with [method set_param_min], [method set_param_max], and [method set_param_curve] to set damping properties.*/
	ParamDamping Parameter = 6
	/*Use with [method set_param_min], [method set_param_max], and [method set_param_curve] to set angle properties.*/
	ParamAngle Parameter = 7
	/*Use with [method set_param_min], [method set_param_max], and [method set_param_curve] to set scale properties.*/
	ParamScale Parameter = 8
	/*Use with [method set_param_min], [method set_param_max], and [method set_param_curve] to set hue variation properties.*/
	ParamHueVariation Parameter = 9
	/*Use with [method set_param_min], [method set_param_max], and [method set_param_curve] to set animation speed properties.*/
	ParamAnimSpeed Parameter = 10
	/*Use with [method set_param_min], [method set_param_max], and [method set_param_curve] to set animation offset properties.*/
	ParamAnimOffset Parameter = 11
	/*Represents the size of the [enum Parameter] enum.*/
	ParamMax Parameter = 12
)

type ParticleFlags

type ParticleFlags int //gd:CPUParticles3D.ParticleFlags
const (
	/*Use with [method set_particle_flag] to set [member particle_flag_align_y].*/
	ParticleFlagAlignYToVelocity ParticleFlags = 0
	/*Use with [method set_particle_flag] to set [member particle_flag_rotate_y].*/
	ParticleFlagRotateY ParticleFlags = 1
	/*Use with [method set_particle_flag] to set [member particle_flag_disable_z].*/
	ParticleFlagDisableZ ParticleFlags = 2
	/*Represents the size of the [enum ParticleFlags] enum.*/
	ParticleFlagMax ParticleFlags = 3
)

Jump to

Keyboard shortcuts

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