课程简介
Vulkan被称为OpenGL的接班人,性能果然是霸气外漏,更能够承载下一个时代的图形渲染编程。
GPU高性能渲染的课题进入了一个新的阶段,对于计算细节的控制,多核CPU多线程渲染以及高性能算法的灵活设计需求日益旺盛。图形程序员需要有更加强力且灵活的工具,来“解锁”我们自身的控制能力,OpenGL的较高度封装性以及单纯的状态机模式显然已经无法适应现代化图形渲染的强烈需求。
为什么要学习Vulkan?
正如前言所说,Vulkan已经成为了下一个时代的图形渲染主流API,早已经被各大商业引擎(Unreal Engine、Unity3D)所支持。那么我们的同学就有如下问题需要明晰:
1 作为游戏程序员我们只学会了UE或者Unity3D,那么就只能作为一个普通的程序员,如果能够结合Vulkan的学习对商用引擎理解更加深刻,就可以更好的发挥引擎威力甚至更改引擎的源代码,实现更多的可能,让你的作品有可能性能起飞。
2作为自研引擎工作人员,你可能在工业软件领域从业、也有可能在影视渲染领域从业、也可能在其他的图形系统领域(军工、GIS、BIM)等领域,那么熟练的掌握Vulkan就可以针对自己公司的不同领域需求进行不同的引擎定制开发,从而获得牢不可破的地位,对于自身职业发展有着极大的优势!
总而言之,越早学习Vulkan,就越能与别人拉开差距,让Vulkan称为你升职加薪、壮大不可替代性的核武器!
课程简介:
本课程详细讲解了Vulkan从小白到入门的基础理论+实践知识,对于每一个知识点都会带领学员通过代码来实现功能。
其中涵盖了计算机图形学基础理论,计算机图形学数学推导,Vulkan基础系统设计理论,基础单元(实例,设备,交换链),渲染管线,RenderPass, 指令与多线程, 顶点描述与实验, Uniform与描述符, 图像与采样, 深度与反走样,模型与摄像机等内容;
课程中会对Vulkan复杂抽象的API进行一次包装层的封装,将相关的API都进行聚合与接口设计,作为游戏或者图形引擎来讲,这是至关重要的第一步。这一个封装步骤,也被称为API-Wrapper,经过包装后的类库,同学可以在此之上根据自己的具体需求进行扩展,从而得到最适合自己的类库内容。
本课程为系列化课程,在铸造基石篇章之后,会继续使用本包装类库进行改良,并且实现Vulkan API下的各类效果以及高级特性的开发教学。
课程优势:
1 本课程会从计算机图形学的基础渲染管线原理出发,带领0基础的同学对计算机图形学进行快速认知,且对必要的知识点进行筛选提炼,去掉冗余繁杂的教学内容,更加适合新手对Vulkan渲染体系入门了解。
2 本课程会对计算机图形学所涉及的数学知识及如何应用到渲染当中,进行深入的讲解,带领同学对每一行公式展开认识,从三维世界如何映射到二维的屏幕,在学习完毕后会有清晰的知识体系
3 本课程会带领同学认知每一个Vulkan的API,并且在代码当中插入详细的注释,同学们在学习的时候就可以参照源代码进行一系列尝试以及学后复习
4 本课程所设计的包装层,会带领同学一行一行代码实现,现场进行Debug,对于Vulkan常出现的一些问题进行深入探讨与现场纠正
学习所得:
1 同学们在学习后可以完全了解从三维世界的抽象物体,如何一步步渲染称为一个屏幕上的像素点。
2 同学们在学习后可以完全掌握基础的Vulkan图形API,并且了解Vulkan当中繁多的对象之间相互的联系,从而可以设计更好的图形程序
3 同学们在跟随课程进行代码编写后,可以获得一个轻量级的Vulkan底层API封装库(Wrapper),从而可以在此之上封装上层的应用,得到自己的迷你Vulkan图形渲染引擎
课程目录:
1-1.Vulkan导学.mp4
2-1.Vulkan-初识渲染.mp4
2-2.Vulkan-学习向量.mp4
2-3.Vulkan-学习矩阵.mp4
2-4.Vulkan-二维坐标变换.mp4
2-5.Vulkan-三维坐标变换.mp4
2-6.Vulkan-光栅化直线算法.mp4
2-7.Vulkan-光栅化三角形算法.mp4
2-8.Vulkan-光栅化视图矩阵推导.mp4
2-9.Vulkan-光栅化投影矩阵推导.mp4
3-1.Vulakn接口理论(一).mp4
3-2.Vulakn接口理论(二).mp4
3-3.Vulakn接口理论(三).mp4
3-4.Vulkan-CMake跨平台工程搭建.mp4
3-5.Vulkan-开发库环境配置.mp4
3-6.Vulkan-程序结构搭建.mp4
3-7.Vulkan-Instance封装.mp4
3-8.Vulkan-扩展详解.mp4
3-9.Vulkan-重要工具ValidationLayer.mp4
3-10.Vulkan-ValidationLayer封装.mp4
4-1.Vulkan-物理设备创建.mp4
4-2.Vulkan-逻辑设备与队列族.mp4
4-3.Vulkan-Surface概念与封装.mp4
4-4.Vulkan-显示队列族与显示队列.mp4
4-5.Vulkan-交换链基础理论.mp4
4-6.Vulkan-交换链对象封装.mp4
4-7.Vulkan-交换链基础特性获取.mp4
4-8.Vulkan-交换链基础特性选取函数.mp4
4-9.Vulkan-交换链创建(一).mp4
4-10.Vulkan-交换链创建(二).mp4
5-1.Vulkan-Pipeline概念精讲(一).mp4
5-2.Vulkan-Pipeline概念精讲(二).mp4
5-3.Vulkan-Shader语言与Spirv.mp4
5-4.Vulkan-Shader类封装.mp4
5-5.Vulkan-Pipeline对象封装.mp4
5-6.Vulkan-Pipeline参数设置(一).mp4
5-7.Vulkan-Pipeline参数设置(二).mp4
5-8.Vulkan-Pipeline参数设置(三).mp4
5-9.Vulkan-Pipeline参数设置(四).mp4
6-1.Vulkan-RenderPass基础理论.mp4
6-2.Vulkan-SubPass与依赖详解.mp4
6-3.Vulkan-SubPass封装.mp4
6-4.Vulkan-RenderPass类封装.mp4
6-5.Vulkan-RenderPass创建.mp4
6-6.Vulkan-FrameBuffer创建.mp4
6-7.Vulkan-RenderPass知识点串联与梳理.mp4
7-1.Vulkan-指令与多线程理论.mp4
7-2.Vulkan-指令池对象封装.mp4
7-3.Vulkan-指令缓冲对象封装.mp4
7-4.Vulkan-指令缓冲对象接口设计.mp4
7-5.Vulkan-指令缓冲对象接口实现.mp4
7-6.Vulkan-指令缓冲录制实现.mp4
7-7.Vulkan-绘制与同步原理解析.mp4
7-8.Vulkan-信号量对象封装.mp4
7-9.Vulkan-渲染三角形呈现.mp4
7-10.Vulkan-队列指令同步.mp4
8-1.Vulkan-顶点描述系统详解.mp4
8-2.Vulkan-模型类设计.mp4
8-3.Vulkan-Buffer类封装.mp4
8-4.Vulkan-Buffer拷贝功能详解.mp4
8-5.Vulkan-Buffer工具函数创建与使用.mp4
8-6.Vulkan-顶点描述系统使用与显示.mp4
8-7.Vulkan-顶点数组拆分实验.mp4
8-8.Vulkan-交换链重构-析构.mp4
8-9.Vulkan-交换链重构-重建.mp4
9-1.Vulkan-描述符系统理论.mp4
9-2.Vulkan-描述Layout封装.mp4
9-3.Vulkan-更改Shader与数据准备.mp4
9-4.Vulkan-Uniform集中管理.mp4
9-5.Vulkan-描述符池封装.mp4
9-6.Vulkan-描述符集封装.mp4
9-7.Vulkan-UniformManager创建.mp4
9-8.Vulkan-Uniform系统效果完成.mp4
10-1.Vulkan-Image与Sampler理论介绍.mp4
10-2.Vulkan-Image对象封装.mp4
10-3.Vulkan-内存屏障理论.mp4
10-4.Vulkan-Image屏障实现.mp4
10-5.Vulkan-Image拷贝函数实现.mp4
10-6.Vulkan-Image对象构建测试.mp4
10-7.Vulkan-采样器对象封装.mp4
10-8.Vulkan-Texture纹理类封装.mp4
10-9.Vulkan-Texture描述符系统加入.mp4
10-10.Vulkan-Texture最终纹理显示.mp4
11-1.Vulkan-深度缓存原理详解.mp4
11-2.Vulkan-深度缓存Image功能封装.mp4
11-3.Vulkan-Layout转换与DepthBuffer资源准.mp4
11-4.Vulkan-深度检测Coding完毕.mp4
11-5.Vulkan-抗锯齿原理介绍.mp4
11-6.Vulkan-多重采样图片构建.mp4
11-7.Vulkan-RenderPass设置及完成效果.mp4
12-1.Vulkan-摄像机类介绍.mp4
12-2.Vulkan-鼠标键盘响应.mp4
12-3.Vulkan-摄像机效果加入.mp4
12-4.Vulkan-模型读取与显示漫游.mp4
课程配套资料.zip
页:
[1]