WebGPU wrapper wip: add render bundle object

This commit is contained in:
Nikita Lisitsa 2024-01-01 16:10:10 +03:00
parent 2d8be7560b
commit 7071f3363d
3 changed files with 16 additions and 2 deletions

View file

@ -1,6 +1,7 @@
#pragma once
#include <psemek/wgpu/detail/object.hpp>
#include <psemek/wgpu/chained_struct.hpp>
namespace psemek::wgpu
{
@ -10,6 +11,14 @@ namespace psemek::wgpu
{
using detail::object<render_bundle>::object;
struct descriptor
{
std::vector<chained_struct> 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<render_bundle>(ptr)
{}
friend struct device;
friend struct render_bundle_encoder;
};
}

View file

@ -11,7 +11,7 @@
+ WGPUPipelineLayout
+ WGPUQuerySet
+ WGPUQueue
WGPURenderBundle
+ WGPURenderBundle
WGPURenderBundleEncoder
+ WGPURenderPassEncoder
+ WGPURenderPipeline

View file

@ -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);