Nirtcpp 2.1.0
Nirtcpp 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 nirtcpp/nirtcpp.hpp
4
5#ifndef NIRT_I_PARTICLE_ATTRACTION_AFFECTOR_HPP_INCLUDED
6#define NIRT_I_PARTICLE_ATTRACTION_AFFECTOR_HPP_INCLUDED
7
8#include <nirtcpp/core/engine/IParticleAffector.hpp>
9
10namespace nirt
11{
12namespace scene
13{
14
17{
18public:
19
21 virtual void setPoint( const core::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 core::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 nirt
62
63#endif // NIRT_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 bool getAffectZ() const =0
Get whether or not the particles Z position are affected.
virtual bool getAffectY() const =0
Get whether or not the particles Y position are affected.
virtual void setAttract(bool attract)=0
Set whether or not the particles are attracting or detracting.
virtual bool getAttract() const =0
Get whether or not the particles are attracting or detracting.
virtual void setAffectX(bool affect)=0
Set whether or not this will affect particles in the X direction.
virtual void setAffectY(bool affect)=0
Set whether or not this will affect particles in the Y direction.
virtual void setSpeed(f32 speed)=0
Set the speed, in game units per second that the particles will attract to the specified point.
virtual E_PARTICLE_AFFECTOR_TYPE getType() const override
Get emitter type.
Definition IParticleAttractionAffector.hpp:57
virtual const core::vector3df & getPoint() const =0
Get the point that particles are attracted to.
virtual bool getAffectX() const =0
Get whether or not the particles X position are affected.
virtual void setAffectZ(bool affect)=0
Set whether or not this will affect particles in the Z direction.
virtual void setPoint(const core::vector3df &point)=0
Set the point that particles will attract to.
E_PARTICLE_AFFECTOR_TYPE
Types of built in particle affectors.
Definition IParticleAffector.hpp:18
As of Nirtcpp 1.6, position2d is a synonym for vector2d.
Definition vector3d.hpp:11
float f32
32 bit floating point variable.
Definition irrTypes.hpp:110

Nirtcpp    @cppfx.xyz

Esvcpp    esv::print