voxels renderer rebuilt, WorldFiles fix

This commit is contained in:
MihailRis
2023-11-02 13:23:52 +03:00
committed by GitHub
parent 0576316282
commit 754c5b80d0
44 changed files with 1141 additions and 524 deletions
+31
View File
@@ -0,0 +1,31 @@
#ifndef SRC_GRAPHICS_CHUNKSRENDERER_H_
#define SRC_GRAPHICS_CHUNKSRENDERER_H_
#include <memory>
#include <unordered_map>
#include <glm/glm.hpp>
#include "../voxels/Block.h"
#include "../voxels/ChunksStorage.h"
class Mesh;
class Chunk;
class Level;
class BlocksRenderer;
class ChunksRenderer {
BlocksRenderer* renderer;
Level* level;
std::unordered_map<glm::ivec2, std::shared_ptr<Mesh>> meshes;
public:
ChunksRenderer(Level* level);
virtual ~ChunksRenderer();
std::shared_ptr<Mesh> render(Chunk* chunk);
void unload(Chunk* chunk);
std::shared_ptr<Mesh> getOrRender(Chunk* chunk);
std::shared_ptr<Mesh> get(Chunk* chunk);
};
#endif // SRC_GRAPHICS_CHUNKSRENDERER_H_