工程初始化与管线资源
安装
创建管线资源
- 在 Assets 下创建 LiteRP,并在其中创建 Editor 和 Runtime 文件夹
- 在 Runtime 下创建 Assembly Definition,起名 LiteRP
- 在 Editor 下创建 Assembly Definition,起名 LiteRP.Editor
- 在 Runtime 下创建 LiteRPAsset.cs 和 LiteRenderPipeline.cs
using UnityEngine;
using UnityEngine.Rendering;
namespace LiteRP
{
public class LiteRPAsset : RenderPipelineAsset<LiteRenderPipeline>
{
protected override RenderPipeline CreatePipeline()
{
return new LiteRenderPipeline();
}
}
}
using UnityEngine;
using UnityEngine.Rendering;
namespace LiteRP
{
public class LiteRenderPipeline : RenderPipeline
{
protected override void Render(ScriptableRenderContext context, Camera[] cameras)
{
throw new System.NotImplementedException();
}
}
}
- 在 Editor 下创建 Icons 目录,添加 PipelineAsset.png 文件
- 在编辑器下添加创建 Menu
using UnityEngine;
using UnityEngine.Rendering;
namespace LiteRP
{
[CreateAssetMenu(menuName ="Lite Render Pipeline/Lite Render Pipeline")]
public class LiteRPAsset : RenderPipelineAsset<LiteRenderPipeline>
{
protected override RenderPipeline CreatePipeline()
{
return new LiteRenderPipeline();
}
}
}
- 在 Assets 下创建 Settings 目录,并在其中创建 Lite Render Pipeline 资源
手动设置:
代码脚本设置:
在 Assets/Scripts 目录下创建 SetupLiteRP 脚本
using UnityEngine;
using UnityEngine.Rendering;
public class SetupLiteRP : MonoBehaviour
{
public RenderPipelineAsset currentPipeLineAsset;
private void OnEnable()
{
GraphicsSettings.defaultRenderPipeline = currentPipeLineAsset;
}
// 运行时修改能起到作用
private void OnValidate()
{
GraphicsSettings.defaultRenderPipeline = currentPipeLineAsset;
}
}