Hello . 大家好
今天给大家带来的是Unitiy官方TA手册
《Unity关键工具集和工作流程》part 3
我是高鹏涛
近日,Unity官方发布了一本名为《关键工具集和工作流程》的免费电子书,该手册整合了“所有Unity系统、功能和工作流程的详细摘要”。这份91页的指南汇集了经验丰富的技术美术师的意见,包括《Enemies》、《The Heretic》、《Book of the Dead》以及其他创作者的演示。
本书介绍了渲染管线、世界构建、着色、照明、动画、视觉特效、过场动画。以及还有一些章节讨论了脚本编写、分析和调试项目以及 2D 游戏开发。
而本篇连载将以中文翻译的形式分享给大家,英文阅读能力不错的同学可以直接去官方下载原版文档。(地址在文章末端)
由于个人能力有限,如有纰漏之处欢迎留言指出。
在Unity中, shaders被划分为三种类型:
— Shaders作为图形管线的一部分: 这些是最常见的类型,因为,它们可以进行计算已经确定将要出现在屏幕上像素(比如:Surface Shaders) .
—计算Shaders:在GPU上计算一些常规图形管线之外的计算任务。
—光线追踪 shaders: 这些主要用于产生照明。
Unity shaders 使用的是一种叫ShaderLab的Unity用的的语言编写的 , 但是你也可以使用 Shader Graph来可视化地创建Shader。你可以在Shader Graph的框架中创建和连接节点,而不是在编辑器中写代码、保存、编译和测试,而且,你可以同时实时观察材质的变化,因此,你可以在快速的进行修改和反复实验。
Shader图形资产为不同的材质提供了预先配置的选项。Shader Graph中的节点代表了应用材质的对象的数据;比如它们的数学函数和程序模式。
此外,Shader Graph系统是可扩展的,这意味着程序员可以开发自定义Shader Graph节点。使用Shader Graph来创建适用于URP和HDRP(以及2021 LTS或更新版本中的内置渲染管线)的着色器。
Shader Graph中创建基于节点链接的着色器
Master Stack 是Shader Graph的末端,它定义了Shader的最终表面外观。它可以帮助用户直观地了解在顶点阶段(计算多边形顶点的属性)和碎片阶段(计算顶点之间的像素状态)所发生的一系列关系。
在编写HLSL代码方面有经验的用户可以在 Shader Graph中创建自定义函数块
Shader Graph通过连接图形网络中的节点,为艺术家和其他团队成员提供Shader创作功能。
计算Shaders是在常规渲染管线之外,运行在GPU上的任务。它们可以用于大规模并行的GPU算法计算或用于加速渲染 .
要有效地使用它们,需要对GPU架构和并行算法、DirectCompute、OpenGL Compute、CUDA或OpenCL有深入了解。这些着色器具有更好的兼容性和通用性,可以在所有Unity渲染管道中实现。
顾名思义, Surface Shaders 定义了材质的物理特性。它们计算材质中每个像素的最终颜色,并进行光照计算,定义表面上每个像素的阴影。Unity中的大多数表面着色器都是默认的标准表面着色器的扩展,这使得创建过程更加直观,给艺术家更多的自由来定义他们的表面效果。
现代游戏中的照明大量使用了全局照明(GI)。GI涵盖了一系列技术和数学模型,试图模拟光线在反弹和与世界互动时的复杂行为。准确地模拟全局照明是具有挑战性的,而且计算成本也很高。由于这个原因,游戏经常使用一系列的方法来事先处理这些计算,而不是在游戏过程中。
- End -
本文来自微信公众号“Thepoly”(ID:gh_8e14f20c7af9)。大作社经授权转载,该文观点仅代表作者本人,大作社平台仅提供信息存储空间服务。