Vulkan 一句话心智词典(去恐惧版)

🧩 总体概念

Vulkan

一个让你"明确告诉 GPU 要按什么顺序干活"的接口。

Instance

Vulkan 的身份证,用来告诉系统"我要用 Vulkan"。

Physical Device

你机器里真实存在的 GPU。

Logical Device

你跟 GPU 建立的工作关系(你真正用的接口)。

🧵 执行 & 时间线

Queue

GPU 的工作队列,本质是"执行顺序的流水线"。

Command Buffer

一张「未来要执行的操作清单」,不是马上执行。

Command Pool

command buffer 的内存池(回收站 + 工厂)。

Submit

把"操作清单"交给 GPU 执行。

⏱ 同步(最容易吓人的部分)

Fence

CPU 问 GPU:「你干完了吗?」

Semaphore

一个队列告诉另一个队列:「我已经做到这里了」。

Pipeline Barrier

告诉 GPU:「后面的操作要等前面的资源状态准备好」

🧱 资源(你真正操作的东西)

Buffer

一块线性内存(顶点、索引、常量都住这)。

Image

带"用途状态"的纹理或帧缓冲。

Image Layout

图片现在是"干什么用的模式"。

(比如:画画 / 采样 / 显示)

🔁 状态与布局

UNDEFINED

"我不在乎之前是什么,反正马上要重写。"

COLOR_ATTACHMENT_OPTIMAL

我要往它上面画。

SHADER_READ_ONLY_OPTIMAL

着色器要读它。

PRESENT_SRC_KHR

给窗口系统显示用。

Layout Transition

告诉 GPU:图片用途变了。

🎨 渲染结构

Render Pass

描述一次"画画流程"里附件如何使用。

Subpass

RenderPass 里的一个阶段。

Framebuffer

RenderPass 实际用到的 image 组合。

🧠 管线相关

Pipeline

一整套 GPU 工作配置(着色器 + 状态合集)。

Shader

GPU 程序(顶点 / 片元等)。

Pipeline Layout

shader 能访问哪些资源的说明书。

📦 资源绑定

Descriptor Set

一包"我要给 shader 用的资源"。

Descriptor Layout

这包资源长什么样。

Descriptor Pool

分配 descriptor 的地方。

🧰 辅助工具

Validation Layer

Vulkan 的"唠叨但很聪明的老师"。

Swapchain

系统提供的"可显示图片队列"。

Present

把画好的图交给系统显示。

🧭 一句话总总结(最重要)

Vulkan = 用 command buffer 描述执行顺序,用同步保证顺序正确,用 layout 告诉资源当前用途。

相关推荐
無限進步D3 小时前
Java 运行原理
java·开发语言·入门
是苏浙3 小时前
JDK17新增特性
java·开发语言
阿里加多7 小时前
第 4 章:Go 线程模型——GMP 深度解析
java·开发语言·后端·golang
likerhood7 小时前
java中`==`和`.equals()`区别
java·开发语言·python
zs宝来了8 小时前
AQS详解
java·开发语言·jvm
telllong8 小时前
Python异步编程从入门到不懵:asyncio实战踩坑7连发
开发语言·python
wjs202410 小时前
JavaScript 条件语句
开发语言
阿里加多10 小时前
第 1 章:Go 并发编程概述
java·开发语言·数据库·spring·golang
2301_7926748611 小时前
java学习day29(juc)
java·开发语言·学习
周末也要写八哥11 小时前
MATLAB R2025a超详细下载与安装教程(附安装包)
开发语言·matlab