这是indexloc提供的服务,不要输入任何密码
Skip to content

Raise maxVertexBuffers default to 16 #4284

@kainino0x

Description

@kainino0x

Currently maxVertexBuffers defaults to 8, but this is a regression compared with WebGL 2.0. All of the backends support 16, except...

In WebGPU implementations on Metal which are not using Metal's Argument Buffers, maxVertexBuffers contends with maxStorageBuffersPerShaderStage and maxUniformBuffersPerShaderStage for the Metal limit Maximum number of entries in the buffer argument table, per graphics or kernel function (#693 (comment)).

With argument buffers, this is no longer a problem, because we added the combined limit maxBindGroupsPlusVertexBuffers to take care of this (#2749). We just didn't add a limit for non-argument-buffers cases because that's backward-looking.

Per #1069 (comment) we no longer officially support Metal versions without argument buffers. However we'll want to hold off on raising this base limit until implementations are actually migrated to using argument buffers, so IMO this is no earlier than Milestone 2.

Metadata

Metadata

Assignees

No one assigned

    Labels

    apiWebGPU APIapi-milestone-2-202502api issues that were in milestone 2 before we triaged milestone 1 on 2025-02-19enhancement

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions