mirror of
https://github.com/MihailRis/voxelcore.git
synced 2026-10-09 13:01:49 +00:00
update particles garbage collection scheme
This commit is contained in:
parent
cee214754b
commit
1974298c82
5 changed files with 50 additions and 21 deletions
|
|
@ -1,6 +1,7 @@
|
|||
#pragma once
|
||||
|
||||
#include <vector>
|
||||
#include <memory>
|
||||
#include <unordered_map>
|
||||
|
||||
#include "Emitter.hpp"
|
||||
|
|
@ -12,13 +13,15 @@ class MainBatch;
|
|||
|
||||
class ParticlesRenderer {
|
||||
std::unordered_map<const Texture*, std::vector<Particle>> particles;
|
||||
std::vector<Emitter> emitters;
|
||||
std::vector<std::unique_ptr<Emitter>> emitters;
|
||||
std::unique_ptr<MainBatch> batch;
|
||||
|
||||
void renderParticles(const Camera& camera, float delta);
|
||||
public:
|
||||
ParticlesRenderer(const Assets& assets);
|
||||
~ParticlesRenderer();
|
||||
|
||||
void render(const Assets& assets, const Camera& camera, float delta);
|
||||
void render(const Camera& camera, float delta);
|
||||
|
||||
static size_t visibleParticles;
|
||||
static size_t aliveEmitters;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue