From 294f15fd5ecce1add822682d5739cae2a01d2014 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branimir=20Karad=C5=BEi=C4=87?= Date: Tue, 28 Mar 2017 17:35:16 -0700 Subject: [PATCH] Allow updating RO compute buffers. --- src/bgfx_p.h | 2 +- tools/texturec/texturec.cpp | 8 ++++---- tools/texturev/texturev.cpp | 21 ++++++++++++++------- 3 files changed, 19 insertions(+), 12 deletions(-) diff --git a/src/bgfx_p.h b/src/bgfx_p.h index 265fe30df..775cd157c 100644 --- a/src/bgfx_p.h +++ b/src/bgfx_p.h @@ -2645,7 +2645,7 @@ namespace bgfx BGFX_CHECK_HANDLE("updateDynamicVertexBuffer", m_dynamicVertexBufferHandle, _handle); DynamicVertexBuffer& dvb = m_dynamicVertexBuffers[_handle.idx]; - BX_CHECK(0 == (dvb.m_flags & BGFX_BUFFER_COMPUTE_READ_WRITE), "Can't update GPU buffer from CPU."); + BX_CHECK(0 == (dvb.m_flags & BGFX_BUFFER_COMPUTE_WRITE), "Can't update GPU write buffer from CPU."); if (dvb.m_size < _mem->size && 0 != (dvb.m_flags & BGFX_BUFFER_ALLOW_RESIZE) ) diff --git a/tools/texturec/texturec.cpp b/tools/texturec/texturec.cpp index 3dd106a4b..6fcb3f13c 100644 --- a/tools/texturec/texturec.cpp +++ b/tools/texturec/texturec.cpp @@ -305,10 +305,10 @@ namespace bgfx return true; default: - return imageConvert(_dst, format, _src, TextureFormat::RGBA8, _width, _height); + break; } - return false; + return imageConvert(_dst, format, _src, TextureFormat::RGBA8, _width, _height); } bool imageEncodeFromRgba32f(bx::AllocatorI* _allocator, void* _dst, const void* _src, uint32_t _width, uint32_t _height, uint8_t _format) @@ -361,10 +361,10 @@ namespace bgfx return true; default: - return imageConvert(_dst, format, _src, TextureFormat::RGBA32F, _width, _height); + break; } - return false; + return imageConvert(_dst, format, _src, TextureFormat::RGBA32F, _width, _height); } void imageRgba32f11to01(void* _dst, uint32_t _width, uint32_t _height, uint32_t _pitch, const void* _src) diff --git a/tools/texturev/texturev.cpp b/tools/texturev/texturev.cpp index bd582c884..7c6d23970 100644 --- a/tools/texturev/texturev.cpp +++ b/tools/texturev/texturev.cpp @@ -856,13 +856,20 @@ int _main_(int _argc, char** _argv) ); std::string title; - bx::stringPrintf(title, "%s (%d x %d%s, %s)" - , filePath - , view.m_info.width - , view.m_info.height - , view.m_info.cubeMap ? " CubeMap" : "" - , bgfx::getName(view.m_info.format) - ); + if (isValid(texture) ) + { + bx::stringPrintf(title, "%s (%d x %d%s, %s)" + , filePath + , view.m_info.width + , view.m_info.height + , view.m_info.cubeMap ? " CubeMap" : "" + , bgfx::getName(view.m_info.format) + ); + } + else + { + bx::stringPrintf(title, "Failed to load %s!", filePath); + } entry::WindowHandle handle = { 0 }; entry::setWindowTitle(handle, title.c_str() ); }