Skip to content

Commit 30ddad4

Browse files
committed
Fix #ifdef not compiling in C# code and missing changes from Lit to SimpleLit. Updated README since we now support URP 12.
1 parent 467c633 commit 30ddad4

File tree

2 files changed

+21
-23
lines changed

2 files changed

+21
-23
lines changed

Plugins/UniversalShaderGraphExtensions/Editor/UniversalTargetExtensions/Targets/UniversalSimpleLitSubTarget.cs

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ sealed class UniversalSimpleLitSubTarget : UniversalSubTarget/*, ILegacyTarget*/
1717
{
1818
static readonly GUID kSourceCodeGuid = new GUID("d6c78107b64145745805d963de80cc28"); // UniversalSimpleLitSubTarget.cs
1919

20-
#ifdef UNITY_2022_1_OR_NEWER
20+
#if UNITY_2022_1_OR_NEWER
2121
public override int latestVersion => 1;
2222
#endif
2323

@@ -33,7 +33,7 @@ sealed class UniversalSimpleLitSubTarget : UniversalSubTarget/*, ILegacyTarget*/
3333
//[SerializeField]
3434
//bool m_ClearCoat = false;
3535

36-
#ifdef UNITY_2022_1_OR_NEWER
36+
#if UNITY_2022_1_OR_NEWER
3737
[SerializeField]
3838
bool m_BlendModePreserveSpecular = true;
3939
#endif
@@ -79,7 +79,7 @@ public NormalDropOffSpace normalDropOffSpace
7979
// }
8080
//}
8181

82-
#ifdef UNITY_2022_1_OR_NEWER
82+
#if UNITY_2022_1_OR_NEWER
8383
public bool blendModePreserveSpecular
8484
{
8585
get => m_BlendModePreserveSpecular;
@@ -106,8 +106,8 @@ public override void Setup(ref TargetSetupContext context)
106106
}
107107

108108
// Process SubShaders
109-
context.AddSubShader(PostProcessSubShader(SubShaders.LitComputeDotsSubShader(target, /*workflowMode,*/ target.renderType, target.renderQueue, /*complexLit,*/ blendModePreserveSpecular, specularHighlights)));
110-
context.AddSubShader(PostProcessSubShader(SubShaders.LitGLESSubShader(target, /*workflowMode,*/ target.renderType, target.renderQueue, /*complexLit,*/ blendModePreserveSpecular, specularHighlights)));
109+
context.AddSubShader(PostProcessSubShader(SubShaders.SimpleLitComputeDotsSubShader(target, /*workflowMode,*/ target.renderType, target.renderQueue, /*complexLit,*/ blendModePreserveSpecular, specularHighlights)));
110+
context.AddSubShader(PostProcessSubShader(SubShaders.SimpleLitGLESSubShader(target, /*workflowMode,*/ target.renderType, target.renderQueue, /*complexLit,*/ blendModePreserveSpecular, specularHighlights)));
111111
}
112112

