Compute program for the WebGPU backend. Accepts WGSL source; GLSL/SPIR-V input is rejected (browsers only accept WGSL at runtime). 更多...
#include <WebGpuGpgpu.h>
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()
|
default |
Constructs a WebGpuComputeShader.
◆ ~WebGpuComputeShader()
|
overridedefault |
Releases WebGpuComputeShader resources.
成员函数说明
◆ bindBuffer()
|
overridevirtual |
Binds buffer.
实现了 eve::gpgpu::ComputeShader.
在文件 WebGpuGpgpu.cpp 第 60 行定义.
引用了 binding, buffer , 以及 eve::gpgpu::ComputeShader::kMaxBindings.
◆ clearBindings()
|
overridevirtual |
◆ getBoundBuffer()
|
overridevirtual |
◆ getFloat()
|
overridevirtual |
Returns the float.
实现了 eve::gpgpu::ComputeShader.
在文件 WebGpuGpgpu.cpp 第 75 行定义.
引用了 index, eve::gpgpu::ComputeShader::kMaxFloats , 以及 eve::gpgpu::ComputeShader::push_.
◆ setFloat()
|
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 行定义.
该类的文档由以下文件生成:
- src/modules/gpgpu/webgpu/WebGpuGpgpu.h
- src/modules/gpgpu/webgpu/WebGpuGpgpu.cpp
Public 成员函数 继承自