Learn_Vulkan04_渲染框架实现_材质系统设计
网格(Mesh)用作定义虚拟物体的形状,材质(Material)则是描述这些物体表面的外观,需要借助纹理和材质参数,参数包括光照参数、UV偏移、基础颜色等等。在渲染系统渲染某个网格体时,将对应材质参数传递给着色器,即可完成不同表面的渲染。
民间图形学爱好者.
网格(Mesh)用作定义虚拟物体的形状,材质(Material)则是描述这些物体表面的外观,需要借助纹理和材质参数,参数包括光照参数、UV偏移、基础颜色等等。在渲染系统渲染某个网格体时,将对应材质参数传递给着色器,即可完成不同表面的渲染。
在上一篇文章讨论了工程的基本结构,接下来要把Vulkan、日志系统和窗口系统植入到本框架。
距离上一次认真写一点东西,又过了1年之久,深感自己拖延症愈加严重,每次定好的计划总是无法做到真正的执行,这期间也可以给自己找个借口,那就是工作很忙,但也有大部分原因是因为感觉自己经验尚浅,想着要后面会不会推翻当下的方案,后面就是不知道从哪开始记录了,最后就进入了焦虑 -> 躺平 -> 焦虑的恶性循环。
前面一篇文章是Learn_Vulkan00_第一个三角形,渲染出来了第一个彩色三角形。学习新事物的是一个很枯燥的过程,所以我们应该每个阶段想办法获得一些成就感,比如上一篇的三角形,先用最快的方式得到效果,能看到效果就能给我们带来进一步的学习动力。
本文将描述一个基于C++/Vulkan渲染彩色三角形的案例。因为Vulkan API较为底层,对象也繁多,所以我尽可能只保留必要内容,目的是梳理出来一个Vulkan程序的基础框架,也是对Vulkan各个对象的初步理解。当然也出于这个关系,本文不会对每个API参数都进行详细解释。