X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fmodel%2Fshape.cpp;h=d69046e6c7c00523f93a2936c0c7e558eb88ff16;hb=eba29c8ad489194cd1e3cd64b5f23424ad4384ef;hp=c2d82613eff27d416fe7697d0a07da81eca183ed;hpb=f417749fb09718cde2faad77e8430cf175c68374;p=blank.git diff --git a/src/model/shape.cpp b/src/model/shape.cpp index c2d8261..d69046e 100644 --- a/src/model/shape.cpp +++ b/src/model/shape.cpp @@ -5,7 +5,7 @@ namespace blank { void Shape::Vertices( - EntityModel::Buffer &out, + EntityMesh::Buffer &out, float tex_offset ) const { for (const auto &pos : vtx_pos) { @@ -23,10 +23,10 @@ void Shape::Vertices( } void Shape::Vertices( - EntityModel::Buffer &out, + EntityMesh::Buffer &out, const glm::mat4 &transform, float tex_offset, - EntityModel::Index idx_offset + EntityMesh::Index idx_offset ) const { for (const auto &pos : vtx_pos) { out.vertices.emplace_back(transform * glm::vec4(pos, 1.0f)); @@ -43,10 +43,10 @@ void Shape::Vertices( } void Shape::Vertices( - BlockModel::Buffer &out, + BlockMesh::Buffer &out, const glm::mat4 &transform, float tex_offset, - BlockModel::Index idx_offset + BlockMesh::Index idx_offset ) const { for (const auto &pos : vtx_pos) { out.vertices.emplace_back(transform * glm::vec4(pos, 1.0f)); @@ -59,23 +59,15 @@ void Shape::Vertices( } } -void Shape::Outline( - OutlineModel::Buffer &out, - const OutlineModel::Position &elem_offset, - OutlineModel::Index idx_offset -) const { - for (const auto &pos : out_pos) { - out.vertices.emplace_back(elem_offset + pos); - } - for (auto idx : out_idx) { - out.indices.emplace_back(idx_offset + idx); - } +void Shape::Outline(OutlineMesh::Buffer &out) const { + out.vertices.insert(out.vertices.end(), out_pos.begin(), out_pos.end()); + out.indices.insert(out.indices.end(), out_idx.begin(), out_idx.end()); } void Shape::SetShape( - const EntityModel::Positions &pos, - const EntityModel::Normals &nrm, - const EntityModel::Indices &idx + const EntityMesh::Positions &pos, + const EntityMesh::Normals &nrm, + const EntityMesh::Indices &idx ) { vtx_pos = pos; vtx_nrm = nrm; @@ -83,14 +75,14 @@ void Shape::SetShape( } void Shape::SetTexture( - const BlockModel::TexCoords &tex_coords + const BlockMesh::TexCoords &tex_coords ) { vtx_tex_coords = tex_coords; } void Shape::SetOutline( - const OutlineModel::Positions &pos, - const OutlineModel::Indices &idx + const OutlineMesh::Positions &pos, + const OutlineMesh::Indices &idx ) { out_pos = pos; out_idx = idx;