设置可用的渲染管线资源

本文介绍了在Unity中设置渲染管线资源的过程,包括编辑器中的设置和运行时的资源切换。强调了兼容性和性能考虑,以及在不同场景下如何确保资源与渲染管线实例匹配,避免错误和视觉问题。同时提供了在Graphics Settings中设置和运行时使用API更改渲染管线资源的步骤。
摘要由CSDN通过智能技术生成

设置可用的渲染管线资源

在SRP中,你的工程需要有一个激活的渲染管线资源(Render Pipeline Asset).这一章的内容有在Editor以及运行时的情况下设置渲染管线资源的相关资讯

兼容性和性能

因为SRP是高度可配置的,所以改变激活的渲染管线资源只会导致很小的变化,比如用同样的渲染管线实例对应不同的quality等级,或者来一个大的改变,比如从通用渲染管线(URP)切换到高清晰渲染管线(HDRP).

如果你从一个激活的渲染管线资源换到另外一个使用了不同渲染管线实例的管线资源,你必须要保证你项目中的资源和代码要和新的渲染管线实例相兼容,否者你可能会遇到错误或者是一些无法预料的视觉效果

注意,转换新的渲染管线资源会导致unity销毁当前的渲染管线实例,并且会去调用新的渲染管线资源中的CreatePipeline()方法.从SRP中的代码来看,在计算上这将是一个资源密集型的操作

在UnityEidor中设置渲染管线资源

当你在编辑你的工程时,如果想要使用SRP,你需要在你的UnityEidor中设置渲染管线资源.你在UnityEidor中设置的渲染管线资源是unity默认在build player中使用的渲染管线资源.

Graphics Settings 窗口,为你的工程设置渲染管线资源

1.通过导航到Edit > Project Settings > Graphics来打开 Graphics Settings窗口

2.在你的Project文件夹下,找到你想要使用的渲染管线资源

3.拖拽渲染管线资源到Scriptable Render Pipeline Setting这一栏.然后,Unity会立马使用你在渲染管线资源中定义的配置开始渲染.这包括了Game视图,scene视图,以及在Project面板和Inspector面板中显示的材质的预览窗口

在运行时设置渲染管线资源

如果你想要在多个渲染管线资源之间切换,你可以在runtime时设置渲染管线资源.你可以在build player中进行设置也可以在Editor下的Play模式下完成这一切

在runtime时,使用 GraphicsSettings.renderPipelineAsset API对渲染管线资源进行设置

以下的代码展示了如何在多个渲染管线资源之间切换.

using UnityEngine;
using UnityEngine.Rendering;
 
public class SwitchRenderPipelineAsset : MonoBehaviour
{
    public RenderPipelineAsset exampleAssetA;
    public RenderPipelineAsset exampleAssetB;
 
    void Update()
    {
        if (Input.GetKeyDown(KeyCode.A)) {
            GraphicsSettings.renderPipelineAsset = exampleAssetA;
            Debug.Log("Active render pipeline asset is: " + GraphicsSettings.renderPipelineAsset.name);
        }
        else if (Input.GetKeyDown(KeyCode.B)) {
            GraphicsSettings.renderPipelineAsset = exampleAssetB;
            Debug.Log("Active render pipeline asset is: " + GraphicsSettings.renderPipelineAsset.name);
        }
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值