Files
XCEngine/managed/XCEngine.RenderPipelines.Universal/Rendering/Universal/RendererCameraRequestContext.cs

82 lines
2.2 KiB
C#
Raw Normal View History

using XCEngine;
using XCEngine.Rendering;
namespace XCEngine.Rendering.Universal
{
public sealed class RendererCameraRequestContext
{
private readonly CameraRenderRequestContext m_requestContext;
internal RendererCameraRequestContext(
CameraRenderRequestContext requestContext)
{
m_requestContext = requestContext;
}
public int renderedBaseCameraCount =>
m_requestContext != null
? m_requestContext.renderedBaseCameraCount
: 0;
public int renderedRequestCount =>
m_requestContext != null
? m_requestContext.renderedRequestCount
: 0;
public Camera camera =>
m_requestContext != null
? m_requestContext.camera
: null;
public int rendererIndex
{
get =>
m_requestContext != null
? m_requestContext.rendererIndex
: -1;
set
{
if (m_requestContext != null)
{
m_requestContext.rendererIndex = value;
}
}
}
public bool hasDirectionalShadow =>
m_requestContext != null &&
m_requestContext.hasDirectionalShadow;
public DirectionalShadowPlanningSettings
directionalShadowPlanningSettings
{
get =>
m_requestContext != null
? m_requestContext
.directionalShadowPlanningSettings
: DirectionalShadowPlanningSettings
.CreateDefault();
set
{
if (m_requestContext != null)
{
m_requestContext
.directionalShadowPlanningSettings =
value;
}
}
}
public void ClearDirectionalShadow()
{
if (m_requestContext != null)
{
m_requestContext.ClearDirectionalShadow();
}
}
internal CameraRenderRequestContext requestContext =>
m_requestContext;
}
}