X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fworld%2FBlockType.hpp;h=4208d94665d29ed56436b8662a406427f787b0b8;hb=b61d462707dd3d40a32a6104d88eb24f6a52df63;hp=0cae9c00389767c013880e559f3a37bf1126c7c8;hpb=75ebb9101c7aec9c16ef418b822c39e81889f66f;p=blank.git diff --git a/src/world/BlockType.hpp b/src/world/BlockType.hpp index 0cae9c0..4208d94 100644 --- a/src/world/BlockType.hpp +++ b/src/world/BlockType.hpp @@ -2,10 +2,10 @@ #define BLANK_WORLD_BLOCKTYPE_HPP_ #include "Block.hpp" -#include "../model/BlockModel.hpp" -#include "../model/EntityModel.hpp" -#include "../model/OutlineModel.hpp" -#include "../model/shapes.hpp" +#include "../graphics/BlockMesh.hpp" +#include "../graphics/EntityMesh.hpp" +#include "../graphics/OutlineMesh.hpp" +#include "../model/bounds.hpp" #include @@ -16,9 +16,10 @@ namespace blank { /// attributes of a type of block struct BlockType { - const Shape *shape; + const CollisionBounds *shape; float texture; - glm::vec3 color; + glm::vec3 hsl_mod; + glm::vec3 rgb_mod; glm::vec3 outline_color; /// a string to display to the user @@ -72,29 +73,25 @@ struct BlockType { } } fill; - explicit BlockType( - bool v = false, - const glm::vec3 &color = { 1, 1, 1 }, - const Shape *shape = &DEFAULT_SHAPE - ) noexcept; + BlockType() noexcept; - static const NullShape DEFAULT_SHAPE; + static const NullBounds DEFAULT_SHAPE; bool FaceFilled(const Block &block, Block::Face face) const noexcept { return fill[block.OrientedFace(face)]; } - void FillEntityModel( - EntityModel::Buffer &m, + void FillEntityMesh( + EntityMesh::Buffer &m, const glm::mat4 &transform = glm::mat4(1.0f), - EntityModel::Index idx_offset = 0 + EntityMesh::Index idx_offset = 0 ) const noexcept; - void FillBlockModel( - BlockModel::Buffer &m, + void FillBlockMesh( + BlockMesh::Buffer &m, const glm::mat4 &transform = glm::mat4(1.0f), - BlockModel::Index idx_offset = 0 + BlockMesh::Index idx_offset = 0 ) const noexcept; - void FillOutlineModel(OutlineModel::Buffer &m) const noexcept; + void FillOutlineMesh(OutlineMesh::Buffer &m) const noexcept; };