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

FilteringSettings 构造函数

建议更改

成功!

感谢您帮助我们改进 Unity 文档的质量。尽管我们无法接受所有提交,但我们确实会阅读来自用户的所有建议变更,并根据需要进行更新。

关闭

提交失败

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

关闭

取消

声明

public FilteringSettings(Nullable<RenderQueueRange> renderQueueRange = RenderQueueRange.all, int layerMask, uint renderingLayerMask, int excludeMotionVectorObjects);

参数

renderQueueRange 用于设置 renderQueueRange 值的 RenderQueueRange 结构。Unity 会渲染其 Material.renderQueue 值在给定范围内的对象。RenderQueueRange.all
layerMask 用于设置 layerMask 值的位掩码。Unity 会渲染其 GameObject.layer 值在此位掩码中启用的对象。默认值为 -1
renderingLayerMask 用于设置 renderingLayerMask 值的位掩码。Unity 会渲染其 Renderer.renderingLayerMask 值在此位掩码中启用的对象。默认值为 uint.MaxValue
excludeMotionVectorObjects 用于设置 excludeMotionVectorObjects 值的整数。当此值为 1 时,Unity 会排除已启用动态传递,或自上一帧以来已更改位置的对象。默认值为 0

描述

创建 FilteringSettings 结构以用于 Rendering.ScriptableRenderContext.DrawRenderers。

注意:如果不带任何参数调用 new FilteringSettings(),Unity 会创建一个空的 FilteringSettings 结构。空结构不包含任何数据,所有内部值均默认为 0;例如,它的 layerMask 值为 0,以此类推。除非您覆盖其属性,否则此空结构会告知 Unity 排除所有对象。

如果你使用一个或多个参数调用这个构造函数,Unity 会为所有未指定的值设置默认值。每个属性的默认值都不执行任何过滤。要创建一个具有所有默认值的 FilteringSettings 结构,请使用 FilteringSettings.defaultValue

此示例演示了使用一些非默认值创建 FilteringSettings 结构的语法。

using UnityEngine;
using UnityEngine.Rendering;

public class FilteringSettingsExample { public FilteringSettings CreateFilteringSettings() { // Instantiate a RenderQueueRange struct that represents the RenderQueue values you want to render // In this example, render materials whose RenderQueue value is in the opaque range var desiredRenderQueueRange = RenderQueueRange.opaque;

// Create a bit mask that represents the layers you want to render // In this example, only render objects on layer 0 (the "Default" layer) int layerIndex = 0; int layerMask = 1 << layerIndex;

// Instantiate a FilteringSettings struct with the desired values // Unity sets any unspecified values to the same as FilteringSettings.default FilteringSettings filteringSettings = new FilteringSettings(desiredRenderQueueRange, layerMask);

return filteringSettings; } }

其他资源:ScriptableRenderContext.DrawRenderers、在自定义渲染管道中创建简单的渲染循环