Описание
Параметры, которые настраивают операцию отбраковки в 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 | Устанавливает расстояние для отбраковки определенного слоя. |

