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. |