diff --git a/src/bgfx.cpp b/src/bgfx.cpp index cca6abad6..0dd2dea15 100644 --- a/src/bgfx.cpp +++ b/src/bgfx.cpp @@ -3965,6 +3965,12 @@ namespace bgfx const TextureRef& src = s_ctx->m_textureRef[_src.idx]; const TextureRef& dst = s_ctx->m_textureRef[_dst.idx]; + BX_ASSERT(dst.isBlitDst() + , "Blit destination texture (handle %d, '%S') is not created with `BGFX_TEXTURE_BLIT_DST` flag." + , _dst.idx + , &dst.m_name + ); + BX_ASSERT(src.m_format == dst.m_format , "Texture format must match (src %s, dst %s)." , bimg::getName(bimg::TextureFormat::Enum(src.m_format) ) diff --git a/src/bgfx_p.h b/src/bgfx_p.h index 62fe83366..218513d0a 100644 --- a/src/bgfx_p.h +++ b/src/bgfx_p.h @@ -1886,6 +1886,11 @@ namespace bgfx return 0 != (m_flags & BGFX_TEXTURE_READ_BACK); } + bool isBlitDst() const + { + return 0 != (m_flags & BGFX_TEXTURE_BLIT_DST); + } + bool isCubeMap() const { return m_cubeMap;