Search Results for

    Show / Hide Table of Contents

    Class ParticleEmitterGraphCPUExecutor

    The Particle Emitter Graph simulation on a CPU.

    Inheritance
    VisjectExecutor
    ParticleEmitterGraphCPUExecutor
    Inherited Members
    VisjectExecutor::_perGroupProcessCall
    ParticleEmitterGraphCPUExecutor
    VisjectExecutor::Error
    ParticleEmitterGraphCPUExecutor
    ParticleEmitterGraphCPUExecutor
    VisjectExecutor::InlineVariantStruct(Variant& v)
    ParticleEmitterGraphCPUExecutor
    VisjectExecutor::OnError(Node* node, Box* box, const StringView& message)
    ParticleEmitterGraphCPUExecutor
    ParticleEmitterGraphCPUExecutor
    VisjectExecutor::ProcessGroupBitwise(Box* box, Node* node, Value& value)
    VisjectExecutor::ProcessGroupBoolean(Box* box, Node* node, Value& value)
    VisjectExecutor::ProcessGroupCollections(Box* box, Node* node, Value& value)
    VisjectExecutor::ProcessGroupComparisons(Box* box, Node* node, Value& value)
    VisjectExecutor::ProcessGroupConstants(Box* box, Node* node, Value& value)
    VisjectExecutor::ProcessGroupMath(Box* box, Node* node, Value& value)
    VisjectExecutor::ProcessGroupPacking(Box* box, Node* node, Value& value)
    VisjectExecutor::tryGetValue(Box* box, int32 defaultValueBoxIndex, const Value& defaultValue)
    VisjectExecutor::tryGetValue(Box* box)
    VisjectExecutor::tryGetValue(Box* box, const Value& defaultValue)
    ParticleEmitterGraphCPUExecutor
    ParticleEmitterGraphCPUExecutor
    VisjectExecutor::VisjectExecutor()
    VisjectExecutor::~VisjectExecutor()
    Assembly: FlaxEngine.dll
    File: Engine/Particles/Graph/CPU/ParticleEmitterGraph.CPU.h
    Syntax
    public class ParticleEmitterGraphCPUExecutor : public VisjectExecutor

    Constructors

    ParticleEmitterGraphCPUExecutor(ParticleEmitterGraphCPU& graph)

    Initializes a new instance of the ParticleEmitterGraphCPUExecutor class.

    Declaration
    public ParticleEmitterGraphCPUExecutor(ParticleEmitterGraphCPU& graph)
    Parameters
    ParticleEmitterGraphCPU graph

    The graph to execute.

    Methods

    ComputeBounds(ParticleEmitter* emitter, ParticleEffect* effect, ParticleEmitterInstance& data, BoundingBox& result)

    Computes the local bounds of the particle emitter instance.

    Declaration
    public bool ComputeBounds(ParticleEmitter* emitter, ParticleEffect* effect, ParticleEmitterInstance& data, BoundingBox& result)
    Parameters
    ParticleEmitter emitter

    The owning emitter.

    ParticleEffect effect

    The instance effect.

    ParticleEmitterInstance data

    The instance data.

    BoundingBox result

    The result bounding box.

    Returns
    bool

    True if has valid bounds, otherwise false if failed to calculate it (eg. GPU emitter or not synced or no particles.

    Draw(ParticleEmitter* emitter, ParticleEffect* effect, ParticleEmitterInstance& data, RenderContext& renderContext, Matrix& transform)

    Draw the particles (eg. lights).

    Declaration
    public void Draw(ParticleEmitter* emitter, ParticleEffect* effect, ParticleEmitterInstance& data, RenderContext& renderContext, Matrix& transform)
    Parameters
    ParticleEmitter emitter

    The owning emitter.

    ParticleEffect effect

    The instance effect.

    ParticleEmitterInstance data

    The instance data.

    RenderContext renderContext

    The rendering context.

    Matrix transform

    The effect transform matrix.

    Update(ParticleEmitter* emitter, ParticleEffect* effect, ParticleEmitterInstance& data, float dt, bool canSpawn)

    Updates the particles simulation (the CPU simulation).

    Declaration
    public void Update(ParticleEmitter* emitter, ParticleEffect* effect, ParticleEmitterInstance& data, float dt, bool canSpawn)
    Parameters
    ParticleEmitter emitter

    The owning emitter.

    ParticleEffect effect

    The instance effect.

    ParticleEmitterInstance data

    The instance data.

    float dt

    The delta time (in seconds).

    bool canSpawn

    True if can spawn new particles, otherwise will just perform an update.

    UpdateSpawn(ParticleEmitter* emitter, ParticleEffect* effect, ParticleEmitterInstance& data, float dt)

    Updates the particles spawning logic (the non-CPU simulation that needs to spawn particles) and returns the amount of particles to add to the simulation.

    Declaration
    public int32 UpdateSpawn(ParticleEmitter* emitter, ParticleEffect* effect, ParticleEmitterInstance& data, float dt)
    Parameters
    ParticleEmitter emitter

    The owning emitter.

    ParticleEffect effect

    The instance effect.

    ParticleEmitterInstance data

    The instance data.

    float dt

    The simulation delta time (in seconds).

    Returns
    int32

    The particles to spawn count

    • Improve this Doc
    • View Source
    In This Article
    Back to top Copyright © 2012-2024 Wojciech Figat