Skip to content

Commit 2bbabfc

Browse files
committed
API change: SortOptions -> SortFlags
1 parent eb4c706 commit 2bbabfc

File tree

3 files changed

+19
-19
lines changed

3 files changed

+19
-19
lines changed

Assets/BasicRenderLoopTutorial/BasicRenderLoop.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,15 +60,15 @@ public override void Render(Camera[] cameras, RenderLoop loop)
6060

6161
// Draw opaque objects using BasicPass shader pass
6262
var settings = new DrawRendererSettings (cull, camera, shaderPassBasic);
63-
settings.sorting.sortOptions = SortOptions.SortByMaterialThenMesh;
63+
settings.sorting.flags = SortFlags.CommonOpaque;
6464
settings.inputFilter.SetQueuesOpaque ();
6565
loop.DrawRenderers (ref settings);
6666

6767
// Draw skybox
6868
loop.DrawSkybox (camera);
6969

7070
// Draw transparent objects using BasicPass shader pass
71-
settings.sorting.sortOptions = SortOptions.BackToFront; // sort back to front
71+
settings.sorting.flags = SortFlags.CommonTransparent;
7272
settings.inputFilter.SetQueuesTransparent ();
7373
loop.DrawRenderers (ref settings);
7474

Assets/ScriptableRenderLoop/HDRenderLoop/HDRenderLoop.cs

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ static void AddAdditionalLightData()
3838
SkyRenderer m_SkyRenderer = null;
3939
[SerializeField]
4040
SkyParameters m_SkyParameters = new SkyParameters();
41-
41+
4242
public SkyParameters skyParameters
4343
{
4444
get { return m_SkyParameters; }
@@ -97,7 +97,7 @@ public RenderTargetIdentifier[] GetGBuffers()
9797

9898
return colorMRTs;
9999
}
100-
100+
101101
/*
102102
public void BindBuffers(Material mat)
103103
{
@@ -158,7 +158,7 @@ public TextureSettings textureSettings
158158

159159
// This must be allocate outside of Rebuild() else the option in the class can't be set in the inspector (as it will in this case recreate the class with default value)
160160
BaseLightLoop m_lightLoop = new TilePass.LightLoop();
161-
161+
162162
public BaseLightLoop lightLoop
163163
{
164164
get { return m_lightLoop; }
@@ -196,7 +196,7 @@ public override void Rebuild()
196196

197197
m_ShadowPass = new ShadowRenderPass(m_ShadowSettings);
198198

199-
// Init Gbuffer description
199+
// Init Gbuffer description
200200

201201
m_gbufferManager.gbufferCount = m_LitRenderLoop.GetMaterialGBufferCount();
202202
RenderTextureFormat[] RTFormat; RenderTextureReadWrite[] RTReadWrite;
@@ -315,8 +315,8 @@ void RenderOpaqueRenderList(CullResults cull, Camera camera, RenderLoop renderLo
315315
var settings = new DrawRendererSettings(cull, camera, new ShaderPassName(passName))
316316
{
317317
rendererConfiguration = rendererConfiguration,
318-
sorting = { sortOptions = SortOptions.SortByMaterialThenMesh }
319-
};
318+
sorting = { flags = SortFlags.CommonOpaque }
319+
};
320320
settings.inputFilter.SetQueuesOpaque();
321321
renderLoop.DrawRenderers(ref settings);
322322
}
@@ -329,7 +329,7 @@ void RenderTransparentRenderList(CullResults cull, Camera camera, RenderLoop ren
329329
var settings = new DrawRendererSettings(cull, camera, new ShaderPassName(passName))
330330
{
331331
rendererConfiguration = rendererConfiguration,
332-
sorting = { sortOptions = SortOptions.BackToFront }
332+
sorting = { flags = SortFlags.CommonTransparent }
333333
};
334334
settings.inputFilter.SetQueuesTransparent();
335335
renderLoop.DrawRenderers(ref settings);
@@ -344,7 +344,7 @@ void RenderDepthPrepass(CullResults cull, Camera camera, RenderLoop renderLoop)
344344

345345
using (new Utilities.ProfilingSample("Depth Prepass", renderLoop))
346346
{
347-
// TODO: Must do opaque then alpha masked for performance!
347+
// TODO: Must do opaque then alpha masked for performance!
348348
// TODO: front to back for opaque and by materal for opaque tested when we split in two
349349
Utilities.SetRenderTarget(renderLoop, m_CameraDepthBufferRT);
350350
RenderOpaqueRenderList(cull, camera, renderLoop, "DepthOnly");
@@ -570,7 +570,7 @@ void FinalPass(RenderLoop renderLoop)
570570
void PrepareLightsForGPU(CullResults cullResults, Camera camera, ref ShadowOutput shadowOutput)
571571
{
572572
// build per tile light lists
573-
m_lightLoop.PrepareLightsForGPU(cullResults, camera, ref shadowOutput);
573+
m_lightLoop.PrepareLightsForGPU(cullResults, camera, ref shadowOutput);
574574
}
575575

576576
void Resize(Camera camera)
@@ -581,7 +581,7 @@ void Resize(Camera camera)
581581
// the below buffer which is bad. Best is to have a set of buffer for each camera that is persistent and reallocate resource if need
582582
// For now consider we have only one camera that go to this code, the main one.
583583
m_SkyRenderer.Resize(m_SkyParameters); // TODO: Also a bad naming, here we just want to realloc texture if skyparameters change (usefull for lookdev)
584-
584+
585585
if (camera.pixelWidth != m_WidthOnRecord || camera.pixelHeight != m_HeightOnRecord || m_lightLoop.NeedResize())
586586
{
587587
if (m_WidthOnRecord > 0 && m_HeightOnRecord > 0)
@@ -609,7 +609,7 @@ public void PushGlobalParams(Camera camera, RenderLoop renderLoop)
609609
Shader.SetGlobalInt("_EnvLightSkyEnabled", 0);
610610
}
611611

612-
m_lightLoop.PushGlobalParams(camera, renderLoop);
612+
m_lightLoop.PushGlobalParams(camera, renderLoop);
613613
}
614614

615615
public override void Render(Camera[] cameras, RenderLoop renderLoop)
@@ -658,7 +658,7 @@ public override void Render(Camera[] cameras, RenderLoop renderLoop)
658658
// TODO: avoid double lighting by tagging stencil or gbuffer that we must not lit.
659659
// TODO: ask Morten why this pass is not before GBuffer ? Will make more sense and avoid
660660
// to do gbuffer pass on unseen mesh.
661-
// TODO: how do we select only the object that must be render forward ?
661+
// TODO: how do we select only the object that must be render forward ?
662662
// this is all object with gbuffer pass disabled ?
663663
//RenderForwardOpaqueDepth(cullResults, camera, renderLoop);
664664

@@ -678,7 +678,7 @@ public override void Render(Camera[] cameras, RenderLoop renderLoop)
678678

679679
using (new Utilities.ProfilingSample("Build Light list", renderLoop))
680680
{
681-
m_lightLoop.PrepareLightsForGPU(cullResults, camera, ref shadows);
681+
m_lightLoop.PrepareLightsForGPU(cullResults, camera, ref shadows);
682682
m_lightLoop.BuildGPULightLists(camera, renderLoop, m_CameraDepthBufferRT);
683683

684684
PushGlobalParams(camera, renderLoop);
@@ -693,7 +693,7 @@ public override void Render(Camera[] cameras, RenderLoop renderLoop)
693693

694694
RenderForwardUnlit(cullResults, camera, renderLoop);
695695

696-
RenderVelocity(cullResults, camera, renderLoop); // Note we may have to render velocity earlier if we do temporalAO, temporal volumetric etc... Mean we will not take into account forward opaque in case of deferred rendering ?
696+
RenderVelocity(cullResults, camera, renderLoop); // Note we may have to render velocity earlier if we do temporalAO, temporal volumetric etc... Mean we will not take into account forward opaque in case of deferred rendering ?
697697

698698
// TODO: Check with VFX team.
699699
// Rendering distortion here have off course lot of artifact.

Assets/ScriptableRenderLoop/fptl/FptlLighting.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -298,7 +298,7 @@ static void RenderGBuffer(CullResults cull, Camera camera, RenderLoop loop)
298298
// render opaque objects using Deferred pass
299299
var settings = new DrawRendererSettings(cull, camera, new ShaderPassName("Deferred"))
300300
{
301-
sorting = {sortOptions = SortOptions.SortByMaterialThenMesh},
301+
sorting = { flags = SortFlags.CommonOpaque },
302302
rendererConfiguration = RendererConfiguration.PerObjectLightmaps
303303
};
304304

@@ -325,7 +325,7 @@ void RenderForward(CullResults cull, Camera camera, RenderLoop loop, bool opaque
325325
// render opaque objects using Deferred pass
326326
var settings = new DrawRendererSettings(cull, camera, new ShaderPassName("ForwardSinglePass"))
327327
{
328-
sorting = { sortOptions = SortOptions.SortByMaterialThenMesh }
328+
sorting = { flags = SortFlags.CommonOpaque }
329329
};
330330
settings.rendererConfiguration = RendererConfiguration.PerObjectLightmaps | RendererConfiguration.PerObjectLightProbe;
331331
if (opaquesOnly) settings.inputFilter.SetQueuesOpaque();
@@ -344,7 +344,7 @@ static void DepthOnlyForForwardOpaques(CullResults cull, Camera camera, RenderLo
344344
// render opaque objects using Deferred pass
345345
var settings = new DrawRendererSettings(cull, camera, new ShaderPassName("DepthOnly"))
346346
{
347-
sorting = { sortOptions = SortOptions.SortByMaterialThenMesh }
347+
sorting = { flags = SortFlags.CommonOpaque }
348348
};
349349
settings.inputFilter.SetQueuesOpaque();
350350
loop.DrawRenderers(ref settings);

0 commit comments

Comments
 (0)