fix: gltf buffer view incorrectly calculating stride

This commit is contained in:
Jan 2024-09-06 15:49:06 +01:00
parent e0b28075a6
commit 30ca98d86e
No known key found for this signature in database
GPG Key ID: 44B581F78FF5C57C

View File

@ -12,7 +12,7 @@ BufferView::BufferView(const Buffer* buffer, const size_t offset, const size_t l
bool BufferView::ReadElement(void* dest, const size_t elementIndex, const size_t elementSize, const size_t elementOffset) const bool BufferView::ReadElement(void* dest, const size_t elementIndex, const size_t elementSize, const size_t elementOffset) const
{ {
const auto stride = std::max(elementOffset + elementSize, m_stride); const auto stride = std::max(elementSize, m_stride);
const auto bufferViewOffset = elementOffset + elementIndex * stride; const auto bufferViewOffset = elementOffset + elementIndex * stride;
if (bufferViewOffset + elementSize > m_length) if (bufferViewOffset + elementSize > m_length)
return false; return false;