mirror of
https://github.com/MobileGL-Dev/MobileGL
synced 2026-09-12 06:08:30 +09:00
[Fix, Test] (MG_State, MG_Backend/DirectVulkan, MG_Backend/DirectGLES, MG_IntegrationTest): a respecified capture buffer left the transform feedback writing one store and the readback reading another
This commit is contained in:
@@ -70,6 +70,15 @@ namespace MobileGL::MG_State::GLState {
|
||||
m_shadow->shrink_to_fit();
|
||||
}
|
||||
|
||||
// Give the adoption back: the bytes resolve against the shadow again (which
|
||||
// the caller must (re)size, it was released on adoption). Used when the store
|
||||
// itself is redefined - the mapping describes exactly the store that is going
|
||||
// away, so it may neither be written through nor kept. It is NOT a general
|
||||
// "unmap": a persistent map the application holds outlives every unmap by
|
||||
// definition, and the calls that could redefine such a buffer's store are
|
||||
// errors the frontend refuses before reaching here.
|
||||
void ReleasePersistentMap() { m_gpuMapped = nullptr; }
|
||||
|
||||
// Backend GPU resource, owned here in both modes.
|
||||
const SharedPtr<BackendBufferResource>& Backend() const { return m_backend; }
|
||||
void SetBackend(SharedPtr<BackendBufferResource> backend) { m_backend = std::move(backend); }
|
||||
|
||||
Reference in New Issue
Block a user