Skip to content

附录 B · 枚举值对照

B.1 Image 用途

枚举值说明
VK_IMAGE_USAGE_TRANSFER_SRC_BIT传输源
VK_IMAGE_USAGE_TRANSFER_DST_BIT传输目标
VK_IMAGE_USAGE_SAMPLED_BIT采样
VK_IMAGE_USAGE_STORAGE_BIT存储
VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT颜色附件
VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT深度/模板附件
VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT输入附件
VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT瞬态附件
VK_IMAGE_USAGE_RESOLVE_ATTACHMENT_BIT解析附件

B.2 Buffer 用途

枚举值说明
VK_BUFFER_USAGE_TRANSFER_SRC_BIT传输源
VK_BUFFER_USAGE_TRANSFER_DST_BIT传输目标
VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BITUniform texel 缓冲
VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BITStorage texel 缓冲
VK_BUFFER_USAGE_UNIFORM_BUFFER_BITUniform 缓冲
VK_BUFFER_USAGE_STORAGE_BUFFER_BITStorage 缓冲
VK_BUFFER_USAGE_INDEX_BUFFER_BIT索引缓冲
VK_BUFFER_USAGE_VERTEX_BUFFER_BIT顶点缓冲
VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT间接缓冲
VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT设备地址
VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR加速结构
VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR加速结构

B.3 内存属性

枚举值说明
VK_MEMORY_PROPERTY_DEVICE_LOCAL_BITGPU 本地
VK_MEMORY_PROPERTY_HOST_VISIBLE_BITCPU 可映射
VK_MEMORY_PROPERTY_HOST_COHERENT_BIT自动同步
VK_MEMORY_PROPERTY_HOST_CACHED_BITCPU 缓存
VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT延迟分配
VK_MEMORY_PROPERTY_PROTECTED_BIT保护内存

B.4 图像布局

枚举值说明
VK_IMAGE_LAYOUT_UNDEFINED未定义
VK_IMAGE_LAYOUT_GENERAL通用
VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL颜色附件
VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL深度/模板
VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL深度/模板只读
VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMALShader 只读
VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL传输源
VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL传输目标
VK_IMAGE_LAYOUT_PREINITIALIZED预初始化
VK_IMAGE_LAYOUT_PRESENT_SRC_KHR呈现
VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR深度只读
VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR模板只读
VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR深度+模板只读
VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR深度附件+模板只读
VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL_EXT附件优化
VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL_EXT只读优化

B.5 访问类型

枚举值说明
VK_ACCESS_NONE
VK_ACCESS_INDIRECT_COMMAND_READ_BIT间接命令读取
VK_ACCESS_INDEX_READ_BIT索引读取
VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT顶点属性读取
VK_ACCESS_UNIFORM_READ_BITUniform 读取
VK_ACCESS_INPUT_ATTACHMENT_READ_BIT输入附件读取
VK_ACCESS_SHADER_READ_BITShader 读取
VK_ACCESS_SHADER_WRITE_BITShader 写入
VK_ACCESS_COLOR_ATTACHMENT_READ_BIT颜色附件读取
VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT颜色附件写入
VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT深度/模板读取
VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT深度/模板写入
VK_ACCESS_TRANSFER_READ_BIT传输读取
VK_ACCESS_TRANSFER_WRITE_BIT传输写入
VK_ACCESS_HOST_READ_BITHost 读取
VK_ACCESS_HOST_WRITE_BITHost 写入
VK_ACCESS_COMMAND_PREPROCESS_READ_NV_BIT命令预处理读取
VK_ACCESS_COMMAND_PREPROCESS_WRITE_NV_BIT命令预处理写入
VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT非相干读取

B.6 渲染操作

枚举值说明
VK_ATTACHMENT_LOAD_OP_LOAD加载
VK_ATTACHMENT_LOAD_OP_CLEAR清除
VK_ATTACHMENT_LOAD_OP_DONT_CARE不关心
枚举值说明
VK_ATTACHMENT_STORE_OP_STORE存储
VK_ATTACHMENT_STORE_OP_DONT_CARE不关心
VK_ATTACHMENT_STORE_OP_DONT_CARE_EXT不关心

B.7 呈现模式

枚举值说明
VK_PRESENT_MODE_IMMEDIATE_KHR立即呈现
VK_PRESENT_MODE_FIFO_KHR垂直同步(推荐)
VK_PRESENT_MODE_FIFO_RELAXED_KHRVSync 释放锁
VK_PRESENT_MODE_MAILBOX_KHR信封模式
VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_RATE_KHR需求刷新
VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_RATE_KHR连续刷新

B.8 图元拓扑

枚举值说明
VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST三角形列表
VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP三角形带
VK_PRIMITIVE_TOPOLOGY_LINE_LIST线列表
VK_PRIMITIVE_TOPOLOGY_LINE_STRIP线带
VK_PRIMITIVE_TOPOLOGY_POINT_LIST点列表
VK_PRIMITIVE_TOPOLOGY_PATCH_LIST补丁列表

B.9 深度比较操作

枚举值说明
VK_COMPARE_OP_NEVER永远不通过
VK_COMPARE_OP_LESS小于
VK_COMPARE_OP_EQUAL等于
VK_COMPARE_OP_LESS_OR_EQUAL小于等于(推荐)
VK_COMPARE_OP_GREATER大于
VK_COMPARE_OP_NOT_EQUAL不等于
VK_COMPARE_OP_GREATER_OR_EQUAL大于等于
VK_COMPARE_OP_ALWAYS永远通过

B.10 模板操作

枚举值说明
VK_STENCIL_OP_KEEP保留
VK_STENCIL_OP_ZERO设为 0
VK_STENCIL_OP_REPLACE替换
VK_STENCIL_OP_INCREMENT_AND_CLAMP递增
VK_STENCIL_OP_DECREMENT_AND_CLAMP递减
VK_STENCIL_OP_INCREMENT_AND_WRAP递增回绕
VK_STENCIL_OP_DECREMENT_AND_WRAP递减回绕
VK_STENCIL_OP_INVERT取反

B.11 寻址模式

枚举值说明
VK_SAMPLER_ADDRESS_MODE_REPEAT重复(推荐)
VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT镜像重复
VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE夹到边缘
VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER夹到边界
VK_SAMPLER_ADDRESS_MODE_MIRRORED_CLAMP_TO_EDGE镜像夹到边缘

B.12 过滤器

枚举值说明
VK_FILTER_NEAREST最近邻
VK_FILTER_LINEAR双线性

B.13 Mipmap 模式

枚举值说明
VK_SAMPLER_MIPMAP_MODE_NEAREST最近 Mipmap
VK_SAMPLER_MIPMAP_MODE_LINEAR线性 Mipmap

B.14 多边形模式

枚举值说明
VK_POLYGON_MODE_FILL填充
VK_POLYGON_MODE_LINE线框
VK_POLYGON_MODE_POINT

B.15 剔除模式

枚举值说明
VK_CULL_MODE_NONE不剔除
VK_CULL_MODE_FRONT_BIT剔除正面
VK_CULL_MODE_BACK_BIT剔除背面(推荐)
VK_CULL_MODE_FRONT_AND_BACK剔除双面