Class ShadowManager
Inheritance
System.Object
ShadowManager
Inherited Members
System.Object.ToString()
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
Syntax
public class ShadowManager : ShadowManagerBase, IShadowManager
Constructors
ShadowManager(ShadowSettings, ref ShadowContext.CtxtInit, ref ShadowManager.ShadowBudgets, ShadowmapBase[])
Declaration
public ShadowManager(ShadowSettings shadowSettings, ref ShadowContext.CtxtInit ctxtInitializer, ref ShadowManager.ShadowBudgets budgets, ShadowmapBase[] shadowmaps)
Parameters
ShadowManager(ShadowSettings, ref ShadowContext.CtxtInit, ShadowmapBase[])
Declaration
public ShadowManager(ShadowSettings shadowSettings, ref ShadowContext.CtxtInit ctxtInitializer, ShadowmapBase[] shadowmaps)
Parameters
Methods
AllocateShadows(FrameId, Camera, Boolean, List<VisibleLight>, UInt32, ref VectorArray<ShadowmapBase.ShadowRequest>, ref VectorArray<Int32>, ref VectorArray<ShadowData>, ref VectorArray<ShadowPayload>)
Declaration
protected override bool AllocateShadows(FrameId frameId, Camera camera, bool cameraRelativeRendering, List<VisibleLight> lights, uint totalGranted, ref VectorArray<ShadowmapBase.ShadowRequest> grantedRequests, ref VectorArray<int> shadowIndices, ref VectorArray<ShadowData> shadowDatas, ref VectorArray<ShadowPayload> shadowmapPayload)
Parameters
Returns
Type |
Description |
System.Boolean |
|
Overrides
BindResources(CommandBuffer, ComputeShader, Int32)
Declaration
public override void BindResources(CommandBuffer cmd, ComputeShader computeShader, int computeKernel)
Parameters
Type |
Name |
Description |
CommandBuffer |
cmd |
|
ComputeShader |
computeShader |
|
System.Int32 |
computeKernel |
|
Overrides
DisplayShadow(CommandBuffer, Material, Int32, UInt32, Single, Single, Single, Single, Single, Single, Boolean)
Declaration
public override void DisplayShadow(CommandBuffer cmd, Material debugMaterial, int shadowRequestIndex, uint faceIndex, float screenX, float screenY, float screenSizeX, float screenSizeY, float minValue, float maxValue, bool flipY)
Parameters
Type |
Name |
Description |
CommandBuffer |
cmd |
|
Material |
debugMaterial |
|
System.Int32 |
shadowRequestIndex |
|
System.UInt32 |
faceIndex |
|
System.Single |
screenX |
|
System.Single |
screenY |
|
System.Single |
screenSizeX |
|
System.Single |
screenSizeY |
|
System.Single |
minValue |
|
System.Single |
maxValue |
|
System.Boolean |
flipY |
|
Overrides
ShadowManagerBase.DisplayShadow(CommandBuffer, Material, Int32, UInt32, Single, Single, Single, Single, Single, Single, Boolean)
DisplayShadowMap(CommandBuffer, Material, UInt32, UInt32, Single, Single, Single, Single, Single, Single, Boolean)
Declaration
public override void DisplayShadowMap(CommandBuffer cmd, Material debugMaterial, uint shadowMapIndex, uint sliceIndex, float screenX, float screenY, float screenSizeX, float screenSizeY, float minValue, float maxValue, bool flipY)
Parameters
Type |
Name |
Description |
CommandBuffer |
cmd |
|
Material |
debugMaterial |
|
System.UInt32 |
shadowMapIndex |
|
System.UInt32 |
sliceIndex |
|
System.Single |
screenX |
|
System.Single |
screenY |
|
System.Single |
screenSizeX |
|
System.Single |
screenSizeY |
|
System.Single |
minValue |
|
System.Single |
maxValue |
|
System.Boolean |
flipY |
|
Overrides
ShadowManagerBase.DisplayShadowMap(CommandBuffer, Material, UInt32, UInt32, Single, Single, Single, Single, Single, Single, Boolean)
GetShadowMapCount()
Declaration
public override uint GetShadowMapCount()
Returns
Type |
Description |
System.UInt32 |
|
Overrides
GetShadowMapSliceCount(UInt32)
Declaration
public override uint GetShadowMapSliceCount(uint shadowMapIndex)
Parameters
Type |
Name |
Description |
System.UInt32 |
shadowMapIndex |
|
Returns
Type |
Description |
System.UInt32 |
|
Overrides
GetShadowRequestCount()
Declaration
public override uint GetShadowRequestCount()
Returns
Type |
Description |
System.UInt32 |
|
Overrides
GetShadowRequestFaceCount(UInt32)
Declaration
public override uint GetShadowRequestFaceCount(uint requestIndex)
Parameters
Type |
Name |
Description |
System.UInt32 |
requestIndex |
|
Returns
Type |
Description |
System.UInt32 |
|
Overrides
GetShadowRequestIndex(Light)
Declaration
public override int GetShadowRequestIndex(Light light)
Parameters
Type |
Name |
Description |
Light |
light |
|
Returns
Type |
Description |
System.Int32 |
|
Overrides
PrioritizeShadowCasters(Camera, List<VisibleLight>, UInt32, Int32[])
Declaration
protected override void PrioritizeShadowCasters(Camera camera, List<VisibleLight> lights, uint shadowRequestsCount, int[] shadowRequests)
Parameters
Type |
Name |
Description |
Camera |
camera |
|
List<VisibleLight> |
lights |
|
System.UInt32 |
shadowRequestsCount |
|
System.Int32[] |
shadowRequests |
|
Overrides
ProcessShadowRequests(FrameId, CullResults, Camera, Boolean, List<VisibleLight>, ref UInt32, Int32[], out Int32[])
Declaration
public override void ProcessShadowRequests(FrameId frameId, CullResults cullResults, Camera camera, bool cameraRelativeRendering, List<VisibleLight> lights, ref uint shadowRequestsCount, int[] shadowRequests, out int[] shadowDataIndices)
Parameters
Type |
Name |
Description |
FrameId |
frameId |
|
CullResults |
cullResults |
|
Camera |
camera |
|
System.Boolean |
cameraRelativeRendering |
|
List<VisibleLight> |
lights |
|
System.UInt32 |
shadowRequestsCount |
|
System.Int32[] |
shadowRequests |
|
System.Int32[] |
shadowDataIndices |
|
Overrides
PruneShadowCasters(Camera, List<VisibleLight>, ref VectorArray<Int32>, ref VectorArray<ShadowmapBase.ShadowRequest>, out UInt32)
Declaration
protected override void PruneShadowCasters(Camera camera, List<VisibleLight> lights, ref VectorArray<int> shadowRequests, ref VectorArray<ShadowmapBase.ShadowRequest> requestsGranted, out uint totalRequestCount)
Parameters
Overrides
RenderShadows(FrameId, ScriptableRenderContext, CommandBuffer, CullResults, List<VisibleLight>)
Declaration
public override void RenderShadows(FrameId frameId, ScriptableRenderContext renderContext, CommandBuffer cmd, CullResults cullResults, List<VisibleLight> lights)
Parameters
Type |
Name |
Description |
FrameId |
frameId |
|
ScriptableRenderContext |
renderContext |
|
CommandBuffer |
cmd |
|
CullResults |
cullResults |
|
List<VisibleLight> |
lights |
|
Overrides
SetPerFrameBudgets(ref ShadowManager.ShadowBudgets)
Declaration
public void SetPerFrameBudgets(ref ShadowManager.ShadowBudgets budgets)
Parameters
SyncData()
Declaration
public override void SyncData()
Overrides
UpdateCullingParameters(ref ScriptableCullingParameters)
Declaration
public override void UpdateCullingParameters(ref ScriptableCullingParameters cullingParams)
Parameters
Type |
Name |
Description |
ScriptableCullingParameters |
cullingParams |
|
Overrides
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.