现在学习使用最流行的图形API进行图形编程,欢迎Vulkan是目前最新和最流行的图形API。它是已经废弃的OpenGL的继任者,也是任何跨平台图形应用程序的未来。它的性能非常出色,非常适合游戏和游戏引擎开发。通过本课程,我旨在以一些简短且简单的课程教授您使用Vulkan进行计算机图形的基础知识。我相信每个人都可以学会,而且拥有易于理解的知识点尤为重要,可以在短时间内消化。本课程将涵盖:设置C++项目、创建窗口、初始化Vulkan、渲染简单三角形、编译着色器、调试问题、渲染顶点、3D基本变换。我不会涉及教授像后期处理或阴影这样的复杂主题,因为本课程旨在简洁易懂。不过,课程将定期更新,以涵盖规范中的任何重大变更。本课程在Microsoft Windows上进行教学,但大部分所学知识也可用于任何平台。使用的技术Vulkan SDK – 本课程的主要主题是Vulkan图形库规范。它是与您的PC的GPU“对话”,并呈现您发送的任何图形信息的东西。GLFW – 抽象处理窗口,这样我们就不必调用本机平台函数。这样,本课程对任何平台的人来说都将更易接近。GLM – 一个数学库,将有助于对3D信息进行转换。CMake – 用于管理和编译项目。我们将使用一种现代设置,易于理解和使用。Graphics Programming With Vulkan And C++

MP4 | 视频:h264,1920×1080 | 音频:AAC,44.1千赫
语言:英语 | 大小:5.59 GB | 时长:6小时6分钟

你将学到什么
创建图形应用程序
应用常见的渲染数学
使用Vulkan进行图形编程
应用良好的编码标准
创建和管理窗口
使用GLSL编写着色器代码
使用CMake设置项目
设置图形管线
基本图形理论

要求
对现代C++有良好的理解(指针,引用,lambda表达式)
对面向对象编程有基本的理解
了解标准C++库和算法

课程适用于初级C++程序员,游戏引擎程序员,切换到Vulkan的3D图形程序员

课程目录:
第1部分:介绍

讲座1 推广

讲座2 欢迎

讲座3 常见问题

讲座4 课程概述

讲座5 安装Vulkan SDK

讲座6 我能运行吗?

第2部分:设置

讲座7 使用的软件

讲座8 安装Visual Studio

讲座9 安装Ninja

讲座10 安装CMake

讲座11 安装Git

第3部分:CMake配置

讲座12 创建“你好,世界!”

讲座13 CMake依赖项和Vulkan

第4部分:编码标准

讲座14 编码标准:数字

讲座15 编码标准:Microsoft GSL

讲座16 常用类型

讲座17 编码风格:Google和Clang格式化

讲座18 编码风格:课程覆盖

讲座19 编码风格:EditorConfig

讲座20 样式很重要!

第5部分:窗口创建和管理

讲座21 什么是窗口?

讲座22 初始化GLFW

讲座23 使用预编译头文件

讲座24 坐标系统和2D向量

讲座25 什么是监视器?

讲座26 监视器功能

讲座27 提取监视器功能

讲座28 创建窗口类

讲座29 在所有地方添加预编译头文件

讲座30 为Vulkan准备窗口

第6部分:Vulkan管线

讲座31 什么是Vulkan?

讲座32 Vulkan架构

第7部分:Vulkan实例

讲座33 创建Vulkan实例

讲座34 检查现有扩展

讲座35 重构扩展检查

讲座36 函数式编程技巧

讲座37 实例:摘要

第8部分:错误处理和验证错误

讲座38 基本验证层

讲座39 添加Spdlog库

讲座40 设置调试信使

讲座41 创建Glfw错误回调

讲座42 重新组织代码到区域

讲座43 验证错误:摘要

第9部分:设备和队列

讲座44 什么是物理设备?

讲座45 获取物理设备

讲座46 检查队列族支持

讲座47 创建逻辑设备

讲座48 获取图形队列

讲座49 设备和队列:摘要

第10部分:演示和交换链

讲座50 创建表面

讲座51 创建演示队列

讲座52 检查设备扩展

讲座53 获取交换链能力

讲座54 选择交换链能力

讲座55 创建交换链

讲座56 获取交换链图像

讲座57 创建图像视图

讲座58 演示和交换链:摘要

第11部分:图形管线

讲座59 什么是顶点?

讲座60 什么是图形管线?

讲座61 基本着色器编译

讲座62 CMake着色器设置

讲座63 顶点和片段着色器

讲座64 用于GLSL的Visual Studio扩展

讲座65 着色器包含

讲座66 加载着色器

讲座67 视口和剪裁

讲座68 顶点输入和光栅化器

讲座69 颜色混合和布局

讲座70 渲染通道

讲座71 创建管线

讲座72 图形管线:摘要

第12部分:绘制三角形

讲座73 帧缓冲

讲座74 命令池和命令缓冲

讲座75 渲染命令

讲座76 创建信号量

讲座77 渲染

讲座78 调整窗口大小

讲座79 着色器通信

讲座80 着色器变量:添加颜色

讲座81 颜色混合和透明度

讲座82 渲染命令:摘要

第13部分:数据缓冲

讲座83 顶点输入类

讲座84 渲染顶点缓冲

讲座85 临时命令缓冲

讲座86 抽象缓冲创建

讲座87 分期和GPU缓冲

讲座88 索引缓冲

讲座89 推送常量

讲座90 统一缓冲区

讲座91 统一描述符集

讲座92 数据缓冲:摘要

第14部分:纹理

讲座93 将UV传递给着色器

讲座94 图像描述符池

讲座95 创建采样器

讲座96 布置纹理设置

讲座97 纹理资源

讲座98 加载图像到临时存储

讲座99 创建图像

讲座100 将纹理传输到GPU

讲座101 图像视图和描述符集

讲座102 纹理:摘要

第15部分:高级

讲座103 深度问题

讲座104 启用深度测试

第16部分:接下来…

讲座105 下一步去哪里?

讲座106 附加材料

发表回复

后才能评论