Unity | Shader Graph 配置 & current render pipeline is not compatible 的问题

时间:2024-04-04 09:44:11

什么是着色器

Shader 着色器主要用来为人物添加纹理,添加各种动态效果

Shader 可以用 GLSL 来编写,这里介绍一个 Unity 自带的工具 Shader Graph 来更方便地制作着色器
Unity | Shader Graph 配置 & current render pipeline is not compatible 的问题


Shader Graph 是 Unity 中的制作着色器的模块,需要自己导入

由于遇到了很多问题,在介绍如何使用 Shader Graph 工具绘制着色器之前,简单介绍依赖环境的配置

对于环境配置失败的解决方案在篇尾,可直接跳到篇尾查看

The current render pipeline is not compatible with this master node


Unity 2019.x 将 LWRP 更改为 URP 渲染模式
由于暂时没有深入了解,先将找到的资源放在这里

URP 特性

Universal Render Pipeline in Unity 2019 – Overview & Tutorial


导入依赖环境

window -> package manager 搜索 shader graphUniversal Render Pipeline 安装

Unity | Shader Graph 配置 & current render pipeline is not compatible 的问题Unity | Shader Graph 配置 & current render pipeline is not compatible 的问题

Project 视窗中新建
右键 create -> rendering -> URP -> Pipeline Asset

Unity | Shader Graph 配置 & current render pipeline is not compatible 的问题

Edit -> Project Settings -> Graphics 中,将新建的 UniversalRenderPipelineAsset 拖入

Unity | Shader Graph 配置 & current render pipeline is not compatible 的问题

之后创建 Shader Graph 即可使用

Unity | Shader Graph 配置 & current render pipeline is not compatible 的问题
成功后的界面应该是这样的
Unity | Shader Graph 配置 & current render pipeline is not compatible 的问题


配置环境时出现的问题

1. current render pipeline is not compatible with this master node.

Unity | Shader Graph 配置 & current render pipeline is not compatible 的问题

问题解决:

Unity Package Manager Error: An error occured while resolving packages

To solve this problem go to Help>Reset Packages in Unity and problem will be solved.
If not then delete the >Packages>manifest.json file. So, unity will auto generate the new file. These are the two best solutions for this
ate the new file.
These are the two best solutions for this.

之后重新打开项目,再按照步骤重新操作一遍,即可解决问题


2. Output value ‘vert’ is not completely initialized

Output value ‘vert’ is not completely initialized
Unity | Shader Graph 配置 & current render pipeline is not compatible 的问题
Unity | Shader Graph 配置 & current render pipeline is not compatible 的问题

Unity 自身的 bug,多点几次 Save Asset 即可,它会让 Unity 重写一些函数,修正错误