Crafter.Graphics/interfaces
catbot 097cc37347 feat(webgpu): HDR post-process primitives — float textures, storage-texture bindings, RESOLVE→HDR target (#27)
Adds the minimal WebGPU-backend surface an HDR bloom/post chain needs:

1. wgpuCreateStorageImage2D + StorageImage2D<>: runtime rgba16float (or
   other format) textures with STORAGE_BINDING|TEXTURE_BINDING usage, no
   CompressedTextureAsset upload — GPU-produced HDR targets.
2. UICustomBindingKind::StorageTexture (kind 5): write-only storage-texture
   binding carrying a texel format (the freed UICustomBinding::format byte),
   wired through all three binding paths (UI custom / RT / plain compute).
   Float textures already sample via SampledTexture (sampleType float).
3. PipelineRTWebGPU::Init(..., hdrOutputFormat): RESOLVE writes the linear
   accumulator into a user rgba16float texture (RTPass::outTexHandle)
   instead of the rgba8unorm canvas, leaving the composite→swapchain pass to
   the app. Default RGBA8Unorm keeps the canvas path byte-identical.

Existing RT examples updated for the _pad→format field rename; the default
paths are unchanged (verified RTStress builds + renders).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 12:55:14 +00:00
..
Crafter.Graphics-Animation.cppm cleaned up renderer 2026-03-09 20:10:19 +01:00
Crafter.Graphics-Clipboard.cppm clipboard 2026-05-19 00:45:22 +02:00
Crafter.Graphics-ComputeShader.cppm fix(vulkan-rt): configurable recursion depth + per-shader TLAS push for compute (#21) 2026-06-03 18:35:39 +00:00
Crafter.Graphics-Decompress.cppm browser DOM support 2026-05-18 02:07:48 +02:00
Crafter.Graphics-DescriptorHeapVulkan.cppm browser DOM support 2026-05-18 02:07:48 +02:00
Crafter.Graphics-DescriptorHeapWebGPU.cppm webgpu improvements 2026-05-24 13:32:08 +02:00
Crafter.Graphics-Device.cppm fix(vulkan-rt): configurable recursion depth + per-shader TLAS push for compute (#21) 2026-06-03 18:35:39 +00:00
Crafter.Graphics-Dom.cppm browser DOM support 2026-05-18 02:07:48 +02:00
Crafter.Graphics-DomEvents.cppm browser DOM support 2026-05-18 02:07:48 +02:00
Crafter.Graphics-Font.cppm webgpu support 2026-05-18 04:58:52 +02:00
Crafter.Graphics-FontAtlas.cppm webgpu support 2026-05-18 04:58:52 +02:00
Crafter.Graphics-ForwardDeclarations.cppm rendertargetvulkan 2026-04-11 18:48:00 +02:00
Crafter.Graphics-Gamepad.cppm new input system 2026-05-12 00:24:48 +02:00
Crafter.Graphics-GraphicsTypes.cppm webgpu support 2026-05-18 04:58:52 +02:00
Crafter.Graphics-Image2D.cppm feat(webgpu): HDR post-process primitives — float textures, storage-texture bindings, RESOLVE→HDR target (#27) 2026-06-09 12:55:14 +00:00
Crafter.Graphics-ImageVulkan.cppm browser DOM support 2026-05-18 02:07:48 +02:00
Crafter.Graphics-Input.cppm new input system 2026-05-12 00:24:48 +02:00
Crafter.Graphics-InputField.cppm webgpu improvements 2026-05-24 13:32:08 +02:00
Crafter.Graphics-Keys.cppm browser DOM support 2026-05-18 02:07:48 +02:00
Crafter.Graphics-Mesh.cppm feat(webgpu-rt): add intersection stage, procedural hit group, AABB BLAS API 2026-06-02 22:09:14 +00:00
Crafter.Graphics-PipelineRTVulkan.cppm fix(vulkan-rt): configurable recursion depth + per-shader TLAS push for compute (#21) 2026-06-03 18:35:39 +00:00
Crafter.Graphics-PipelineRTWebGPU.cppm feat(webgpu): HDR post-process primitives — float textures, storage-texture bindings, RESOLVE→HDR target (#27) 2026-06-09 12:55:14 +00:00
Crafter.Graphics-PlainComputeShader.cppm webgpu improvements 2026-05-24 13:32:08 +02:00
Crafter.Graphics-RenderingElement3D.cppm webgpu improvements 2026-05-24 13:32:08 +02:00
Crafter.Graphics-RenderPass.cppm webgpu support 2026-05-18 04:58:52 +02:00
Crafter.Graphics-Router.cppm browser DOM support 2026-05-18 02:07:48 +02:00
Crafter.Graphics-RT.cppm feat(webgpu-rt): add intersection stage, procedural hit group, AABB BLAS API 2026-06-02 22:09:14 +00:00
Crafter.Graphics-RTPass.cppm feat(webgpu): HDR post-process primitives — float textures, storage-texture bindings, RESOLVE→HDR target (#27) 2026-06-09 12:55:14 +00:00
Crafter.Graphics-SamplerVulkan.cppm browser DOM support 2026-05-18 02:07:48 +02:00
Crafter.Graphics-ShaderBindingTableVulkan.cppm fix(vulkan-rt): configurable recursion depth + per-shader TLAS push for compute (#21) 2026-06-03 18:35:39 +00:00
Crafter.Graphics-ShaderBindingTableWebGPU.cppm feat(webgpu-rt): add intersection stage, procedural hit group, AABB BLAS API 2026-06-02 22:09:14 +00:00
Crafter.Graphics-ShaderVulkan.cppm fix(vulkan-rt): configurable recursion depth + per-shader TLAS push for compute (#21) 2026-06-03 18:35:39 +00:00
Crafter.Graphics-Types.cppm browser DOM support 2026-05-18 02:07:48 +02:00
Crafter.Graphics-UI.cppm webgpu improvements 2026-05-24 13:32:08 +02:00
Crafter.Graphics-UIComponents.cppm webgpu support 2026-05-18 04:58:52 +02:00
Crafter.Graphics-VulkanBuffer.cppm browser DOM support 2026-05-18 02:07:48 +02:00
Crafter.Graphics-VulkanTransition.cppm browser DOM support 2026-05-18 02:07:48 +02:00
Crafter.Graphics-WebGPU.cppm feat(webgpu): HDR post-process primitives — float textures, storage-texture bindings, RESOLVE→HDR target (#27) 2026-06-09 12:55:14 +00:00
Crafter.Graphics-WebGPUBuffer.cppm webgpu improvements 2026-05-24 13:32:08 +02:00
Crafter.Graphics-WebGPUComputeShader.cppm feat(webgpu): HDR post-process primitives — float textures, storage-texture bindings, RESOLVE→HDR target (#27) 2026-06-09 12:55:14 +00:00
Crafter.Graphics-Window.cppm fix(vulkan): clear startup validation errors on native triangle 2026-05-31 20:59:10 +00:00
Crafter.Graphics.cppm webgpu improvements 2026-05-24 13:32:08 +02:00