Added ability to configure minimum uniform buffer size.

This commit is contained in:
Branimir Karadžić
2025-10-29 13:52:30 -07:00
committed by Бранимир Караџић
parent 71e0db9369
commit 16cf4f8683
13 changed files with 110 additions and 80 deletions

View File

@@ -1649,8 +1649,9 @@ namespace bgfx
LIMITS(maxOcclusionQueries);
LIMITS(maxEncoders);
LIMITS(minResourceCbSize);
LIMITS(transientVbSize);
LIMITS(transientIbSize);
LIMITS(maxTransientVbSize);
LIMITS(maxTransientIbSize);
LIMITS(minUniformBufferSize);
#undef LIMITS
BX_TRACE("");
@@ -2016,14 +2017,14 @@ namespace bgfx
m_textVideoMemBlitter.init(m_init.resolution.debugTextScale);
m_clearQuad.init();
m_submit->m_transientVb = createTransientVertexBuffer(_init.limits.transientVbSize);
m_submit->m_transientIb = createTransientIndexBuffer(_init.limits.transientIbSize);
m_submit->m_transientVb = createTransientVertexBuffer(_init.limits.maxTransientVbSize);
m_submit->m_transientIb = createTransientIndexBuffer(_init.limits.maxTransientIbSize);
frame();
if (BX_ENABLED(BGFX_CONFIG_MULTITHREADED) )
{
m_submit->m_transientVb = createTransientVertexBuffer(_init.limits.transientVbSize);
m_submit->m_transientIb = createTransientIndexBuffer(_init.limits.transientIbSize);
m_submit->m_transientVb = createTransientVertexBuffer(_init.limits.maxTransientVbSize);
m_submit->m_transientIb = createTransientIndexBuffer(_init.limits.maxTransientIbSize);
frame();
}
@@ -3511,8 +3512,9 @@ namespace bgfx
Init::Limits::Limits()
: maxEncoders(BGFX_CONFIG_DEFAULT_MAX_ENCODERS)
, minResourceCbSize(BGFX_CONFIG_MIN_RESOURCE_COMMAND_BUFFER_SIZE)
, transientVbSize(BGFX_CONFIG_TRANSIENT_VERTEX_BUFFER_SIZE)
, transientIbSize(BGFX_CONFIG_TRANSIENT_INDEX_BUFFER_SIZE)
, maxTransientVbSize(BGFX_CONFIG_MAX_TRANSIENT_VERTEX_BUFFER_SIZE)
, maxTransientIbSize(BGFX_CONFIG_MAX_TRANSIENT_INDEX_BUFFER_SIZE)
, minUniformBufferSize(BGFX_CONFIG_MIN_UNIFORM_BUFFER_SIZE)
{
}
@@ -3606,8 +3608,9 @@ namespace bgfx
g_caps.limits.maxFBAttachments = 1;
g_caps.limits.maxEncoders = init.limits.maxEncoders;
g_caps.limits.minResourceCbSize = init.limits.minResourceCbSize;
g_caps.limits.transientVbSize = init.limits.transientVbSize;
g_caps.limits.transientIbSize = init.limits.transientIbSize;
g_caps.limits.maxTransientVbSize = init.limits.maxTransientVbSize;
g_caps.limits.maxTransientIbSize = init.limits.maxTransientIbSize;
g_caps.limits.minUniformBufferSize = init.limits.minUniformBufferSize;
g_caps.vendorId = init.vendorId;
g_caps.deviceId = init.deviceId;