Skip to content

Bindless Tracking Issue #3637

@kanerogers

Description

@kanerogers

Update

Lots of spec work has happened in the upstream WebGPU API for bindless. See #8557 for information about the current angle that the spec is looking at.

Overview

This issue tracks enabling various "bindless" functionality for the various native backends.

For a high level guide on what we believe the bindless api should look like, look at https://hackmd.io/@cwfitzgerald/wgpu-bindless

Binding Array Support

Uniform Buffers

Partially bound descriptors

Validation

GPU Validation

  • Validate Binding Array Access is in Bounds on Vulkan
  • Validate Binding Array Access is in Bounds on Metal
  • Validate Binding Array Access is in Bounds on DX12

Sparse Bind Groups

  • Implement Validation Resource Metadata Buffer on Vulkan
  • Implement Validation Resource Metadata Buffer on Metal
  • Implement Validation Resource Metadata Buffer on DX12

Mutable Bind Groups

  • Implement BindGroup::update_bindings Without Holes

Read Only Resources

  • Implement Texture::set_usages
  • Implement Buffer::set_usages

Temporary Removal

  • Implement prototype temporary remove api. Depends on "Sparse Bind Groups"

Non-wgpu Shader Translation

Driver Bugs(?)

Metadata

Metadata

Assignees

No one assigned

    Labels

    area: apiIssues related to API surfacefeature: bindlessIssues with the Bindless Native Featuretype: enhancementNew feature or requesttype: trackingNot a bug or an enhancement

    Type

    No type

    Projects

    Status

    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions