X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fworld%2Fblock.cpp;h=a3db57d91242dfadece48003c0f656fc46ff1a64;hb=04b035d837668eb6444ec34e59c018d0c25983fd;hp=b0fdf61d71aee0a35adbfa9c82d5816b20fc4c0e;hpb=fda38181732e58537331c919dd699eaa830ead50;p=blank.git diff --git a/src/world/block.cpp b/src/world/block.cpp index b0fdf61..a3db57d 100644 --- a/src/world/block.cpp +++ b/src/world/block.cpp @@ -76,7 +76,7 @@ BlockType::BlockType() noexcept , textures() , hsl_mod(0, 255, 255) , rgb_mod(255, 255, 255) -, outline_color(0, 0, 0) +, outline_color(0, 0, 0, 255) , gravity() , name("anonymous") , label("some block") @@ -149,13 +149,13 @@ void BlockType::Read( in.Skip(Token::BRACKET_CLOSE); } else if (name == "rgb_mod") { in.ReadVec(color_conv); - rgb_mod = glm::tvec3(color_conv * 255.0f); + rgb_mod = BlockMesh::ColorMod(color_conv * 255.0f); } else if (name == "hsl_mod") { in.ReadVec(color_conv); - hsl_mod = glm::tvec3(color_conv * 255.0f); + hsl_mod = BlockMesh::ColorMod(color_conv * 255.0f); } else if (name == "outline") { in.ReadVec(color_conv); - outline_color = glm::tvec3(color_conv * 255.0f); + outline_color = PrimitiveMesh::Color(color_conv * 255.0f, 255); } else if (name == "gravity") { gravity = BlockGravity::Read(in); } else if (name == "label") { @@ -240,7 +240,7 @@ void BlockType::FillBlockMesh( void BlockType::OutlinePrimitiveMesh(PrimitiveMesh::Buffer &buf) const noexcept { if (!shape) return; shape->Outline(buf); - buf.colors.insert(buf.colors.end(), shape->OutlineCount(), glm::tvec4(outline_color, 255)); + buf.colors.insert(buf.colors.end(), shape->OutlineCount(), outline_color); } @@ -297,8 +297,8 @@ struct RadialGravity : strength(strength) { } glm::vec3 GetGravity(const glm::vec3 &diff, const glm::mat4 &) const noexcept override { - float dist2 = length2(diff); - glm::vec3 dir = -normalize(diff); + float dist2 = glm::length2(diff); + glm::vec3 dir = -glm::normalize(diff); return dir * (strength / dist2); }