diff options
| author | skal <pascal.massimino@gmail.com> | 2026-02-14 14:15:07 +0100 |
|---|---|---|
| committer | skal <pascal.massimino@gmail.com> | 2026-02-14 14:15:07 +0100 |
| commit | 12f83d4615a38cb0b1ed8a3eb436c4acca170479 (patch) | |
| tree | f9058b6e526ff3015b10da2d20ac5e0b15638706 /src/gpu | |
| parent | 61ced8aa1946cc32de4328cc75b5faf6b77723be (diff) | |
Refactor: add gpu_create_post_process_texture helper
Adds new helper for common post-process texture pattern (RenderAttachment
| TextureBinding | CopySrc usage). Refactors test_post_process_helper.cc
to use gpu_create_buffer() and gpu_create_post_process_texture(),
eliminating 91 lines of boilerplate.
- New: gpu_create_post_process_texture() in gpu.{h,cc}
- Refactor: test_post_process_helper.cc uses helpers instead of raw WGPU
- Doc: Updated WGPU_HELPERS.md with usage examples
- Verified: All tests passing (test_post_process_helper, test_demo_effects)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Diffstat (limited to 'src/gpu')
| -rw-r--r-- | src/gpu/gpu.cc | 10 | ||||
| -rw-r--r-- | src/gpu/gpu.h | 3 |
2 files changed, 13 insertions, 0 deletions
diff --git a/src/gpu/gpu.cc b/src/gpu/gpu.cc index 535de67..afbba90 100644 --- a/src/gpu/gpu.cc +++ b/src/gpu/gpu.cc @@ -84,6 +84,16 @@ TextureWithView gpu_create_storage_texture_2d(WGPUDevice device, uint32_t width, WGPUTextureUsage_StorageBinding | WGPUTextureUsage_TextureBinding, 1); } +TextureWithView gpu_create_post_process_texture(WGPUDevice device, + uint32_t width, uint32_t height, + WGPUTextureFormat format) { + return gpu_create_texture_2d( + device, width, height, format, + WGPUTextureUsage_RenderAttachment | WGPUTextureUsage_TextureBinding | + WGPUTextureUsage_CopySrc, + 1); +} + WGPUTextureView gpu_create_mip_view(WGPUTexture texture, WGPUTextureFormat format, uint32_t mip_level) { diff --git a/src/gpu/gpu.h b/src/gpu/gpu.h index 74e0eb7..0b0153b 100644 --- a/src/gpu/gpu.h +++ b/src/gpu/gpu.h @@ -97,6 +97,9 @@ TextureWithView gpu_create_texture_2d(WGPUDevice device, uint32_t width, TextureWithView gpu_create_storage_texture_2d(WGPUDevice device, uint32_t width, uint32_t height, WGPUTextureFormat format); +TextureWithView gpu_create_post_process_texture(WGPUDevice device, + uint32_t width, uint32_t height, + WGPUTextureFormat format); WGPUTextureView gpu_create_mip_view(WGPUTexture texture, WGPUTextureFormat format, uint32_t mip_level); WGPUTextureView gpu_create_texture_view_2d(WGPUTexture texture, |
