电子书 编程

[中英对照] 精通 Vulkan 图形编程:从基础原理到前沿

¥2.90 已售 0
✓ 自动发货 ✓ 永久有效 ✓ 售后保障

资源介绍

技术构建现代渲染引擎(双语对照版电子书) 书籍核心内容架构 本书共分为三大部分,总计 15 章,逻辑清晰地引导读者从基础逐步深入到 Vulkan 图形编程的高级应用。 第一部分:现代渲染引擎基础(第 1-5 章) 这部分为渲染引擎构建打下坚实基础,涵盖渲染引擎入门、资源管理优化、多线程解锁、帧图实现以及异步计算开启等关键内容。 第 1 章:Raptor 引擎与 Hydra 介绍:介绍框架结构,包括代码组织方式、主要组件概述,同时讲解如何在 Windows 和 Linux 系统下编译代码,还涉及 glTF 场景格式理解、PBR(基于物理的渲染)基础以及 GPU 调试相关知识,帮助读者快速熟悉引擎的基本构成与使用环境。 第 2 章:优化资源管理:聚焦资源管理改进,实现无绑定渲染(bindless rendering),通过检查支持性、创建描述符池、更新描述符集和着色器代码,简化多纹理材质的管理;同时自动化管线布局生成,通过将 GLSL 编译为 SPIR-V 并解析其输出信息生成管线布局,还介绍利用管线缓存提升加载速度,减少管线创建时间。 第 3 章:解锁多线程:讲解基于任务的多线程技术,以 enkiTS 库为例,阐述任务并行的优势及使用方法,实现异步资源加载,创建 I/O 线程与任务,利用 Vulkan 队列实现并行命令生成,还探讨命令缓冲区的分配策略、回收机制以及主次命令缓冲区的使用,提升 CPU 的资源利用率。 第 4 章:实现帧图(Frame Graph):介绍帧图这一用于管理渲染流程的数据结构,讲解其构建方法,采用数据驱动方式实现帧图,包括拓扑排序实现以及利用帧图驱动渲染,自动化资源屏障放置和资源别名优化内存使用,让渲染流程管理更高效。 第 5 章:开启异步计算:介绍时间线信号量(timeline semaphore),用单个时间线信号量替代多个 fences,简化同步管理;添加独立的异步计算队列,实现计算任务与图形任务并行执行,并以布料模拟为例,展示异步计算在实际场景中的应用,同时介绍计算着色器的优势与使用方法。 第二部分:GPU 驱动渲染(第 6-10 章) 该部分专注于 GPU 驱动的渲染技术,包括 GPU 驱动渲染基础、多光源渲染、阴影添加、可变速率着色以及体积雾添加等内容。 第 6 章:GPU 驱动渲染:将大型网格分解为网格块(meshlets),生成网格块数据,介绍任务着色器与网格着色器,利用它们实现背面剔除和视锥体剔除,还通过计算着色器实现高效的遮挡剔除,生成间接绘制命令,提升渲染效率。 第 7 章:使用聚类延迟渲染实现多光源渲染:简述聚类光照的发展历程,对比前向渲染与延迟渲染技术的差异,实现 G 缓冲区(G-buffer)存储几何和材质信息,构建光照聚类,包括 CPU 端光源分配和 GPU 端光源处理,实现多光源场景的高效渲染。 第 8 章:使用网格着色器添加阴影:回顾阴影技术发展历史,包括阴影体、阴影映射和光线追踪阴影,重点介绍利用网格着色器实现阴影映射,涉及立方体贴图阴影、多视图渲染注意事项、基于光源的网格实例剔除、间接绘制命令生成以及利用 Vulkan 稀疏资源优化阴影内存使用等内容。 第 9 章:实现可变速率着色(Variable Rate Shading):介绍可变速率着色技术,说明其作用与优势,讲解如何确定着色速率,以及在 Vulkan 中集成可变速率着色,利用特化常量优化性能,在保证图像质量的前提下提升渲染效率。 第 10 章:添加体积雾:从基础原理出发,介绍体积渲染与体积雾的概念,实现体积雾渲染,包括数据注入、光照贡献计算、散射与消光集成、体积雾在场景中的应用,还介绍滤波技术和体积噪声生成(如蓝噪声),提升体积雾的视觉效果。 第三部分:高级渲染技术(第 11-15 章) 此部分深入探讨高级渲染技术,涵盖时间抗锯齿、光线追踪入门以及基于光线追踪的阴影、动态漫反射全局光照和反射效果实现。 第 11 章:时间抗锯齿(Temporal Anti-Aliasing, TAA):概述抗锯齿技术发展,实现基础 TAA,包括相机抖动、抖动序列选择、运动向量添加,还介绍 TAA 的改进方法,如重投影、历史采样、场景采样、历史约束、解析以及锐化处理,提升图像抗锯齿效果。 第 12 章:光线追踪入门:介绍 Vulkan 中的光线追踪扩展,讲解构建底层加速结构(BLAS)和顶层加速结构(TLAS),定义并创建光线追踪管线,为后续光线追踪相关应用打下基础。 第 13 章:用光线追踪重新实现阴影:实现简单的光线追踪阴影,介绍改进方法,包括运动向量应用、可见性方差计算、可见性计算、滤波可见性以及利用滤波后的可见性结果,提升阴影质量,解决传统阴影技术的缺陷。 第 14 章:用光线追踪添加动态漫反射全局光照(DDGI):介绍间接光照概念,讲解动态漫反射全局光照(DDGI),通过光线追踪为每个探针生成数据,处理探针偏移、探针辐照度和可见性更新以及探针采样,实现全局光照效果,提升场景光照的真实感。 第 15 章:用光线追踪添加反射:简述屏幕空间反射及其局限性,实现光线追踪反射,还介绍去噪器的实现,优化反射效果,让场景中的反射更真实自然。