src/libANGLE/renderer/wgpu/wgpu_pipeline_state.cpp


Log

Author Commit Date CI Message
Liza Burakova bb14aa4d 2024-09-19T11:17:05 WebGPU: set vertex buffers. This change actually sets the vertex attributes that are added to the render pipeline description owned by the context, as well as sets the vertex buffer in the pipeline. Bug: angleproject:359823692 Change-Id: I5e94b357a4e6eadc1bbba54965cef94f90113b4e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5789155 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Liza Burakova <liza@chromium.org>
Matthew Denton c2a9300c 2024-09-10T19:33:33 WGSL: Rewrite input/output variables GLSL builtin variables and in/out variables correspond to WGSL's main function params and return value, so rewrite them accordingly. This is done by generating structs to use as main function params and return values, generating similar global structs, and copying the former into the latter so the rest of the program can just use the variables stored in the global structs. Bug: angleproject:42267100 Change-Id: Ic3e1196f6fb95b963ce03845096a59ea7599d608 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5835347 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Matthew Denton <mpdenton@chromium.org>
Liza Burakova 84492ff3 2024-09-10T13:11:07 Sync vertex attributs in VertexArrayWgpu. This change only sets vertex attributes within VertexArrayWgpu and sets them in the render pipeline description owned by the context. It does not yet set attributes in the output pipeline created in CreatePipeline, as vertex buffers are also not set yet. Bug: angleproject:359823692 Change-Id: I1c3848e15d790026d53d4ab5614b1125f773e06a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5781788 Commit-Queue: Liza Burakova <liza@chromium.org> Reviewed-by: Matthew Denton <mpdenton@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang e10e31ed 2024-08-26T12:56:42 WebGPU: Add error handling macros for debugging. Add a ANGLE_WGPU_SCOPED_DEBUG_TRY to create an error scope, execute some commands and pop the scope in builds with assertions enabled. A follow-up with full error handling at frame boundaries is still needed. Bug: angleproject:362191737 Change-Id: I4af9e1587f6d70bf14a3f6435b487e26424624ef Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5813006 Reviewed-by: Matthew Denton <mpdenton@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Liza Burakova 057bc0f0 2024-08-07T11:38:54 WebGPU: Set multiple parameters in RenderPipelineDesc. This change adds multiple setters to RenderPipelineDesc to set various parameters within the DepthStencilState. Bug: angleproject:42267012 Change-Id: I71eed7195477572295de6575bfa18d2c58ca93de Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5765553 Reviewed-by: Matthew Denton <mpdenton@chromium.org> Commit-Queue: Liza Burakova <liza@chromium.org>
Geoff Lang 0898dab0 2024-07-30T21:34:00 WebGPU: Skip primitive topology conversion for DrawArrays For non-indexed draw calls, no index format is needed for the stripIndexFormat. Bug: angleproject:356399840 Change-Id: Ie2c9805a2c257d94ea5f1bca026287873e4d6781 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5748449 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Geoff Lang 84e54d88 2024-07-22T14:39:22 WebGPU: Add command buffers and renderpass management Add a CommandBuffer class to serialize and replay WebGPU commands. Only Draw and SetPipeline are implemented in this patch. Manage render pass begin and end events due to framebuffer changes and swapping. Handle the color mask dirty bits so that a non-zero color mask will be used. All togther, this is enough to draw a triangle using a hard-coded shader without inputs. Bug: angleproject:0 Change-Id: I0fbf0296563c02c7f0774ad4197b83f4c93c22bb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5731594 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Liza Burakova <liza@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Geoff Lang c4274d54 2024-04-29T11:47:34 WebGPU: Add pipeline creation and caching. Bug: angleproject:342213825 Change-Id: I303f193d30fd6b9820efaefcae64e11042888009 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5497535 Reviewed-by: Liza Burakova <liza@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>