版本:Unity 6 (6000.0)
语言英语
  • C#

IRenderPipelineResources

UnityEngine.Rendering 中的接口


实现以下接口:IRenderPipelineGraphicsSettings

建议更改

成功!

感谢您帮助我们改进 Unity 文档的质量。虽然我们无法接受所有意见,但我们会阅读用户提交的每条建议的更改,并在适用时进行更新。

关闭

提交失败

由于某种原因,无法提交您的建议更改。请在几分钟后<a>重试</a>。感谢您花时间帮助我们改进 Unity 文档质量。

关闭

取消

描述

实现此接口的类包含让您的图形功能发挥作用所需的资源。

实现此接口的类将包含您的渲染管线运行所需的所有资源。有一种机制可以基于以下内容为您设置空字段:ResourcePathAttribute属性。创建资源时,会被调用加载机制,以确保您的资源不会创建带有空值。此机制仅在创建时自动调用。

另请参阅ResourceContainerAttribute。

using UnityEngine;
using UnityEngine.Rendering;
using System;

[Serializable] [SupportedOnRenderPipeline(typeof(DummyPipelineAsset))] class MyResourceForFeatureX : IRenderPipelineResources { enum Version { Initial, ChangedIcon1, ChangedShader, Count, Last = Count - 1 } [SerializeField, HideInInspector] Version m_version = Version.Last; public int version => (int)m_version;

[ResourcePath("ResourceAssets/resourceIcon1.png")] public Texture2D icon1; [ResourcePath("ResourceAssets/resourceIcon2.png")] public Texture2D icon2; [ResourcePath("My/Shader/Path", ResourcePathAttribute.SearchType.ShaderName)] public Shader shader; }

这里我们添加了一个 MyResourceForFeatureX,包含各种图标和用于渲染功能着色器。借助 SupportedOn,我们仅为 SRP 通用渲染管线添加它。如果您使用 HDRenderPipelineAsset,可以随时将其替换为您自己的管线或 HDRenderPipelineAsset。