[Fix] (MG_Impl/GLImpl): report fragment image uniform limits

This commit is contained in:
2026-07-03 01:32:59 +08:00
parent d472d8c32e
commit 7c26ff1b81
@@ -1076,16 +1076,10 @@ namespace MobileGL::MG_Impl::GLImpl {
*params = kFrontendMaxFragmentInputComponents; *params = kFrontendMaxFragmentInputComponents;
return; return;
case GL_MAX_FRAGMENT_IMAGE_UNIFORMS: case GL_MAX_FRAGMENT_IMAGE_UNIFORMS:
if (MG_Backend::pActiveBackendObject &&
MG_Backend::pActiveBackendObject->GetBackendType() == BackendType::DirectVulkan) {
// TODO: Advertise fragment image uniforms on DirectVulkan once image-load-store draw paths do not trap.
*params = 0;
} else {
// TODO: Track per-stage image uniform limits separately instead of reusing the compute/backend stage cap. // TODO: Track per-stage image uniform limits separately instead of reusing the compute/backend stage cap.
*params = MG_Backend::pActiveBackendObject *params = MG_Backend::pActiveBackendObject
? MG_Backend::pActiveBackendObject->GetDynamicParameters().MaxComputeImageUniforms ? MG_Backend::pActiveBackendObject->GetDynamicParameters().MaxComputeImageUniforms
: MG_Backend::DynamicBackendParameters{}.MaxComputeImageUniforms; : MG_Backend::DynamicBackendParameters{}.MaxComputeImageUniforms;
}
return; return;
case GL_MAX_FRAGMENT_UNIFORM_COMPONENTS: case GL_MAX_FRAGMENT_UNIFORM_COMPONENTS:
*params = kFrontendMaxFragmentUniformComponents; *params = kFrontendMaxFragmentUniformComponents;