Contributor
Srijan Dhungana

Chromium - Dawn - Static Samplers


Mentors
Stephen, Austin Eng, kainino
Organization
Chromium
Technologies
javascript, c++, vulkan, Metal, D3D12
Topics
web, graphics
This proposal aims to implement full static sampler support for Dawn, a WebGPU implementation for Chromium. A sampler is a GPU resource that defines a set of rules for the GPU on how to read images. Currently to use samplers, it has to be specified in a GPU shader, created in the application code, and then supplied to the GPU as an input. Static samplers allow developers to specify samplers inside GPU shader code and forget about them in their program code, this significantly improves their workflow. Dawn, as the future of GPU programming in the Web, it is important to improve the developer experience and simplify the workflow. The project will involve: proposing static samplers in the WebGPU specification, implementing static samplers in D3D12, and Metal, Allowing the developer to specify static samplers in shaders and through the WebGPU API.