Games104(目录、架构分层、构建运行,源码解读)
课程目录 课程分为3部分,共22节课 架构概述 导论 分层 渲染中的数学 各核心系统原理 大气和云 渲染管线 后处理 动画技术 物理系统 粒子 工具链 gameplay 网络 前沿...
课程目录 课程分为3部分,共22节课 架构概述 导论 分层 渲染中的数学 各核心系统原理 大气和云 渲染管线 后处理 动画技术 物理系统 粒子 工具链 gameplay 网络 前沿...
噪声 作用:提供随机值 使用场景:地形生成,渲染效果…… 噪声分类: 晶格: 思想:在一个规则的空间网格(晶格)的顶点(晶格点:网格交叉点)上预定义随机值,然后通过插值计算网格内部任意点的值 特点: 随机性 ...
顶点数据描述 之前顶点数据直接放在shader中,现在我们要定义在cpp中,传入到shader中 流程: 顶点数据:将3个顶点的位置和颜色数据存放在数组中,每个元素都是Vertex自定义类型 VkVertexInputBindingDescription顶点输入绑定,包含绑定编号,字节间隔,顶点属性寻址是依赖于逐顶点还是逐实例 VkV...
创建VkInstance Vulkan单例:上下文:程序运行所依赖的外部环境 初始化vulkan: VkApplicationInfo创建APP结构体:APP名字,应用程序版本(表示当前的程序是什么版本的),API版本(1_3) VkInstanceCreateInfo创建结构体:包含VkApplicationInfo的引用,扩展数量和数据(gl...
简述 特性 跨平台 具有更接近GPU的API 性能强大 支持多线程 对象 实线箭头:创建关系,指向被创建者,需要通过PhysicalDevice创建device 虚线箭头:使用关系,指向被使用者,比如Pipeline使用Com...
数据结构 数据结构:用于存储和管理数据集合 复杂度 操作:查询,插入,删除,首部添加删除,尾部添加删除 顺序容器 访问顺序不依赖元素值,而是依赖元素加入时间 字符串 C风格字符串(非容器) char str1[] = "Hello"; char str2[10] = "World"; const char* str3 = "C-style"; strlen(str1);/...
ShaderToy 网站链接 介绍:基于WebGL API(可以理解为opengl的网页版本),使用glsl进行开发,专注于fs创作,用于学习和分享shader算法的在线社区 使用方式: 界面: 运行窗口:渲染窗口,暂停,重置,帧率,分辨率,录屏,声音,放大, 收藏,点赞,分享 代码编辑窗口:加号...
双指针 有l,r两个指针,可同向,反向移动 同向——快慢 有l,r两个指针,都指向0 当f->next不为空,一个快一个慢移动 反向 有l,r两个指针,分别指向0,n-1 左右端 当l < r时,每次根据条件选择l++还是r– 使用场景:一维数组,搜索/判断/调...
语法 顶点数据设置 VBO:管理顶点数据,一遍一次性发送到GPU显存中 链接和布局:指定哪部分数据对应着色器中哪个顶点属性 glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stri...
物理仿真 动画:渲染画面连续播放,>30fps 关键帧动画:中间帧通过插值技术生成 物理仿真:通过各种物理公式,计算网格体的位置/形变,通常和渲染分步实现 导数: 数学表示: f’(x),dy/dx, f’‘(x), d²y/dx²,d(dy / dx) / dx ...