载入中...
搜索中...
未找到
eve::gpgpu::WebGpuComputeShader类 参考final

Compute program for the WebGPU backend. Accepts WGSL source; GLSL/SPIR-V input is rejected (browsers only accept WGSL at runtime). 更多...

#include <WebGpuGpgpu.h>

类 eve::gpgpu::WebGpuComputeShader 继承关系图:
eve::gpgpu::ComputeShader

Public 成员函数

 WebGpuComputeShader ()=default
 Constructs a WebGpuComputeShader.
 
 ~WebGpuComputeShader () override
 Releases WebGpuComputeShader resources.
 
void bindBuffer (int binding, GpuBuffer *buffer) override
 Binds buffer.
 
GpuBuffer * getBoundBuffer (int binding) const override
 Returns the bound buffer.
 
void setFloat (int index, float value) override
 Sets the float.
 
float getFloat (int index) const override
 Returns the float.
 
void clearBindings () override
 Clears bindings.
 
- Public 成员函数 继承自 eve::gpgpu::ComputeShader
 ComputeShader ()=default
 Constructs a ComputeShader.
 
virtual ~ComputeShader ()=default
 Releases ComputeShader resources.
 
 ComputeShader (const ComputeShader &)=delete
 
ComputeShader & operator= (const ComputeShader &)=delete
 
const float * pushConstantData () const
 Pushes constant data.
 

Public 属性

wgpu::ComputePipeline pipeline
 
wgpu::PipelineLayout pipelineLayout
 
wgpu::BindGroupLayout setLayout
 
wgpu::Buffer pushUbo
 
bool ready = false
 

额外继承的成员函数

- 静态 Public 属性 继承自 eve::gpgpu::ComputeShader
static constexpr int kMaxBindings = 8
 
static constexpr int kMaxFloats = 32
 
static constexpr uint32_t kPushConstantBytes = uint32_t(kMaxFloats * sizeof(float))
 
- Protected 属性 继承自 eve::gpgpu::ComputeShader
std::array< float, kMaxFloats > push_ {}
 

详细描述

Compute program for the WebGPU backend. Accepts WGSL source; GLSL/SPIR-V input is rejected (browsers only accept WGSL at runtime).

在文件 WebGpuGpgpu.h 第 22 行定义.

构造及析构函数说明

◆ WebGpuComputeShader()

eve::gpgpu::WebGpuComputeShader::WebGpuComputeShader ( )
default

Constructs a WebGpuComputeShader.

◆ ~WebGpuComputeShader()

eve::gpgpu::WebGpuComputeShader::~WebGpuComputeShader ( )
overridedefault

Releases WebGpuComputeShader resources.

成员函数说明

◆ bindBuffer()

void eve::gpgpu::WebGpuComputeShader::bindBuffer ( int  binding,
GpuBuffer *  buffer 
)
overridevirtual

Binds buffer.

实现了 eve::gpgpu::ComputeShader.

在文件 WebGpuGpgpu.cpp 第 60 行定义.

引用了 binding, buffer , 以及 eve::gpgpu::ComputeShader::kMaxBindings.

◆ clearBindings()

void eve::gpgpu::WebGpuComputeShader::clearBindings ( )
overridevirtual

Clears bindings.

实现了 eve::gpgpu::ComputeShader.

在文件 WebGpuGpgpu.cpp 第 80 行定义.

◆ getBoundBuffer()

GpuBuffer * eve::gpgpu::WebGpuComputeShader::getBoundBuffer ( int  binding) const
overridevirtual

Returns the bound buffer.

实现了 eve::gpgpu::ComputeShader.

在文件 WebGpuGpgpu.cpp 第 65 行定义.

引用了 binding , 以及 eve::gpgpu::ComputeShader::kMaxBindings.

◆ getFloat()

float eve::gpgpu::WebGpuComputeShader::getFloat ( int  index) const
overridevirtual

Returns the float.

实现了 eve::gpgpu::ComputeShader.

在文件 WebGpuGpgpu.cpp 第 75 行定义.

引用了 index, eve::gpgpu::ComputeShader::kMaxFloats , 以及 eve::gpgpu::ComputeShader::push_.

◆ setFloat()

void eve::gpgpu::WebGpuComputeShader::setFloat ( int  index,
float  value 
)
overridevirtual

Sets the float.

实现了 eve::gpgpu::ComputeShader.

在文件 WebGpuGpgpu.cpp 第 70 行定义.

引用了 index, eve::gpgpu::ComputeShader::kMaxFloats, eve::gpgpu::ComputeShader::push_ , 以及 value.

类成员变量说明

◆ pipeline

wgpu::ComputePipeline eve::gpgpu::WebGpuComputeShader::pipeline

在文件 WebGpuGpgpu.h 第 42 行定义.

◆ pipelineLayout

wgpu::PipelineLayout eve::gpgpu::WebGpuComputeShader::pipelineLayout

在文件 WebGpuGpgpu.h 第 43 行定义.

◆ pushUbo

wgpu::Buffer eve::gpgpu::WebGpuComputeShader::pushUbo

在文件 WebGpuGpgpu.h 第 45 行定义.

◆ ready

bool eve::gpgpu::WebGpuComputeShader::ready = false

在文件 WebGpuGpgpu.h 第 46 行定义.

◆ setLayout

wgpu::BindGroupLayout eve::gpgpu::WebGpuComputeShader::setLayout

在文件 WebGpuGpgpu.h 第 44 行定义.


该类的文档由以下文件生成: