2
0

lightSystem.h 487 B

1234567891011121314151617181920212223242526
  1. #pragma once
  2. #include <glm/vec3.hpp>
  3. #include <deque>
  4. bool constexpr dontUpdateLightSystem = 1;
  5. struct ChunkSystem;
  6. struct LightSystem
  7. {
  8. struct Light
  9. {
  10. glm::ivec3 pos = {};
  11. char intensity = 0; //0..15
  12. };
  13. std::deque<Light> sunLigtsToAdd;
  14. std::deque<Light> sunLigtsToRemove;
  15. void update(ChunkSystem &chunkSystem);
  16. void addSunLight(ChunkSystem &chunkSystem, glm::ivec3 pos, char intensity);
  17. void removeSunLight(ChunkSystem &chunkSystem, glm::ivec3 pos, char oldVal);
  18. };