《Unity ShaderGraph特效制作精要》课程内容整理

课程内容概要

ShaderGraph的用途、特点,及使用它的好处
ShaderGraph的组成元素
一些ShaderGraph相关的Demo的介绍
自定义节点

具体内容

简介

用途:使用ShaderGraph的目的是快速搭建出Shader而不用写Shader代码
特点:隐藏了编写Shader所需的技术细节,将手动写代码转变为可视化编程(连接节点构建效果)
优点:有良好的扩展性——可创建自定义节点、可自定义材质属性
说明:ShaderGraph与Unity旧有的Shader是互不兼容的

组成元素

属性:仅有输出端口,是最初的输入
Node:有多个输入和输出端口,任意两个同类型的端口可连接;作为中间的计算过程
Master Node:仅有输入端口,是最终效果

Demo

2D

如何分析一个现成的ShaderGraph?

  • 看其属性:有哪些参数
  • 看其是半透明还是不透明的(不透明的效率更高,非必须不要使用半透明)
  • 看Master Node有哪些输入
  • 确认自己要了解的效果是什么,找到并分析实现该效果的节点流程
3D

通过y值信息设置效果

程序化生成

使用噪声纹理

高清渲染管线

可通过生成SubGraph将一组节点封装起来(关注点分离)
与轻量级渲染管线的区别是:二者的Master Node不同

自定义节点

在代码中添加命名空间UnityEditor.ShaderGraph
从基类CodeFunctionNode进行继承

总结

ShaderGraph将Shader的编写可视化,以属性作为输入,Master Node作为输出,通过若干Node进行中间的计算过程
从上面的描述应能领会到:学习ShaderGraph的关键在于 掌握各类基本节点的功能

学习过程

  • 了解ShaderGraph的主流程
  • 学习基本节点功能,使用这些功能构建自己想要的效果(研究他人做的效果和他人的实现方法)
  • 学习编写自定义节点来满足非常个性化的需求

你可能感兴趣的:(《Unity ShaderGraph特效制作精要》课程内容整理)