diff options
author | Daria Volvenkova <d.volvenkova@corp.mail.ru> | 2017-05-16 14:42:32 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-05-16 14:42:32 +0300 |
commit | d2f79bd2c7004af2d1459e8d5b7748763f241a54 (patch) | |
tree | 64300bccb750e59f7c3a05800eafcd5c3b3f89cb /drape/data_buffer.cpp | |
parent | aa6703383e8d4c2ff8445e8b3c27728846cdab4b (diff) | |
parent | 086d6f9cf247cea07cff6bc33d5567dc7c64806b (diff) |
Merge pull request #6040 from rokuz/es3-supportbeta-810
Added OpenGL ES3 support
Diffstat (limited to 'drape/data_buffer.cpp')
-rw-r--r-- | drape/data_buffer.cpp | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/drape/data_buffer.cpp b/drape/data_buffer.cpp index fccc4fa7f9..672741fa9d 100644 --- a/drape/data_buffer.cpp +++ b/drape/data_buffer.cpp @@ -3,7 +3,6 @@ namespace dp { - DataBuffer::DataBuffer(uint8_t elementSize, uint32_t capacity) : m_impl(make_unique_dp<CpuBufferImpl>(elementSize, capacity)) { @@ -17,30 +16,31 @@ ref_ptr<DataBufferBase> DataBuffer::GetBuffer() const void DataBuffer::MoveToGPU(GPUBuffer::Target target) { - // if currentSize is 0 buffer hasn't been filled on preparation stage, let it be filled further + // If currentSize is 0 buffer hasn't been filled on preparation stage, let it be filled further. uint32_t const currentSize = m_impl->GetCurrentSize(); if (currentSize != 0) - m_impl = make_unique_dp<GpuBufferImpl>(target, m_impl->Data(),m_impl->GetElementSize(), currentSize); + { + m_impl = make_unique_dp<GpuBufferImpl>(target, m_impl->Data(), m_impl->GetElementSize(), + currentSize); + } else - m_impl = make_unique_dp<GpuBufferImpl>(target, nullptr, m_impl->GetElementSize(), m_impl->GetAvailableSize()); + { + m_impl = make_unique_dp<GpuBufferImpl>(target, nullptr, m_impl->GetElementSize(), + m_impl->GetAvailableSize()); + } } - -DataBufferMapper::DataBufferMapper(ref_ptr<DataBuffer> buffer) +DataBufferMapper::DataBufferMapper(ref_ptr<DataBuffer> buffer, uint32_t elementOffset, + uint32_t elementCount) : m_buffer(buffer) { m_buffer->GetBuffer()->Bind(); - m_ptr = m_buffer->GetBuffer()->Map(); -} - -DataBufferMapper::~DataBufferMapper() -{ - m_buffer->GetBuffer()->Unmap(); + m_ptr = m_buffer->GetBuffer()->Map(elementOffset, elementCount); } +DataBufferMapper::~DataBufferMapper() { m_buffer->GetBuffer()->Unmap(); } void DataBufferMapper::UpdateData(void const * data, uint32_t elementOffset, uint32_t elementCount) { m_buffer->GetBuffer()->UpdateData(m_ptr, data, elementOffset, elementCount); } - -} +} // namespace dp |