diff --git a/libs/wgpu/include/psemek/wgpu/render_bundle.hpp b/libs/wgpu/include/psemek/wgpu/render_bundle.hpp index 03daa7be..08ba35ea 100644 --- a/libs/wgpu/include/psemek/wgpu/render_bundle.hpp +++ b/libs/wgpu/include/psemek/wgpu/render_bundle.hpp @@ -1,6 +1,7 @@ #pragma once #include +#include namespace psemek::wgpu { @@ -10,6 +11,14 @@ namespace psemek::wgpu { using detail::object::object; + struct descriptor + { + std::vector chain = {}; + std::string label = {}; + }; + + void set_label(std::string const & label); + static void reference(void * ptr); static void release(void * ptr); @@ -18,7 +27,7 @@ namespace psemek::wgpu : detail::object(ptr) {} - friend struct device; + friend struct render_bundle_encoder; }; } diff --git a/libs/wgpu/objects-todo b/libs/wgpu/objects-todo index f411c48d..c60cb642 100644 --- a/libs/wgpu/objects-todo +++ b/libs/wgpu/objects-todo @@ -11,7 +11,7 @@ + WGPUPipelineLayout + WGPUQuerySet + WGPUQueue - WGPURenderBundle ++ WGPURenderBundle WGPURenderBundleEncoder + WGPURenderPassEncoder + WGPURenderPipeline diff --git a/libs/wgpu/source/render_bundle.cpp b/libs/wgpu/source/render_bundle.cpp index 5c8dbaf5..6aeed09b 100644 --- a/libs/wgpu/source/render_bundle.cpp +++ b/libs/wgpu/source/render_bundle.cpp @@ -4,6 +4,11 @@ namespace psemek::wgpu { + void render_bundle::set_label(std::string const & label) + { + wgpuRenderBundleSetLabel((WGPURenderBundle)get(), label.data()); + } + void render_bundle::reference(void * ptr) { wgpuRenderBundleReference((WGPURenderBundle)ptr);