Duckcpp 2.1.0
Duckcpp is a high-performance c++ graphics engine.
Loading...
Searching...
No Matches
IParticleAttractionAffector.hpp
1// Copyright (C) 2002-2012 Nikolaus Gebhardt
2// This file is part of the "Irrlicht Engine".
3// For conditions of distribution and use, see copyright notice in duckcpp/duckcpp.hpp
4
5#ifndef DCPP_I_PARTICLE_ATTRACTION_AFFECTOR_HPP_INCLUDED
6#define DCPP_I_PARTICLE_ATTRACTION_AFFECTOR_HPP_INCLUDED
7
8#include <duckcpp/core/engine/IParticleAffector.hpp>
9
10namespace dcpp
11{
12namespace scene
13{
14
17{
18public:
19
21 virtual void setPoint( const nub::vector3df& point ) = 0;
22
24 virtual void setSpeed( f32 speed ) =0;
25
27 virtual void setAttract( bool attract ) = 0;
28
30 virtual void setAffectX( bool affect ) = 0;
31
33 virtual void setAffectY( bool affect ) = 0;
34
36 virtual void setAffectZ( bool affect ) = 0;
37
39 virtual const nub::vector3df& getPoint() const = 0;
40
42 virtual f32 getSpeed() const =0;
43
45 virtual bool getAttract() const = 0;
46
48 virtual bool getAffectX() const = 0;
49
51 virtual bool getAffectY() const = 0;
52
54 virtual bool getAffectZ() const = 0;
55
57 virtual E_PARTICLE_AFFECTOR_TYPE getType() const override { return EPAT_ATTRACT; }
58};
59
60} // end namespace scene
61} // end namespace dcpp
62
63#endif // DCPP_I_PARTICLE_ATTRACTION_AFFECTOR_HPP_INCLUDED
A particle affector modifies particles.
Definition IParticleAffector.hpp:42
virtual void affect(u32 now, SParticle *particlearray, u32 count)=0
Affects an array of particles.
A particle affector which attracts or detracts particles.
Definition IParticleAttractionAffector.hpp:17
virtual f32 getSpeed() const =0
Get the speed that points attract to the specified point.
virtual void setAffectY(bool affect)=0
Set whether or not this will affect particles in the Y direction.
virtual const nub::vector3df & getPoint() const =0
Get the point that particles are attracted to.
virtual bool getAffectZ() const =0
Get whether or not the particles Z position are affected.
virtual void setPoint(const nub::vector3df &point)=0
Set the point that particles will attract to.
virtual void setSpeed(f32 speed)=0
Set the speed, in game units per second that the particles will attract to the specified point.
virtual void setAffectZ(bool affect)=0
Set whether or not this will affect particles in the Z direction.
virtual bool getAffectX() const =0
Get whether or not the particles X position are affected.
virtual void setAffectX(bool affect)=0
Set whether or not this will affect particles in the X direction.
virtual bool getAttract() const =0
Get whether or not the particles are attracting or detracting.
virtual E_PARTICLE_AFFECTOR_TYPE getType() const override
Get emitter type.
Definition IParticleAttractionAffector.hpp:57
virtual void setAttract(bool attract)=0
Set whether or not the particles are attracting or detracting.
virtual bool getAffectY() const =0
Get whether or not the particles Y position are affected.
E_PARTICLE_AFFECTOR_TYPE
Types of built in particle affectors.
Definition IParticleAffector.hpp:18
As of Duckcpp 1.6, position2d is a synonym for vector2d.
Definition vector3d.hpp:11
float f32
32 bit floating point variable.
Definition irrTypes.hpp:110

Duckcpp    @cppfx.xyz