# Unity_Shaders_Book_URP **Repository Path**: mengtest/Unity_Shaders_Book_URP ## Basic Information - **Project Name**: Unity_Shaders_Book_URP - **Description**: 《Unity Shader入门精要》书中Demo的URP实现, 使用Unity2021.3.21f1c1创建的Project, Unity打开该Project时, 请添加"-force-opengl"参数, 使用OpenGL渲染. - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 2 - **Created**: 2023-10-05 - **Last Updated**: 2023-10-05 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Unity_Shaders_Book_URP #### 介绍 《Unity Shader入门精要》书中Demo的URP实现 #### 打开Project的注意事项 1. 由于该项目使用Unity2021.3.21f1c1创建的Project, 故需要用该版本或更新版本的Unity打开. 2. 添加命令行参数"-force-opengl", 即使用OpenGL渲染模式打开Project 3. Package Manager中下载"Universal RP" #### 目录说明 Project中的各个资源的目录名称, 都是以书中的章节来命名的, 以Scene举例, Assets/Scenes/Chapter5/Scene_5_2.unity 对应的是书中第五章第二节的示例工程.
Texture, Material, C# Script和Shader的目录也是以章节的形式存放. #### 坑点 Unity新建URP Project时, 有个坑, 不注意会导致所有不透明渲染对列中的自定义材质的物体都无法绘制.
打开"URP-HighFidelity-Renderer.asset", 有个选项: ![img](IMG_OF_README/DepthPrimingMode.png) 有2种方式恢复那些不透明物体的绘制 1. 将这个选项设置为"Disabled", 禁用Depth Priming Mode(深度引动模式) 2. 在自定义材质的Shader中引入LightMode是DepthOnly的特殊Pass, 来生成场景中不透明物体的深度图 ```shaderlab UsePass "Universal Render Pipeline/Unlit/DepthOnly ``` 参考: https://blog.csdn.net/fish_toucher/article/details/129861360