Class ScriptableRenderer
Class ScriptableRenderer implements a rendering strategy. It describes how culling and lighting works and
the effects supported.
A renderer can be used for all cameras or be overridden on a per-camera basis. It will implement light culling and setup
and describe a list of ScriptableRenderPass to execute in a frame. The renderer can be extended to support more effect with additional
ScriptableRendererFeature. Resources for the renderer are serialized in ScriptableRendererData.
he renderer resources are serialized in ScriptableRendererData.
ScriptableRendererData
ScriptableRendererFeature
ScriptableRenderPass
구현
상속된 멤버
네임스페이스: UnityEngine.Rendering.Universal
어셈블리: solution.dll
구문
[MovedFrom("UnityEngine.Rendering.LWRP")]
public abstract class ScriptableRenderer : IDisposable
생성자
| 이름 | 설명 |
|---|---|
| ScriptableRenderer(ScriptableRendererData) |
프로퍼티
| 이름 | 설명 |
|---|---|
| activeRenderPassQueue | |
| cameraColorTarget | |
| cameraDepth | |
| rendererFeatures | |
| supportedRenderingFeatures | Supported rendering features by this renderer. UnityEngine.Rendering.SupportedRenderingFeatures |
메서드
| 이름 | 설명 |
|---|---|
| ConfigureCameraTarget(RenderTargetIdentifier, RenderTargetIdentifier) | Configures the camera target. |
| Dispose() | Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. |
| Dispose(bool) | |
| EnqueuePass(ScriptableRenderPass) | Enqueues a render pass for execution. |
| Execute(ScriptableRenderContext, ref RenderingData) | Execute the enqueued render passes. This automatically handles editor and stereo rendering. |
| FinishRendering(CommandBuffer) | Called upon finishing rendering the camera stack. You can release any resources created by the renderer here. |
| GetCameraClearFlag(ref CameraData) | Returns a clear flag based on CameraClearFlags. |
| SetCameraMatrices(CommandBuffer, ref CameraData, bool) | Set camera matrices. This method will set |
| Setup(ScriptableRenderContext, ref RenderingData) | Configures the render passes that will execute for this renderer. This method is called per-camera every frame. |
| SetupCullingParameters(ref ScriptableCullingParameters, ref CameraData) | Override this method to configure the culling parameters for the renderer. You can use this to configure if lights should be culled per-object or the maximum shadow distance for example. |
| SetupLights(ScriptableRenderContext, ref RenderingData) | Override this method to implement the lighting setup for the renderer. You can use this to compute and upload light CBUFFER for example. |