Files
XCEngine/docs/api/rhi/rhi-enums.md

11 KiB
Raw Blame History

RHIEnums

命名空间: XCEngine::RHI

类型: enums

描述: RHI 模块中使用的所有枚举类型汇总。

概述

本文档汇总了 RHI 模块中定义的所有枚举类型。这些枚举定义了图形 API 的各种选项和状态。


ShaderType

着色器类型枚举。

描述
ShaderType::Vertex 顶点着色器
ShaderType::Fragment 片元着色器
ShaderType::Geometry 几何着色器
ShaderType::Compute 计算着色器
ShaderType::TessControl 曲面细分控制
ShaderType::TessEvaluation 曲面细分评估
ShaderType::Hull Hull 着色器 (D3D)
ShaderType::Domain Domain 着色器 (D3D)
ShaderType::Amplification 放大着色器 (D3D12.9+)
ShaderType::Mesh Mesh 着色器 (D3D12.9+)
ShaderType::Library 着色器库

CullMode

背面剔除模式枚举。

描述
CullMode::None 不剔除
CullMode::Front 剔除正面
CullMode::Back 剔除背面(默认)

FillMode

填充模式枚举。

描述
FillMode::Wireframe 线框模式
FillMode::Solid 实体模式(默认)

BlendOp

混合操作枚举。

描述
BlendOp::Add 加法
BlendOp::Subtract 减法
BlendOp::ReverseSubtract 反向减法
BlendOp::Min 最小值
BlendOp::Max 最大值

BlendFactor

混合因子枚举。

描述
BlendFactor::Zero 0
BlendFactor::One 1
BlendFactor::SrcColor 源颜色
BlendFactor::InvSrcColor 1 - 源颜色
BlendFactor::SrcAlpha 源 Alpha
BlendFactor::InvSrcAlpha 1 - 源 Alpha
BlendFactor::DstAlpha 目标 Alpha
BlendFactor::InvDstAlpha 1 - 目标 Alpha
BlendFactor::DstColor 目标颜色
BlendFactor::InvDstColor 1 - 目标颜色
BlendFactor::SrcAlphaSat 饱和(源 Alpha, 1 - 目标 Alpha)
BlendFactor::BlendFactor 混合因子
BlendFactor::InvBlendFactor 1 - 混合因子
BlendFactor::Src1Color 第二个源颜色
BlendFactor::InvSrc1Color 1 - 第二个源颜色
BlendFactor::Src1Alpha 第二个源 Alpha
BlendFactor::InvSrc1Alpha 1 - 第二个源 Alpha

ComparisonFunc

比较函数枚举。

描述
ComparisonFunc::Never 从不通过
ComparisonFunc::Less 小于通过
ComparisonFunc::Equal 等于通过
ComparisonFunc::LessEqual 小于等于通过
ComparisonFunc::Greater 大于通过
ComparisonFunc::NotEqual 不等于通过
ComparisonFunc::GreaterEqual 大于等于通过
ComparisonFunc::Always 总是通过

StencilOp

模板操作枚举。

描述
StencilOp::Keep 保持当前值
StencilOp::Zero 设置为 0
StencilOp::Replace 替换为参考值
StencilOp::IncrSat 增加并饱和
StencilOp::DecrSat 减少并饱和
StencilOp::Invert 位反转
StencilOp::Incr 增加并回绕
StencilOp::Decr 减少并回绕

TextureType

纹理类型枚举。

描述
TextureType::Texture1D 1D 纹理
TextureType::Texture2D 2D 纹理
TextureType::Texture2DArray 2D 纹理数组
TextureType::Texture3D 3D 纹理
TextureType::TextureCube 立方体贴图
TextureType::TextureCubeArray 立方体贴图数组

BufferType

缓冲区类型枚举。

描述
BufferType::Vertex 顶点缓冲
BufferType::Index 索引缓冲
BufferType::Constant 常量缓冲
BufferType::ReadBack 回读缓冲
BufferType::Indirect 间接缓冲
BufferType::RaytracingAccelerationStructure 光追加速结构
BufferType::ShaderBindingTable 着色器绑定表

DescriptorType

描述符类型枚举。

描述
DescriptorType::CBV 常量缓冲视图
DescriptorType::SRV 着色器资源视图
DescriptorType::UAV 无序访问视图
DescriptorType::Sampler 采样器
DescriptorType::RTV 渲染目标视图
DescriptorType::DSV 深度模板视图

PipelineType

管线类型枚举。

描述
PipelineType::Graphics 图形管线
PipelineType::Compute 计算管线
PipelineType::Raytracing 光线追踪管线

CommandQueueType

命令队列类型枚举。

描述
CommandQueueType::Direct 直接队列
CommandQueueType::Compute 计算队列
CommandQueueType::Copy 复制队列

LoadAction

加载操作枚举。

描述
LoadAction::Undefined 未定义
LoadAction::Load 加载现有内容
LoadAction::Clear 清除为默认值

StoreAction

存储操作枚举。

描述
StoreAction::Undefined 未定义
StoreAction::Store 存储
StoreAction::Resolve 解析
StoreAction::StoreAndResolve 存储并解析
StoreAction::Discard 丢弃

PresentFlags

呈现标志枚举。

描述
PresentFlags::None 无特殊标志
PresentFlags::AllowTearing 允许垂直同步撕裂
PresentFlags::StrictlyTimedFrame 严格帧时序
PresentFlags::AllowDisplayLatencyWaitableObject 显示延迟等待对象

FilterMode

采样器过滤模式枚举。

