#pragma once #include #include #include "Vector.hpp" #include "Section.hpp" #include "AssetManager.hpp" class World; struct BlockLightness { unsigned char face[FaceDirection::none] = { 0,0,0,0,0,0 }; }; struct SectionsData { Section section; Section west; Section east; Section top; Section bottom; Section north; Section south; BlockLightness GetLight(const Vector &pos) const; BlockLightness GetSkyLight(const Vector &pos) const; }; struct RendererSectionData { std::vector models; std::vector textures; std::vector textureLayers; std::vector colors; std::vector lights; size_t hash = 0; Vector sectionPos; bool forced = false; }; RendererSectionData ParseSection(const SectionsData §ions);