diff --git a/Source/Engine/Graphics/Models/Mesh.cpp b/Source/Engine/Graphics/Models/Mesh.cpp index c2f340645..b793cfe38 100644 --- a/Source/Engine/Graphics/Models/Mesh.cpp +++ b/Source/Engine/Graphics/Models/Mesh.cpp @@ -70,8 +70,7 @@ namespace if (accessor.AllocateBuffer(MeshBufferType::Vertex0, vertexCount, vb0layout)) return true; auto positionStream = accessor.Position(); - ASSERT(positionStream.IsLinear(PixelFormat::R32G32B32_Float)); - positionStream.SetLinear(vertices); + positionStream.Set(Span(vertices, vertexCount)); } // Vertex Buffer 1 (general purpose components) diff --git a/Source/Engine/Graphics/Models/SkinnedMesh.cpp b/Source/Engine/Graphics/Models/SkinnedMesh.cpp index 0377003be..97aa6f6fb 100644 --- a/Source/Engine/Graphics/Models/SkinnedMesh.cpp +++ b/Source/Engine/Graphics/Models/SkinnedMesh.cpp @@ -44,7 +44,7 @@ namespace // Index Buffer { - if (accessor.AllocateBuffer(MeshBufferType::Index, triangleCount, indexFormat)) + if (accessor.AllocateBuffer(MeshBufferType::Index, triangleCount * 3, indexFormat)) return true; auto indexStream = accessor.Index(); ASSERT(indexStream.IsLinear(indexFormat)); @@ -73,8 +73,7 @@ namespace return true; auto positionStream = accessor.Position(); - ASSERT(positionStream.IsLinear(PixelFormat::R32G32B32_Float)); - positionStream.SetLinear(vertices); + positionStream.Set(Span(vertices, vertexCount)); if (normals) { auto normalStream = accessor.Normal();