113113
public override void ProcessPreviewMaterial(Material material)
@@ -194,7 +194,7 @@ public override void CollectShaderProperties(PropertyCollector collector, Genera
194194
collector.AddFloatProperty(Property.SurfaceType, (float)target.surfaceType);
195195
collector.AddFloatProperty(Property.BlendMode, (float)target.alphaMode);
196196
collector.AddFloatProperty(Property.AlphaClip, target.alphaClip ? 1.0f : 0.0f);
197-
#ifdef UNITY_2022_1_OR_NEWER
197+
#if UNITY_2022_1_OR_NEWER
198198
collector.AddFloatProperty(Property.BlendModePreserveSpecular, blendModePreserveSpecular ? 1.0f : 0.0f);
199199
#endif
200200
collector.AddFloatProperty(Property.SrcBlend, 1.0f); // always set by material inspector, ok to have incorrect values here
@@ -259,7 +259,7 @@ public override void GetPropertiesGUI(ref TargetPropertyGUIContext context, Acti
259259
// onChange();
260260
//});
261261

262-
#ifdef UNITY_2022_1_OR_NEWER
262+
#if UNITY_2022_1_OR_NEWER
263263
if (target.surfaceType == SurfaceType.Transparent)
264264
{
265265
if (target.alphaMode == AlphaMode.Alpha || target.alphaMode == AlphaMode.Additive)
@@ -332,7 +332,7 @@ protected override int ComputeMaterialNeedsUpdateHash()
332332
// return true;
333333
//}
334334

335-
#ifdef UNITY_2022_1_OR_NEWER
335+
#if UNITY_2022_1_OR_NEWER
336336
internal override void OnAfterParentTargetDeserialized()
337337
{
338338
Assert.IsNotNull(target);
@@ -360,7 +360,7 @@ internal override void OnAfterParentTargetDeserialized()
360360
static class SubShaders
361361
{
362362
// SM 4.5, compute with dots instancing
363-
#ifdef UNITY_2022_1_OR_NEWER
363+
#if UNITY_2022_1_OR_NEWER
364364
public static SubShaderDescriptor SimpleLitComputeDotsSubShader(UniversalTarget target, /*WorkflowMode workflowMode,*/ string renderType, string renderQueue, /*bool complexLit,*/ bool blendModePreserveSpecular, bool specularHighlights)
365365
#else
366366
public static SubShaderDescriptor SimpleLitComputeDotsSubShader(UniversalTarget target, /*WorkflowMode workflowMode,*/ string renderType, string renderQueue, /*bool complexLit,*/ /* bool blendModePreserveSpecular,*/ bool specularHighlights)
@@ -379,14 +379,14 @@ public static SubShaderDescriptor SimpleLitComputeDotsSubShader(UniversalTarget
379379
//if (complexLit)
380380
// result.passes.Add(LitPasses.ForwardOnly(target, workflowMode, complexLit, blendModePreserveSpecular, CoreBlockMasks.Vertex, LitBlockMasks.FragmentComplexLit, CorePragmas.DOTSForward));
381381
//else
382-
#ifdef UNITY_2022_1_OR_NEWER
382+
#if UNITY_2022_1_OR_NEWER
383383
result.passes.Add(SimpleLitPasses.Forward(target, /*workflowMode,*/ blendModePreserveSpecular, specularHighlights, CorePragmas.DOTSForward));
384384
#else
385385
result.passes.Add(SimpleLitPasses.Forward(target, /*workflowMode,*/ /*blendModePreserveSpecular,*/ specularHighlights, CorePragmas.DOTSForward));
386386
#endif
387387

388388
//if (!complexLit)
389-
#ifdef UNITY_2022_1_OR_NEWER
389+
#if UNITY_2022_1_OR_NEWER
390390
result.passes.Add(SimpleLitPasses.GBuffer(target, /*workflowMode,*/ blendModePreserveSpecular, specularHighlights));
391391
#else
392392
result.passes.Add(SimpleLitPasses.GBuffer(target, /*workflowMode,*/ /*blendModePreserveSpecular,*/ specularHighlights));
@@ -414,7 +414,7 @@ public static SubShaderDescriptor SimpleLitComputeDotsSubShader(UniversalTarget
414414
return result;
415415
}
416416

417-
#ifdef UNITY_2022_1_OR_NEWER
417+
#if UNITY_2022_1_OR_NEWER
418418
public static SubShaderDescriptor SimpleLitGLESSubShader(UniversalTarget target, /*WorkflowMode workflowMode,*/ string renderType, string renderQueue, /*bool complexLit,*/ bool blendModePreserveSpecular, bool specularHighlights)
419419
#else
420420
public static SubShaderDescriptor SimpleLitGLESSubShader(UniversalTarget target, /*WorkflowMode workflowMode,*/ string renderType, string renderQueue, /*bool complexLit,*/ /*bool blendModePreserveSpecular,*/ bool specularHighlights)
@@ -438,7 +438,7 @@ public static SubShaderDescriptor SimpleLitGLESSubShader(UniversalTarget target,
438438
//if (complexLit)
439439
// result.passes.Add(LitPasses.ForwardOnly(target, workflowMode, complexLit, blendModePreserveSpecular, CoreBlockMasks.Vertex, LitBlockMasks.FragmentComplexLit, CorePragmas.Forward));
440440
//else
441-
#ifdef UNITY_2022_1_OR_NEWER
441+
#if UNITY_2022_1_OR_NEWER
442442
result.passes.Add(SimpleLitPasses.Forward(target, /*workflowMode,*/ blendModePreserveSpecular, specularHighlights));
443443
#else
444444
result.passes.Add(SimpleLitPasses.Forward(target, /*workflowMode,*/ /*blendModePreserveSpecular,*/ specularHighlights));
@@ -476,7 +476,7 @@ static void AddWorkflowModeControlToPass(ref PassDescriptor pass, UniversalTarge
476476
//if (target.allowMaterialOverride)
477477
// pass.keywords.Add(LitDefines.SpecularSetup);
478478
//else if (workflowMode == WorkflowMode.Specular)
479-
pass.defines.Add(LitDefines.SpecularSetup, 1);
479+
pass.defines.Add(SimpleLitDefines.SpecularSetup, 1);
480480
}
481481

482482
static void AddSpecularHighlightsControlToPass(ref PassDescriptor pass, UniversalTarget target, bool specularHighlights)
@@ -495,7 +495,7 @@ static void AddReceiveShadowsControlToPass(ref PassDescriptor pass, UniversalTar
495495
pass.defines.Add(SimpleLitKeywords.ReceiveShadowsOff, 1);
496496
}
497497

498-
#ifdef UNITY_2022_1_OR_NEWER
498+
#if UNITY_2022_1_OR_NEWER
499499
public static PassDescriptor Forward(UniversalTarget target, /*WorkflowMode workflowMode,*/ bool blendModePreserveSpecular, bool specularHighlights, PragmaCollection pragmas = null)
500500
#else
501501
public static PassDescriptor Forward(UniversalTarget target, /*WorkflowMode workflowMode,*/ /*bool blendModePreserveSpecular,*/ bool specularHighlights, PragmaCollection pragmas = null)
@@ -523,7 +523,7 @@ public static PassDescriptor Forward(UniversalTarget target, /*WorkflowMode work
523523
fieldDependencies = CoreFieldDependencies.Default,
524524

525525
// Conditional State
526-
#ifdef UNITY_2022_1_OR_NEWER
526+
#if UNITY_2022_1_OR_NEWER
527527
renderStates = CoreRenderStates.UberSwitchedRenderState(target, blendModePreserveSpecular),
528528
#else
529529
renderStates = CoreRenderStates.UberSwitchedRenderState(target, /*blendModePreserveSpecular),*/
@@ -537,7 +537,7 @@ public static PassDescriptor Forward(UniversalTarget target, /*WorkflowMode work
537537
customInterpolators = CoreCustomInterpDescriptors.Common
538538
};
539539

540-
#ifdef UNITY_2022_1_OR_NEWER
540+
#if UNITY_2022_1_OR_NEWER
541541
CorePasses.AddTargetSurfaceControlsToPass(ref result, target, blendModePreserveSpecular);
542542
#else
543543
CorePasses.AddTargetSurfaceControlsToPass(ref result, target/*, blendModePreserveSpecular*/);
@@ -601,7 +601,7 @@ public static PassDescriptor Forward(UniversalTarget target, /*WorkflowMode work
601601
//}
602602

603603
// Deferred only in SM4.5, MRT not supported in GLES2
604-
#ifdef UNITY_2022_1_OR_NEWER
604+
#if UNITY_2022_1_OR_NEWER
605605
public static PassDescriptor GBuffer(UniversalTarget target, /*WorkflowMode workflowMode,*/ bool blendModePreserveSpecular, bool specularHighlights)
606606
#else
607607
public static PassDescriptor GBuffer(UniversalTarget target, /*WorkflowMode workflowMode,*/ /*bool blendModePreserveSpecular,*/ bool specularHighlights)
@@ -628,7 +628,7 @@ public static PassDescriptor GBuffer(UniversalTarget target, /*WorkflowMode work
628628
fieldDependencies = CoreFieldDependencies.Default,
629629

630630
// Conditional State
631-
#ifdef UNITY_2022_1_OR_NEWER
631+
#if UNITY_2022_1_OR_NEWER
632632
renderStates = CoreRenderStates.UberSwitchedRenderState(target, blendModePreserveSpecular),
633633
#else
634634
renderStates = CoreRenderStates.UberSwitchedRenderState(target, /*blendModePreserveSpecular),*/
@@ -642,7 +642,7 @@ public static PassDescriptor GBuffer(UniversalTarget target, /*WorkflowMode work
642642
customInterpolators = CoreCustomInterpDescriptors.Common
643643
};
644644

645-
#ifdef UNITY_2022_1_OR_NEWER
645+
#if UNITY_2022_1_OR_NEWER
646646
CorePasses.AddTargetSurfaceControlsToPass(ref result, target, blendModePreserveSpecular);
647647
#else
648648
CorePasses.AddTargetSurfaceControlsToPass(ref result, target/*, blendModePreserveSpecular*/);

README.MD

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,7 @@ This plugin simply adds a Simple Lit material (SubTarget) to the Universal targe
33
If Unity ever implements the Simple Lit master node themselves, it should be an in-place replacement for this. To the point where you'll likely even get code conflicts.
44

55
## Dependencies
6-
* This was coded to work for URP 13.1.7, but should work for any v13+. It might work for v12, but I've not tested it.
7-
* This was coded to work for Unity 2022.1, and should work for any 2022+ version. It might work for 2021.2 & 2021.3, but I've not tested it.
8-
* The changes to make it work for 2021.2+ & v12+ should be fairly minimal, if anyone wants to make that change and open a pull request.
6+
* Should work on Unity version 2021.2 or higher, with URP version 12 or higher
97

108
## How to install
119
* Go to Package Manager in Unity

0 commit comments

Comments
 (0)