载入中...
搜索中...
未找到
eve::graphics::webgpu::PipelineBuilder类 参考

Fluent builder for wgpu::RenderPipeline. 更多...

#include <PipelineBuilder.h>

Public 成员函数

 PipelineBuilder ()=default
 Constructs a PipelineBuilder.
 
PipelineBuilder & label (const char *l)
 Label.
 
PipelineBuilder & layout (wgpu::PipelineLayout l)
 Layout.
 
PipelineBuilder & vertexLayout (uint64_t stride, wgpu::VertexStepMode stepMode, const wgpu::VertexAttribute *attrs, size_t attrCount)
 Vertex layout.
 
PipelineBuilder & shader (wgpu::ShaderModule vert, const char *vertEntry, wgpu::ShaderModule frag, const char *fragEntry)
 Shader.
 
PipelineBuilder & topology (wgpu::PrimitiveTopology t)
 Topology.
 
PipelineBuilder & cull (wgpu::CullMode c)
 Cull.
 
PipelineBuilder & frontFace (wgpu::FrontFace f)
 Front face.
 
PipelineBuilder & colorTarget (WGPUTextureFormat format, eve::graphics::BlendMode mode)
 Set color target format + blend mode (Alpha default = no blend state override risk).
 
PipelineBuilder & depth (WGPUTextureFormat format, wgpu::CompareFunction compare, bool writeEnabled)
 Depth.
 
PipelineBuilder & sampleCount (uint32_t count)
 Sample count.
 
wgpu::RenderPipeline build (const wgpu::Device &device) const
 Create the pipeline. Throws on null device.
 

详细描述

Fluent builder for wgpu::RenderPipeline.

Builds the C++ wrapper RenderPipelineDescriptor directly, whose zero-init already matches the WebGPU defaults (writeMask=All, sampleMask=0xFFFFFFFF), so the "default discards every fragment" traps in Graphics.cpp cannot occur. Mirrors vk-bootstrap's PipelineBuilder.

在文件 PipelineBuilder.h 第 19 行定义.

构造及析构函数说明

◆ PipelineBuilder()

eve::graphics::webgpu::PipelineBuilder::PipelineBuilder ( )
default

Constructs a PipelineBuilder.

成员函数说明

◆ build()

wgpu::RenderPipeline eve::graphics::webgpu::PipelineBuilder::build ( const wgpu::Device &  device) const

Create the pipeline. Throws on null device.

在文件 PipelineBuilder.cpp 第 45 行定义.

引用了 blend, d, device , 以及 target.

◆ colorTarget()

PipelineBuilder & eve::graphics::webgpu::PipelineBuilder::colorTarget ( WGPUTextureFormat  format,
eve::graphics::BlendMode  mode 
)

Set color target format + blend mode (Alpha default = no blend state override risk).

在文件 PipelineBuilder.cpp 第 28 行定义.

◆ cull()

PipelineBuilder & eve::graphics::webgpu::PipelineBuilder::cull ( wgpu::CullMode  c)
inline

Cull.

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

引用了 c.

◆ depth()

PipelineBuilder & eve::graphics::webgpu::PipelineBuilder::depth ( WGPUTextureFormat  format,
wgpu::CompareFunction  compare,
bool  writeEnabled 
)

Depth.

在文件 PipelineBuilder.cpp 第 36 行定义.

◆ frontFace()

PipelineBuilder & eve::graphics::webgpu::PipelineBuilder::frontFace ( wgpu::FrontFace  f)
inline

Front face.

在文件 PipelineBuilder.h 第 51 行定义.

引用了 f.

◆ label()

PipelineBuilder & eve::graphics::webgpu::PipelineBuilder::label ( const char *  l)
inline

Label.

在文件 PipelineBuilder.h 第 25 行定义.

◆ layout()

PipelineBuilder & eve::graphics::webgpu::PipelineBuilder::layout ( wgpu::PipelineLayout  l)
inline

Layout.

在文件 PipelineBuilder.h 第 30 行定义.

◆ sampleCount()

PipelineBuilder & eve::graphics::webgpu::PipelineBuilder::sampleCount ( uint32_t  count)
inline

Sample count.

在文件 PipelineBuilder.h 第 61 行定义.

引用了 count.

◆ shader()

PipelineBuilder & eve::graphics::webgpu::PipelineBuilder::shader ( wgpu::ShaderModule  vert,
const char *  vertEntry,
wgpu::ShaderModule  frag,
const char *  fragEntry 
)

Shader.

在文件 PipelineBuilder.cpp 第 19 行定义.

引用了 frag , 以及 vert.

◆ topology()

PipelineBuilder & eve::graphics::webgpu::PipelineBuilder::topology ( wgpu::PrimitiveTopology  t)
inline

Topology.

在文件 PipelineBuilder.h 第 41 行定义.

引用了 t.

◆ vertexLayout()

PipelineBuilder & eve::graphics::webgpu::PipelineBuilder::vertexLayout ( uint64_t  stride,
wgpu::VertexStepMode  stepMode,
const wgpu::VertexAttribute *  attrs,
size_t  attrCount 
)

Vertex layout.

在文件 PipelineBuilder.cpp 第 7 行定义.


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