描述
FilterMode::Point 点采样
FilterMode::Linear 双线性插值
FilterMode::Anisotropic 各向异性过滤
FilterMode::ComparisonPoint 比较点采样
FilterMode::ComparisonLinear 比较双线性
FilterMode::ComparisonAnisotropic 比较各向异性
FilterMode::MinimumPoint 最小值点采样
FilterMode::MinimumLinear 最小值线性
FilterMode::MinimumAnisotropic 最小值各向异性
FilterMode::MaximumPoint 最大值点采样
FilterMode::MaximumLinear 最大值线性
FilterMode::MaximumAnisotropic 最大值各向异性

TextureAddressMode

纹理寻址模式枚举。

描述
TextureAddressMode::Wrap 重复寻址
TextureAddressMode::Mirror 镜像寻址
TextureAddressMode::Clamp 钳制寻址
TextureAddressMode::Border 边框颜色
TextureAddressMode::MirrorOnce 单次镜像

BorderColor

边框颜色枚举。

描述
BorderColor::TransparentBlack 透明黑色 (0,0,0,0)
BorderColor::OpaqueBlack 不透明黑色 (0,0,0,1)
BorderColor::OpaqueWhite 不透明白色 (1,1,1,1)

LogicOp

逻辑操作枚举。

描述
LogicOp::Clear 清零
LogicOp::Set 置一
LogicOp::Copy 复制
LogicOp::CopyInverted 复制取反
LogicOp::Noop 无操作
LogicOp::Invert 取反
LogicOp::And
LogicOp::Nand 与非
LogicOp::Or
LogicOp::Nor 或非
LogicOp::Xor 异或
LogicOp::Equiv 同或
LogicOp::AndReverse 反向与
LogicOp::AndInverted 与反
LogicOp::OrReverse 反向或
LogicOp::OrInverted 或反

ColorWriteMask

颜色写入掩码枚举,支持位运算组合。

描述
ColorWriteMask::Red 红色通道 (1)
ColorWriteMask::Green 绿色通道 (2)
ColorWriteMask::Blue 蓝色通道 (4)
ColorWriteMask::Alpha Alpha 通道 (8)
ColorWriteMask::All 所有通道 (15)

支持 operator| 进行组合,如 ColorWriteMask::Red | ColorWriteMask::Green


ShaderVisibility

着色器可见性枚举。

描述
ShaderVisibility::All 所有着色器阶段
ShaderVisibility::Vertex 顶点着色器
ShaderVisibility::Hull Hull 着色器
ShaderVisibility::Domain Domain 着色器
ShaderVisibility::Geometry 几何着色器
ShaderVisibility::Pixel 像素着色器
ShaderVisibility::Amplification 放大着色器
ShaderVisibility::Mesh Mesh 着色器

RootParameterType

根参数类型枚举。

描述
RootParameterType::DescriptorTable 描述符表
RootParameterType::Constants 内联常量
RootParameterType::CBV 常量缓冲视图
RootParameterType::SRV 着色器资源视图
RootParameterType::UAV 无序访问视图

DescriptorHeapType

描述符堆类型枚举。

描述
DescriptorHeapType::CBV_SRV_UAV 常量缓冲/着色器资源/无序访问视图
DescriptorHeapType::Sampler 采样器
DescriptorHeapType::RTV 渲染目标视图
DescriptorHeapType::DSV 深度模板视图

QueryType

查询类型枚举。

描述
QueryType::Occlusion 遮挡查询
QueryType::Timestamp 时间戳查询
QueryType::PipelineStatistics 管线统计查询

Format

纹理/缓冲区格式枚举。

描述
Format::Unknown 未知
Format::R8_UNorm 单通道 8 位归一化
Format::R8G8_UNorm 双通道 8 位归一化
Format::R8G8B8A8_UNorm 四通道 8 位归一化
Format::R16G16B16A16_Float 四通道 16 位浮点
Format::R32G32B32A32_Float 四通道 32 位浮点
Format::R16_Float 单通道 16 位浮点
Format::R32_Float 单通道 32 位浮点
Format::D16_UNorm 16 位深度
Format::D24_UNorm_S8_UInt 24 位深度 + 8 位模板
Format::D32_Float 32 位深度
Format::BC1_UNorm BC1 压缩 (DXT1)
Format::BC2_UNorm BC2 压缩 (DXT3)
Format::BC3_UNorm BC3 压缩 (DXT5)
Format::BC4_UNorm BC4 压缩 (ATI1N)
Format::BC5_UNorm BC5 压缩 (ATI2N)
Format::BC6H_UF16 BC6H 有符号浮点压缩
Format::BC7_UNorm BC7 高质量压缩
Format::R32_UInt 单通道 32 位无符号整数
Format::R32G32B32A32_UInt 四通道 32 位无符号整数

ResourceStates

资源状态枚举。

描述
ResourceStates::Common 通用状态
ResourceStates::VertexAndConstantBuffer 顶点/常量缓冲
ResourceStates::IndexBuffer 索引缓冲
ResourceStates::RenderTarget 渲染目标
ResourceStates::UnorderedAccess 无序访问
ResourceStates::DepthWrite 深度写入
ResourceStates::DepthRead 深度读取
ResourceStates::NonPixelShaderResource 非像素着色器资源
ResourceStates::PixelShaderResource 像素着色器资源
ResourceStates::CopySrc 复制源
ResourceStates::CopyDst 复制目标
ResourceStates::Present 呈现
ResourceStates::GenericRead 通用读取

HeapType

内存堆类型枚举。

描述
HeapType::Default 默认堆GPU 直接访问)
HeapType::Upload 上传堆CPU 可写GPU 可读)
HeapType::Readback 回读堆CPU 可读)
HeapType::Custom 自定义堆

RHIType

RHI 后端类型枚举。

描述
RHIType::D3D12 DirectX 12
RHIType::OpenGL OpenGL
RHIType::Vulkan Vulkan预留
RHIType::Metal Metal预留