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 告诉资源当前用途。

相关推荐
LDR0069 天前
Type-C 快充全面升级!LDR6601 赋能个人护理便携电机,重塑剃须刀 / 理发器新体验
c语言·开发语言
雪碧聊技术9 天前
Tree.js是什么?一文讲透
开发语言·javascript·ecmascript
码云数智-园园9 天前
C++20 Modules 模块详解
java·开发语言·spring
swordbob9 天前
NIO的channel中什么是 fd(File Descriptor,文件描述符)
java·开发语言·nio
源分享9 天前
Java线程同步的多种实现方法(非常详细)
java·开发语言·jvm
Luminous.9 天前
C语言--day30
c语言·开发语言
何以解忧,唯有..9 天前
Go语言循环语句详解:for、range与循环控制
开发语言·算法·golang
謓泽9 天前
C语言不是语法,是通往机器的地图。
c语言·开发语言
云水一下9 天前
从零开始学 PHP 系列(一):PHP 的前世今生与开发环境搭建
开发语言·php
飞天狗1119 天前
零基础JavaWeb入门——第五课第二小节:九大内置对象 · 第2个:response(响应对象)
java·开发语言