26 #include "../particles.h"
42 video::ITexture *texture,
67 void step(
float dtime);
114 video::ITexture *texture,
126 const core::matrix4 *attached_absolute_pos_rot_matrix);
148 void step (
float dtime);
174 v2f &texsize, video::SColor *color, u8 tilenum = 0);
Definition: clientenvironment.h:64
Definition: localplayer.h:45
Class doing particle as well as their spawners handling.
Definition: particles.h:142
u64 m_next_particle_spawner_id
Definition: particles.h:191
std::mutex m_particle_list_lock
Definition: particles.h:194
void stepSpawners(float dtime)
Definition: particles.cpp:407
static bool getNodeParticleParams(const MapNode &n, const ContentFeatures &f, ParticleParameters &p, video::ITexture **texture, v2f &texpos, v2f &texsize, video::SColor *color, u8 tilenum=0)
Definition: particles.cpp:519
void clearAll()
Definition: particles.cpp:436
~ParticleManager()
Definition: particles.cpp:396
void addParticle(Particle *toadd)
Definition: particles.cpp:619
void stepParticles(float dtime)
Definition: particles.cpp:421
void addNodeParticle(IGameDef *gamedef, LocalPlayer *player, v3s16 pos, const MapNode &n, const ContentFeatures &f)
Definition: particles.cpp:576
void step(float dtime)
Definition: particles.cpp:401
void addParticleSpawner(u64 id, ParticleSpawner *toadd)
Definition: particles.cpp:626
std::vector< Particle * > m_particles
Definition: particles.h:187
u64 generateSpawnerId()
This function is only used by client particle spawners.
Definition: particles.h:166
void deleteParticleSpawner(u64 id)
Definition: particles.cpp:632
void addDiggingParticles(IGameDef *gamedef, LocalPlayer *player, v3s16 pos, const MapNode &n, const ContentFeatures &f)
Definition: particles.cpp:561
void handleParticleEvent(ClientEvent *event, Client *client, LocalPlayer *player)
Definition: particles.cpp:453
ParticleManager(ClientEnvironment *env)
Definition: particles.cpp:392
ClientEnvironment * m_env
Definition: particles.h:193
std::unordered_map< u64, ParticleSpawner * > m_particle_spawners
Definition: particles.h:188
std::mutex m_spawner_list_lock
Definition: particles.h:195
Definition: particles.h:108
ParticleSpawnerParameters p
Definition: particles.h:132
float m_time
Definition: particles.h:129
~ParticleSpawner()=default
bool get_expired()
Definition: particles.h:121
std::vector< float > m_spawntimes
Definition: particles.h:134
IGameDef * m_gamedef
Definition: particles.h:130
video::ITexture * m_texture
Definition: particles.h:133
void step(float dtime, ClientEnvironment *env)
Definition: particles.cpp:341
u16 m_attached_id
Definition: particles.h:135
void spawnParticle(ClientEnvironment *env, float radius, const core::matrix4 *attached_absolute_pos_rot_matrix)
Definition: particles.cpp:272
LocalPlayer * m_player
Definition: particles.h:131
ParticleManager * m_particlemanager
Definition: particles.h:128
ParticleSpawner(IGameDef *gamedef, LocalPlayer *player, const ParticleSpawnerParameters &p, u16 attached_id, video::ITexture *texture, ParticleManager *p_manager)
Definition: particles.cpp:249
Definition: particles.h:35
v3f m_velocity
Definition: particles.h:88
virtual void render()
Definition: particles.cpp:122
bool m_collisiondetection
Definition: particles.h:96
video::S3DVertex m_vertices[4]
Definition: particles.h:76
bool get_expired()
Definition: particles.h:69
bool m_object_collision
Definition: particles.h:98
struct TileAnimationParams m_animation
Definition: particles.h:101
v3f m_pos
Definition: particles.h:87
bool m_vertical
Definition: particles.h:99
float m_animation_time
Definition: particles.h:102
aabb3f m_box
Definition: particles.h:82
LocalPlayer * m_player
Definition: particles.h:90
IGameDef * m_gamedef
Definition: particles.h:81
v2f m_texpos
Definition: particles.h:85
virtual void OnRegisterSceneNode()
Definition: particles.cpp:114
void step(float dtime)
Definition: particles.cpp:134
Particle(IGameDef *gamedef, LocalPlayer *player, ClientEnvironment *env, const ParticleParameters &p, video::ITexture *texture, v2f texpos, v2f texsize, video::SColor color)
Definition: particles.cpp:57
virtual video::SMaterial & getMaterial(u32 i)
Definition: particles.h:59
float m_time
Definition: particles.h:77
v3s16 m_camera_offset
Definition: particles.h:100
u8 m_glow
Definition: particles.h:104
bool m_collision_removal
Definition: particles.h:97
v3f m_acceleration
Definition: particles.h:89
video::SMaterial m_material
Definition: particles.h:84
virtual u32 getMaterialCount() const
Definition: particles.h:54
float m_expiration
Definition: particles.h:78
virtual const aabb3f & getBoundingBox() const
Definition: particles.h:49
v2f m_texsize
Definition: particles.h:86
video::SColor m_base_color
Color without lighting.
Definition: particles.h:93
video::SColor m_color
Final rendered color.
Definition: particles.h:95
void updateVertices()
Definition: particles.cpp:198
ClientEnvironment * m_env
Definition: particles.h:80
void updateLight()
Definition: particles.cpp:175
float m_size
Definition: particles.h:91
aabb3f m_collisionbox
Definition: particles.h:83
int m_animation_frame
Definition: particles.h:103
core::aabbox3d< f32 > aabb3f
Definition: irr_aabb3d.h:26
core::vector2d< f32 > v2f
Definition: irr_v2d.h:26
core::vector3d< s16 > v3s16
Definition: irr_v3d.h:28
core::vector3df v3f
Definition: irr_v3d.h:26
#define U32_MAX
Definition: irrlichttypes.h:79
Definition: activeobjectmgr.cpp:25
Definition: clientevent.h:56
Definition: nodedef.h:279
Definition: mapnode.h:118
Definition: particles.h:61
Definition: particles.h:72
u16 amount
Definition: particles.h:73
f32 time
Definition: particles.h:75
Definition: tileanimation.h:33
std::string p(std::string path)
Definition: test_filepath.cpp:59