84 object->setScale(
scale);
115 const string&
getId()
override;
197 this->localTransformations = transformations;
Object 3D to be used with engine class.
Representation of a 3d model.
Axis aligned bounding box used for frustum, this is not directly connectable with physics engine.
Particle system which displays objects as particles.
void updateParticles() override
Updates the particle entity.
void setContributesShadows(bool contributesShadows)
Enable/disable contributes shadows.
BoundingBox boundingBoxTransformed
const Color4 & getEffectColorAdd() const override
The effect color will be added to fragment color.
ParticleEmitter * getEmitter() override
void setLocalTransformations(const Transformations &transformations) override
Set local transformations.
Transformations inverseTransformation
void setEngine(Engine *engine)
virtual ~ObjectParticleSystemInternal()
Destructor.
void update() override
Update transformations.
vector< Particle > particles
const string & getId() override
void setPickable(bool pickable) override
Set this object pickable.
ParticleEmitter * emitter
const Transformations & getLocalTransformations() override
void setEffectColorMul(const Color4 &effectColorMul) override
Set the effect color that will be multiplied with fragment color.
bool isContributesShadows()
bool isPickable() override
void fromTransformations(const Transformations &transformations) override
Set up this transformations from given transformations.
bool isAutoEmit() override
const Color4 & getEffectColorMul() const override
The effect color will be multiplied with fragment color.
ObjectParticleSystemInternal(const string &id, Model *model, const Vector3 &scale, bool autoEmit, bool contributesShadows, bool receivesShadows, int32_t maxCount, ParticleEmitter *emitter)
Public constructor.
vector< Object3D * > objects
void setAutoEmit(bool autoEmit) override
Set auto emit.
void setRenderer(Renderer *renderer)
vector< Object3D * > enabledObjects
void setEnabled(bool enabled) override
Enable/disable rendering.
Transformations localTransformations
float particlesToSpawnRemainder
void updateInternal()
Update internal.
bool isEnabled() override
int32_t emitParticles() override
Adds particles to this particle entity at given position.
void setReceivesShadows(bool receivesShadows)
Enable/disable receives shadows.
void setEffectColorAdd(const Color4 &effectColorAdd) override
Set the effect color that will be added to fragment color.
void getScale(Vector3 &scale) const
Get scale.
Vector3 & scale(float scale)
Scale this vector.
Particle emitter interface.
Particle system entity internal interface.