载入中...
搜索中...
未找到
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
 
 ~WebGpuComputeShader () override
 
void bindBuffer (int binding, GpuBuffer *buffer) override
 Bind a storage buffer to set=0 binding. binding in [0, kMaxBindings).
 
GpuBuffergetBoundBuffer (int binding) const override
 
void setFloat (int index, float value) override
 
float getFloat (int index) const override
 
void clearBindings () override
 
- Public 成员函数 继承自 eve::gpgpu::ComputeShader
 ComputeShader ()=default
 
virtual ~ComputeShader ()=default
 
 ComputeShader (const ComputeShader &)=delete
 
ComputeShaderoperator= (const ComputeShader &)=delete
 
const float * pushConstantData () const
 

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, kMaxFloatspush_ {}
 

详细描述

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

在文件 WebGpuGpgpu.h20 行定义.

构造及析构函数说明

◆ WebGpuComputeShader()

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

◆ ~WebGpuComputeShader()

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

成员函数说明

◆ bindBuffer()

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

Bind a storage buffer to set=0 binding. binding in [0, kMaxBindings).

实现了 eve::gpgpu::ComputeShader.

在文件 WebGpuGpgpu.cpp53 行定义.

引用了 eve::gpgpu::ComputeShader::kMaxBindings.

◆ clearBindings()

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

实现了 eve::gpgpu::ComputeShader.

在文件 WebGpuGpgpu.cpp73 行定义.

◆ getBoundBuffer()

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

◆ getFloat()

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

◆ setFloat()

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

类成员变量说明

◆ pipeline

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

在文件 WebGpuGpgpu.h33 行定义.

◆ pipelineLayout

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

在文件 WebGpuGpgpu.h34 行定义.

◆ pushUbo

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

在文件 WebGpuGpgpu.h36 行定义.

◆ ready

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

在文件 WebGpuGpgpu.h37 行定义.

◆ setLayout

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

在文件 WebGpuGpgpu.h35 行定义.


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