Описание
Параметры, которые настраивают операцию отбраковки в Scriptable Render Pipeline.
Получите структуру ScriptableCullingParameters, вызвав Camera.TryGetCullingParameters.
Обратите внимание, что вы можете получить и просмотреть структуру ScriptableCullingParameters из камеры во встроенном конвейере рендеринга; однако изменение значений не имеет никакого эффекта.
В следующем коде Scriptable Render Pipeline показано, как получить структуру ScriptableCullingParameters из камеры с помощью Camera.TryGetCullingParameters, настроить структуру, а затем передать структуру в ScriptableRenderContext.Cull для получения структуры CullingResults. Затем вы можете использовать структуру CullingResults в вызове ScriptableRenderContext.DrawRenderers.
using UnityEngine;
using UnityEngine;
using UnityEngine.Rendering;
public class ExampleRenderPipelineInstance : RenderPipeline
{
public ExampleRenderPipelineInstance()
{
}
protected override void Render(ScriptableRenderContext context, Camera[] cameras)
{
// Получаем параметры отбраковки из нужного Camera
if (cameras[0].TryGetCullingParameters(out var cullingParameters))
{
// Изменяем параметры отбраковки, чтобы настроить операцию отбраковки
cullingParameters.cullingOptions &= ~CullingOptions.OcclusionCull;
cullingParameters.isOrthographic = false;
// Планируем операцию отбраковки
CullingResults cullingResults = context.Cull(ref cullingParameters);
// Помещаем код, который планирует операции рисования с помощью структуры CullingResults
// Смотрим ScriptableRenderContext.DrawRenderers для примера
// …
// Выполняем все запланированные операции по порядку
context.Submit();
}
}
}
Смотрите так же: Camera.TryGetCullingParameters, ScriptableRenderContext.Cull, CullingResults, ScriptableRenderContext.DrawRenderers.
Статические Свойства
cullingJobsLowerLimit | Нижний предел значения ScriptableCullingParameters.maximumPortalCullingJobs. |
cullingJobsUpperLimit | Верхний предел значения ScriptableCullingParameters.maximumPortalCullingJobs. |
layerCount | Количество доступных слоев. |
maximumCullingPlaneCount | Максимальное количество отбраковываемых плоскостей, которое можно указать. |
Свойства
accurateOcclusionThreshold | Этот параметр определяет расстояние запроса для отсечения окклюзии. |
cameraProperties | Свойства камеры, используемые для отбраковки. |
cullingMask | Маска для операции отбраковки. |
cullingMatrix | Матрица для операции отбраковки. |
cullingOptions | Флаги для настройки операции отбраковки в Scriptable Render Pipeline. |
cullingPlaneCount | Количество отбраковочных плоскостей для использования. |
isOrthographic | Является ли отбраковка орфографической . |
lodParameters | LODПараметры для отбраковки. |
maximumPortalCullingJobs | Этот параметр определяет, сколько активных заданий вносят вклад в отсечение окклюзии. |
maximumVisibleLights | Этот параметр управляет допустимым количеством видимого света. |
origin | Положение для происхождения отбраковки. |
reflectionProbeSortingCriteria | Варианты сортировки Reflection Probe для отбраковки. |
shadowDistance | Расстояние до тени, используемое для отбраковки. |
stereoProjectionMatrix | Матрица проекций, созданная для однопроходной стереофильтрации. |
stereoSeparationDistance | Расстояние между виртуальными глазами. |
stereoViewMatrix | Матрица вида, сгенерированная для однопроходной стереофильтрации. |
Публичные Методы
GetCullingPlane | Получает плоскость отбраковки по заданному индексу. |
GetLayerCullingDistance | Получает расстояние для отбраковки определенного слоя. |
SetCullingPlane | Устанавливает плоскость отбраковки на заданный индекс. |
SetLayerCullingDistance | Устанавливает расстояние для отбраковки определенного слоя. |