[Add] All in one shader
This commit is contained in:
@@ -0,0 +1,14 @@
|
||||
namespace AllIn13DShader
|
||||
{
|
||||
public enum AllIn13DPassType
|
||||
{
|
||||
NONE = -1,
|
||||
MAIN = 0,
|
||||
OUTLINE = 1,
|
||||
SHADOW_CASTER = 2,
|
||||
DEPTH_ONLY = 3,
|
||||
DEPTH_NORMALS = 4,
|
||||
META = 5,
|
||||
FORWARD_ADD = 6,
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 01bc2741ce1ec4c4fa451accd2525fd3
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 316173
|
||||
packageName: All In 1 3D-Shader
|
||||
packageVersion: 2.72
|
||||
assetPath: Assets/Plugins/AllIn13DShader/Editor/ShadersConfigurator/Allin13DPassType.cs
|
||||
uploadId: 865720
|
||||
@@ -0,0 +1,32 @@
|
||||
using UnityEngine.Rendering;
|
||||
|
||||
namespace AllIn13DShader
|
||||
{
|
||||
[System.Serializable]
|
||||
public class BlendCommand : ShaderCommand
|
||||
{
|
||||
private const string SHADER_ENTRY_FORMAT = @"Blend {0}";
|
||||
public const string SRC_DEFINED_IN_PROPERTIES = @"[_BlendSrc]";
|
||||
public const string DST_DEFINED_IN_PROPERTIES = @"[_BlendDst]";
|
||||
|
||||
public BlendMode srcBlending = BlendMode.Zero;
|
||||
public BlendMode dstBlending = BlendMode.One;
|
||||
|
||||
protected override string GetShaderEntryFormat()
|
||||
{
|
||||
return SHADER_ENTRY_FORMAT;
|
||||
}
|
||||
|
||||
protected override string GetShaderEntryValueDefinedInProperties()
|
||||
{
|
||||
string res = $"{SRC_DEFINED_IN_PROPERTIES} {DST_DEFINED_IN_PROPERTIES}";
|
||||
return res;
|
||||
}
|
||||
|
||||
protected override string GetShaderEntryValueDefinedInCode()
|
||||
{
|
||||
string res = $"{srcBlending.ToString()} {dstBlending.ToString()}";
|
||||
return res;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 89a6cc3ecd3c6ba4a9fddf82f2c4d643
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 316173
|
||||
packageName: All In 1 3D-Shader
|
||||
packageVersion: 2.72
|
||||
assetPath: Assets/Plugins/AllIn13DShader/Editor/ShadersConfigurator/BlendCommand.cs
|
||||
uploadId: 865720
|
||||
@@ -0,0 +1,54 @@
|
||||
using UnityEngine.Rendering;
|
||||
|
||||
namespace AllIn13DShader
|
||||
{
|
||||
[System.Serializable]
|
||||
public class ColorMaskCommand : ShaderCommand
|
||||
{
|
||||
private const string SHADER_ENTRY_FORMAT = @"ColorMask {0}";
|
||||
private const string STR_DEFINED_IN_PROPERTIES = @"[_ColorMask]";
|
||||
|
||||
public ColorWriteMask colorWriteMask;
|
||||
|
||||
protected override string GetShaderEntryFormat()
|
||||
{
|
||||
return SHADER_ENTRY_FORMAT;
|
||||
}
|
||||
|
||||
protected override string GetShaderEntryValueDefinedInCode()
|
||||
{
|
||||
string res = string.Empty;
|
||||
if (colorWriteMask.HasFlag(ColorWriteMask.Red))
|
||||
{
|
||||
res += "R";
|
||||
}
|
||||
|
||||
if (colorWriteMask.HasFlag(ColorWriteMask.Green))
|
||||
{
|
||||
res += "G";
|
||||
}
|
||||
|
||||
if (colorWriteMask.HasFlag(ColorWriteMask.Blue))
|
||||
{
|
||||
res += "B";
|
||||
}
|
||||
|
||||
if (colorWriteMask.HasFlag(ColorWriteMask.Alpha))
|
||||
{
|
||||
res += "A";
|
||||
}
|
||||
|
||||
if (string.IsNullOrEmpty(res))
|
||||
{
|
||||
res = "0";
|
||||
}
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
protected override string GetShaderEntryValueDefinedInProperties()
|
||||
{
|
||||
return STR_DEFINED_IN_PROPERTIES;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5757ab12f7f268a44a4cc0c229b48c33
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 316173
|
||||
packageName: All In 1 3D-Shader
|
||||
packageVersion: 2.72
|
||||
assetPath: Assets/Plugins/AllIn13DShader/Editor/ShadersConfigurator/ColorMaskCommand.cs
|
||||
uploadId: 865720
|
||||
@@ -0,0 +1,29 @@
|
||||
using UnityEngine.Rendering;
|
||||
|
||||
namespace AllIn13DShader
|
||||
{
|
||||
[System.Serializable]
|
||||
public class CullCommand : ShaderCommand
|
||||
{
|
||||
private const string SHADER_ENTRY_FORMAT = @"Cull {0}";
|
||||
private const string STR_DEFINED_IN_PROPERTIES = @"[_CullingMode]";
|
||||
|
||||
public CullMode cullMode;
|
||||
|
||||
protected override string GetShaderEntryFormat()
|
||||
{
|
||||
return SHADER_ENTRY_FORMAT;
|
||||
}
|
||||
|
||||
protected override string GetShaderEntryValueDefinedInCode()
|
||||
{
|
||||
string res = cullMode.ToString();
|
||||
return res;
|
||||
}
|
||||
|
||||
protected override string GetShaderEntryValueDefinedInProperties()
|
||||
{
|
||||
return STR_DEFINED_IN_PROPERTIES;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9abdb070dea10dc4b8864fa179806d77
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 316173
|
||||
packageName: All In 1 3D-Shader
|
||||
packageVersion: 2.72
|
||||
assetPath: Assets/Plugins/AllIn13DShader/Editor/ShadersConfigurator/CullCommand.cs
|
||||
uploadId: 865720
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5d5a3268f1162cb44859fa63b91129fc
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &11400000
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: a88ccc1bdfb7ccb4788b6169f0e66225, type: 3}
|
||||
m_Name: ShaderPassCollection
|
||||
m_EditorClassIdentifier: AllIn13DShaderAssemebly.Editor::AllIn13DShader.ShaderPassCollection
|
||||
mainPass: {fileID: 11400000, guid: a6c4bacf92f616e46b85269e8937d62e, type: 2}
|
||||
outlinePass: {fileID: 11400000, guid: d9c53fb10098f244daafa27d2a34f6f1, type: 2}
|
||||
shadowCasterPass: {fileID: 11400000, guid: cde35f88efc3915459308ded0813329c, type: 2}
|
||||
depthOnlyPass: {fileID: 11400000, guid: 9c2d274c9d2cd92409f03df624fcc618, type: 2}
|
||||
depthNormalsPass: {fileID: 11400000, guid: 9c0a77d626be93448a5f98ecd9139d5e, type: 2}
|
||||
metaPass: {fileID: 11400000, guid: 225f11d6c5bca9e469fcc219041d7cc5, type: 2}
|
||||
forwardAdd: {fileID: 11400000, guid: 1734ded193e10df49966d25f3bd36a26, type: 2}
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 02697d53e5a592b43b0b78710cd1fd60
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 316173
|
||||
packageName: All In 1 3D-Shader
|
||||
packageVersion: 2.72
|
||||
assetPath: Assets/Plugins/AllIn13DShader/Editor/ShadersConfigurator/Shader Passes/ShaderPassCollection.asset
|
||||
uploadId: 865720
|
||||
+38
@@ -0,0 +1,38 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &11400000
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: f0d35b40778f5ef47a14fca4766c770a, type: 3}
|
||||
m_Name: ShaderPass_DepthNormals
|
||||
m_EditorClassIdentifier: AllIn13DShaderAssemebly.Editor::AllIn13DShader.ShaderPassConfig
|
||||
passType: 4
|
||||
passNameURP: DepthNormals
|
||||
passNameBIRP:
|
||||
lightModeTagURP: DepthNormals
|
||||
lightModeTagBIRP:
|
||||
passSymbol: ALLIN1_DEPTH_NORMALS_PASS
|
||||
vertexProgramName: DepthNormalsVertex
|
||||
fragmentProgramName: DepthNormalsFragment
|
||||
blendCommand:
|
||||
shaderCommandValue: 0
|
||||
srcBlending: 0
|
||||
dstBlending: 0
|
||||
cullCommand:
|
||||
shaderCommandValue: 2
|
||||
cullMode: 0
|
||||
zWriteCommand:
|
||||
shaderCommandValue: 1
|
||||
zWriteOn: 1
|
||||
zTestCommand:
|
||||
shaderCommandValue: 0
|
||||
zTestMode: 4
|
||||
colorMaskCommand:
|
||||
shaderCommandValue: 0
|
||||
colorWriteMask: 8
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9c0a77d626be93448a5f98ecd9139d5e
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 316173
|
||||
packageName: All In 1 3D-Shader
|
||||
packageVersion: 2.72
|
||||
assetPath: Assets/Plugins/AllIn13DShader/Editor/ShadersConfigurator/Shader Passes/ShaderPass_DepthNormals.asset
|
||||
uploadId: 865720
|
||||
+39
@@ -0,0 +1,39 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &11400000
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: f0d35b40778f5ef47a14fca4766c770a, type: 3}
|
||||
m_Name: ShaderPass_DepthOnly
|
||||
m_EditorClassIdentifier: AllIn13DShaderAssemebly.Editor::AllIn13DShader.ShaderPassConfig
|
||||
passType: 3
|
||||
passName: DepthOnly
|
||||
passNameURP: DepthOnly
|
||||
passNameBIRP:
|
||||
lightModeTagURP: DepthOnly
|
||||
lightModeTagBIRP:
|
||||
passSymbol: ALLIN1_DEPTH_ONLY_PASS
|
||||
vertexProgramName: DepthOnlyVertex
|
||||
fragmentProgramName: DepthOnlyFragment
|
||||
blendCommand:
|
||||
shaderCommandValue: 0
|
||||
srcBlending: 0
|
||||
dstBlending: 0
|
||||
cullCommand:
|
||||
shaderCommandValue: 2
|
||||
cullMode: 0
|
||||
zWriteCommand:
|
||||
shaderCommandValue: 1
|
||||
zWriteOn: 1
|
||||
zTestCommand:
|
||||
shaderCommandValue: 0
|
||||
zTestMode: 4
|
||||
colorMaskCommand:
|
||||
shaderCommandValue: 1
|
||||
colorWriteMask: 8
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9c2d274c9d2cd92409f03df624fcc618
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 316173
|
||||
packageName: All In 1 3D-Shader
|
||||
packageVersion: 2.72
|
||||
assetPath: Assets/Plugins/AllIn13DShader/Editor/ShadersConfigurator/Shader Passes/ShaderPass_DepthOnly.asset
|
||||
uploadId: 865720
|
||||
+41
@@ -0,0 +1,41 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &11400000
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: f0d35b40778f5ef47a14fca4766c770a, type: 3}
|
||||
m_Name: ShaderPass_ForwardAdd
|
||||
m_EditorClassIdentifier: AllIn13DShaderAssemebly.Editor::AllIn13DShader.ShaderPassConfig
|
||||
passType: 6
|
||||
passNameURP:
|
||||
passNameBIRP: FORWARD_DELTA
|
||||
lightModeTagURP:
|
||||
lightModeTagBIRP: ForwardAdd
|
||||
passSymbol: FORWARD_ADD_PASS
|
||||
vertexProgramName: BasicVertex
|
||||
fragmentProgramName: BasicFragmentAdd
|
||||
blendCommand:
|
||||
shaderCommandValue: 1
|
||||
srcBlending: 1
|
||||
dstBlending: 1
|
||||
cullCommand:
|
||||
shaderCommandValue: 2
|
||||
cullMode: 0
|
||||
zWriteCommand:
|
||||
shaderCommandValue: 1
|
||||
zWriteOn: 0
|
||||
zTestCommand:
|
||||
shaderCommandValue: 1
|
||||
zTestMode: 4
|
||||
colorMaskCommand:
|
||||
shaderCommandValue: 0
|
||||
colorWriteMask: 0
|
||||
extraPragmaLinesBIRP: "#pragma multi_compile_fwdadd_fullshadows\r\n#pragma multi_compile_fog\r\n#pragma
|
||||
multi_compile_instancing\r\n#pragma multi_compile _ DOTS_INSTANCING_ON\r"
|
||||
extraPragmaLinesURP:
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1734ded193e10df49966d25f3bd36a26
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 316173
|
||||
packageName: All In 1 3D-Shader
|
||||
packageVersion: 2.72
|
||||
assetPath: Assets/Plugins/AllIn13DShader/Editor/ShadersConfigurator/Shader Passes/ShaderPass_ForwardAdd.asset
|
||||
uploadId: 865720
|
||||
+47
@@ -0,0 +1,47 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &11400000
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: f0d35b40778f5ef47a14fca4766c770a, type: 3}
|
||||
m_Name: ShaderPass_Main
|
||||
m_EditorClassIdentifier: AllIn13DShaderAssemebly.Editor::AllIn13DShader.ShaderPassConfig
|
||||
passType: 0
|
||||
passNameURP: AllIn13D_MainPass_URP
|
||||
passNameBIRP: AllIn13D_Forward_BIRP
|
||||
lightModeTagURP: UniversalForward
|
||||
lightModeTagBIRP: ForwardBase
|
||||
passSymbol: ALLIN1_FORWARD_PASS
|
||||
vertexProgramName: BasicVertex
|
||||
fragmentProgramName: BasicFragment
|
||||
blendCommand:
|
||||
shaderCommandValue: 2
|
||||
srcBlending: 0
|
||||
dstBlending: 0
|
||||
cullCommand:
|
||||
shaderCommandValue: 2
|
||||
cullMode: 0
|
||||
zWriteCommand:
|
||||
shaderCommandValue: 2
|
||||
zWriteOn: 0
|
||||
zTestCommand:
|
||||
shaderCommandValue: 2
|
||||
zTestMode: 0
|
||||
colorMaskCommand:
|
||||
shaderCommandValue: 2
|
||||
colorWriteMask: 0
|
||||
extraPragmaLinesBIRP: '#pragma multi_compile_fwdbase
|
||||
|
||||
#pragma multi_compile_fog
|
||||
|
||||
#pragma
|
||||
multi_compile_instancing
|
||||
|
||||
#pragma multi_compile _ DOTS_INSTANCING_ON'
|
||||
extraPragmaLinesURP:
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
fileFormatVersion: 2
|
||||
guid: a6c4bacf92f616e46b85269e8937d62e
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 316173
|
||||
packageName: All In 1 3D-Shader
|
||||
packageVersion: 2.72
|
||||
assetPath: Assets/Plugins/AllIn13DShader/Editor/ShadersConfigurator/Shader Passes/ShaderPass_Main.asset
|
||||
uploadId: 865720
|
||||
+39
@@ -0,0 +1,39 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &11400000
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: f0d35b40778f5ef47a14fca4766c770a, type: 3}
|
||||
m_Name: ShaderPass_Meta
|
||||
m_EditorClassIdentifier: AllIn13DShaderAssemebly.Editor::AllIn13DShader.ShaderPassConfig
|
||||
passType: 5
|
||||
passName: Meta
|
||||
passNameURP: Meta
|
||||
passNameBIRP:
|
||||
lightModeTagURP: Meta
|
||||
lightModeTagBIRP:
|
||||
passSymbol: META_PASS
|
||||
vertexProgramName: AllIn1VertexMeta
|
||||
fragmentProgramName: AllIn1FragmentMeta
|
||||
blendCommand:
|
||||
shaderCommandValue: 0
|
||||
srcBlending: 0
|
||||
dstBlending: 0
|
||||
cullCommand:
|
||||
shaderCommandValue: 1
|
||||
cullMode: 0
|
||||
zWriteCommand:
|
||||
shaderCommandValue: 0
|
||||
zWriteOn: 0
|
||||
zTestCommand:
|
||||
shaderCommandValue: 0
|
||||
zTestMode: 4
|
||||
colorMaskCommand:
|
||||
shaderCommandValue: 0
|
||||
colorWriteMask: 0
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 225f11d6c5bca9e469fcc219041d7cc5
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 316173
|
||||
packageName: All In 1 3D-Shader
|
||||
packageVersion: 2.72
|
||||
assetPath: Assets/Plugins/AllIn13DShader/Editor/ShadersConfigurator/Shader Passes/ShaderPass_Meta.asset
|
||||
uploadId: 865720
|
||||
+41
@@ -0,0 +1,41 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &11400000
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: f0d35b40778f5ef47a14fca4766c770a, type: 3}
|
||||
m_Name: ShaderPass_Outline
|
||||
m_EditorClassIdentifier: AllIn13DShaderAssemebly.Editor::AllIn13DShader.ShaderPassConfig
|
||||
passType: 1
|
||||
passNameURP: AllIn13D_Outline_URP
|
||||
passNameBIRP: AllIn13D_Outline
|
||||
lightModeTagURP: OutlinePass
|
||||
lightModeTagBIRP:
|
||||
passSymbol: ALLIN1_OUTLINE_PASS
|
||||
vertexProgramName: OutlinePass_Vertex
|
||||
fragmentProgramName: OutlinePass_Fragment
|
||||
blendCommand:
|
||||
shaderCommandValue: 2
|
||||
srcBlending: 0
|
||||
dstBlending: 0
|
||||
cullCommand:
|
||||
shaderCommandValue: 1
|
||||
cullMode: 1
|
||||
zWriteCommand:
|
||||
shaderCommandValue: 0
|
||||
zWriteOn: 0
|
||||
zTestCommand:
|
||||
shaderCommandValue: 0
|
||||
zTestMode: 0
|
||||
colorMaskCommand:
|
||||
shaderCommandValue: 0
|
||||
colorWriteMask: 0
|
||||
extraPragmaLinesBIRP: "#pragma multi_compile_instancing\r\n#pragma multi_compile_fog\r\n#pragma
|
||||
multi_compile _ DOTS_INSTANCING_ON\r"
|
||||
extraPragmaLinesURP:
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d9c53fb10098f244daafa27d2a34f6f1
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 316173
|
||||
packageName: All In 1 3D-Shader
|
||||
packageVersion: 2.72
|
||||
assetPath: Assets/Plugins/AllIn13DShader/Editor/ShadersConfigurator/Shader Passes/ShaderPass_Outline.asset
|
||||
uploadId: 865720
|
||||
+41
@@ -0,0 +1,41 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &11400000
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: f0d35b40778f5ef47a14fca4766c770a, type: 3}
|
||||
m_Name: ShaderPass_ShadowCaster
|
||||
m_EditorClassIdentifier: AllIn13DShaderAssemebly.Editor::AllIn13DShader.ShaderPassConfig
|
||||
passType: 2
|
||||
passNameURP: AllIn13D_ShadowCaster_URP
|
||||
passNameBIRP: AllIn13D_ShadowCaster
|
||||
lightModeTagURP: ShadowCaster
|
||||
lightModeTagBIRP: ShadowCaster
|
||||
passSymbol: SHADOW_CASTER_PASS
|
||||
vertexProgramName: BasicVertexShadowCaster
|
||||
fragmentProgramName: BasicFragmentShadowCaster
|
||||
blendCommand:
|
||||
shaderCommandValue: 0
|
||||
srcBlending: 0
|
||||
dstBlending: 0
|
||||
cullCommand:
|
||||
shaderCommandValue: 2
|
||||
cullMode: 1
|
||||
zWriteCommand:
|
||||
shaderCommandValue: 1
|
||||
zWriteOn: 1
|
||||
zTestCommand:
|
||||
shaderCommandValue: 1
|
||||
zTestMode: 4
|
||||
colorMaskCommand:
|
||||
shaderCommandValue: 1
|
||||
colorWriteMask: 0
|
||||
extraPragmaLinesBIRP: "#pragma multi_compile_instancing\r\n#pragma multi_compile_shadowcaster\r\n#pragma
|
||||
multi_compile _ DOTS_INSTANCING_ON\r"
|
||||
extraPragmaLinesURP:
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
fileFormatVersion: 2
|
||||
guid: cde35f88efc3915459308ded0813329c
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 316173
|
||||
packageName: All In 1 3D-Shader
|
||||
packageVersion: 2.72
|
||||
assetPath: Assets/Plugins/AllIn13DShader/Editor/ShadersConfigurator/Shader Passes/ShaderPass_ShadowCaster.asset
|
||||
uploadId: 865720
|
||||
@@ -0,0 +1,38 @@
|
||||
namespace AllIn13DShader
|
||||
{
|
||||
public abstract class ShaderCommand
|
||||
{
|
||||
public ShaderCommandValue shaderCommandValue;
|
||||
|
||||
public string GetShaderEntry()
|
||||
{
|
||||
string res = string.Empty;
|
||||
string shaderEntryValue = string.Empty;
|
||||
|
||||
switch (shaderCommandValue)
|
||||
{
|
||||
case ShaderCommandValue.DEFINED_IN_CODE:
|
||||
shaderEntryValue = GetShaderEntryValueDefinedInCode();
|
||||
break;
|
||||
case ShaderCommandValue.DEFINED_IN_PROPERTIES:
|
||||
shaderEntryValue = GetShaderEntryValueDefinedInProperties();
|
||||
break;
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(shaderEntryValue))
|
||||
{
|
||||
string format = GetShaderEntryFormat();
|
||||
res = string.Format(format, shaderEntryValue);
|
||||
}
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
protected abstract string GetShaderEntryFormat();
|
||||
|
||||
protected abstract string GetShaderEntryValueDefinedInProperties();
|
||||
|
||||
protected abstract string GetShaderEntryValueDefinedInCode();
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 37bf42a5bee9d604ba009aafc01f6ad3
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 316173
|
||||
packageName: All In 1 3D-Shader
|
||||
packageVersion: 2.72
|
||||
assetPath: Assets/Plugins/AllIn13DShader/Editor/ShadersConfigurator/ShaderCommand.cs
|
||||
uploadId: 865720
|
||||
@@ -0,0 +1,9 @@
|
||||
namespace AllIn13DShader
|
||||
{
|
||||
public enum ShaderCommandValue
|
||||
{
|
||||
DEFAULT = 0,
|
||||
DEFINED_IN_CODE = 1,
|
||||
DEFINED_IN_PROPERTIES = 2,
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
fileFormatVersion: 2
|
||||
guid: fe27806e63ec1bd48a18efbdb9c344ca
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 316173
|
||||
packageName: All In 1 3D-Shader
|
||||
packageVersion: 2.72
|
||||
assetPath: Assets/Plugins/AllIn13DShader/Editor/ShadersConfigurator/ShaderCommandValue.cs
|
||||
uploadId: 865720
|
||||
@@ -0,0 +1,48 @@
|
||||
using UnityEngine;
|
||||
|
||||
namespace AllIn13DShader
|
||||
{
|
||||
[CreateAssetMenu(menuName = "AllIn13DShader/Shader Pass Collection")]
|
||||
public class ShaderPassCollection : ScriptableObject
|
||||
{
|
||||
public ShaderPassConfig mainPass;
|
||||
public ShaderPassConfig outlinePass;
|
||||
public ShaderPassConfig shadowCasterPass;
|
||||
public ShaderPassConfig depthOnlyPass;
|
||||
public ShaderPassConfig depthNormalsPass;
|
||||
public ShaderPassConfig metaPass;
|
||||
public ShaderPassConfig forwardAdd;
|
||||
|
||||
public ShaderPassConfig GetShaderPassConfig(AllIn13DPassType passType)
|
||||
{
|
||||
ShaderPassConfig res = null;
|
||||
|
||||
switch (passType)
|
||||
{
|
||||
case AllIn13DPassType.MAIN:
|
||||
res = mainPass;
|
||||
break;
|
||||
case AllIn13DPassType.OUTLINE:
|
||||
res = outlinePass;
|
||||
break;
|
||||
case AllIn13DPassType.SHADOW_CASTER:
|
||||
res = shadowCasterPass;
|
||||
break;
|
||||
case AllIn13DPassType.DEPTH_ONLY:
|
||||
res = depthOnlyPass;
|
||||
break;
|
||||
case AllIn13DPassType.DEPTH_NORMALS:
|
||||
res = depthNormalsPass;
|
||||
break;
|
||||
case AllIn13DPassType.META:
|
||||
res = metaPass;
|
||||
break;
|
||||
case AllIn13DPassType.FORWARD_ADD:
|
||||
res = forwardAdd;
|
||||
break;
|
||||
}
|
||||
|
||||
return res;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
fileFormatVersion: 2
|
||||
guid: a88ccc1bdfb7ccb4788b6169f0e66225
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 316173
|
||||
packageName: All In 1 3D-Shader
|
||||
packageVersion: 2.72
|
||||
assetPath: Assets/Plugins/AllIn13DShader/Editor/ShadersConfigurator/ShaderPassCollection.cs
|
||||
uploadId: 865720
|
||||
@@ -0,0 +1,385 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using UnityEngine;
|
||||
|
||||
namespace AllIn13DShader
|
||||
{
|
||||
[CreateAssetMenu(menuName = "AllIn13DShader/Shader Pass Config")]
|
||||
public class ShaderPassConfig : ScriptableObject
|
||||
{
|
||||
private const string STENCIL_BLOCK_OUTLINE = @"
|
||||
Stencil
|
||||
{
|
||||
Ref [_StencilRef]
|
||||
Comp [_OutlineMode]
|
||||
}";
|
||||
|
||||
private const string STENCIL_BLOCK_MAIN_PASS = @"
|
||||
Stencil
|
||||
{
|
||||
Ref [_StencilRef]
|
||||
Comp Always
|
||||
Pass Replace
|
||||
}";
|
||||
|
||||
private const string URP_PASS_SYMBOL = "URP_PASS";
|
||||
private const string BIRP_PASS_SYMBOL = "BIRP_PASS";
|
||||
|
||||
|
||||
private const string EFFECT_LIBRARY_PATH_FORMAT = @"Shaders/ShaderLibrary/{0}.hlsl";
|
||||
private const string INCLUDE_SHADER_ENTRY_FORMAT = @"#include ""{0}""";
|
||||
private const string INCLUDE_WITH_PRAGMA_SHADER_ENTRY_FORMAT = @"#include_with_pragmas ""{0}""";
|
||||
private const string DEFINE_SHADER_ENTRY_FORMAT = @"#define {0}";
|
||||
private const string LIGHT_MODE_ENTRY_FORMAT = @"""LightMode""=""{0}""";
|
||||
|
||||
public AllIn13DPassType passType;
|
||||
|
||||
[Header("Pass Name")]
|
||||
public string passNameURP;
|
||||
public string passNameBIRP;
|
||||
|
||||
[Header("Light Mode")]
|
||||
public string lightModeTagURP;
|
||||
public string lightModeTagBIRP;
|
||||
|
||||
[Header("Pass Symbol")]
|
||||
public string passSymbol;
|
||||
|
||||
[Header("Vertex/Fragment Program")]
|
||||
public string vertexProgramName;
|
||||
public string fragmentProgramName;
|
||||
|
||||
[Header("Command")]
|
||||
public BlendCommand blendCommand;
|
||||
public CullCommand cullCommand;
|
||||
public ZWriteCommand zWriteCommand;
|
||||
public ZTestCommand zTestCommand;
|
||||
public ColorMaskCommand colorMaskCommand;
|
||||
|
||||
[Header("Extra Pragma - BIRP")]
|
||||
[TextArea]public string extraPragmaLinesBIRP;
|
||||
|
||||
[Header("Extra Pragma - URP")]
|
||||
[TextArea] public string extraPragmaLinesURP;
|
||||
|
||||
public string GetHelperLibraryPath(RenderPipelineEnum renderPipeline, string shaderFolder)
|
||||
{
|
||||
string res;
|
||||
switch (renderPipeline)
|
||||
{
|
||||
case RenderPipelineEnum.BIRP:
|
||||
res = Constants.BIRP_HELPER_PATH;
|
||||
break;
|
||||
case RenderPipelineEnum.URP:
|
||||
res = Constants.URP_HELPER_PATH;
|
||||
break;
|
||||
default:
|
||||
res = string.Empty;
|
||||
break;
|
||||
}
|
||||
|
||||
res = ConvertPathToRelative(res, shaderFolder);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
private string GetPipelineFeatuersLibrary(RenderPipelineEnum renderPipeline, string shaderFolder)
|
||||
{
|
||||
string res = string.Empty;
|
||||
|
||||
if (renderPipeline == RenderPipelineEnum.URP)
|
||||
{
|
||||
res = "Shaders/ShaderLibrary/AllIn13DShader_FeaturesURP.hlsl";
|
||||
}
|
||||
|
||||
res = ConvertPathToRelative(res, shaderFolder);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
private string GetPipelineFeaturesDefinesPath(RenderPipelineEnum renderPipeline, string shaderFolder)
|
||||
{
|
||||
string res = string.Empty;
|
||||
|
||||
if (renderPipeline == RenderPipelineEnum.URP)
|
||||
{
|
||||
res = "Shaders/ShaderLibrary/AllIn13DShader_FeaturesURP_Defines.hlsl";
|
||||
}
|
||||
|
||||
res = ConvertPathToRelative(res, shaderFolder);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
private string GetPipelinePassSymbol(RenderPipelineEnum renderPipeline)
|
||||
{
|
||||
string res = string.Empty;
|
||||
|
||||
switch (renderPipeline)
|
||||
{
|
||||
case RenderPipelineEnum.BIRP:
|
||||
res = BIRP_PASS_SYMBOL;
|
||||
break;
|
||||
case RenderPipelineEnum.URP:
|
||||
res = URP_PASS_SYMBOL;
|
||||
break;
|
||||
}
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
public string GetStencilBlockShaderEntry(EffectsProfile effectsProfile)
|
||||
{
|
||||
string res = string.Empty;
|
||||
|
||||
|
||||
if (passType == AllIn13DPassType.OUTLINE)
|
||||
{
|
||||
res = STENCIL_BLOCK_OUTLINE;
|
||||
}
|
||||
else if(passType == AllIn13DPassType.MAIN)
|
||||
{
|
||||
res = STENCIL_BLOCK_MAIN_PASS;
|
||||
}
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
public string GetPipelineFeaturesDefinesShaderEntry(RenderPipelineEnum renderPipeline, string shaderFolder)
|
||||
{
|
||||
string definesFilePath = GetPipelineFeaturesDefinesPath(renderPipeline, shaderFolder);
|
||||
|
||||
string res = CreateIncludeShaderEntry(definesFilePath);
|
||||
return res;
|
||||
}
|
||||
|
||||
public string GetPipelineFeaturesLibraryShaderEntry(RenderPipelineEnum renderPipeline, string shaderFolder)
|
||||
{
|
||||
string libraryPath = GetPipelineFeatuersLibrary(renderPipeline, shaderFolder);
|
||||
string res = GetIncludeWithPragmaShaderEntry(libraryPath);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
public string GetPipelinePassSymbolShaderEntry(RenderPipelineEnum renderPipeline)
|
||||
{
|
||||
string pipelineSymbol = GetPipelinePassSymbol(renderPipeline);
|
||||
string res = string.Format(DEFINE_SHADER_ENTRY_FORMAT, pipelineSymbol);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
public string GetIncludeWithPragmaShaderEntry(string path)
|
||||
{
|
||||
string res = string.Format(INCLUDE_WITH_PRAGMA_SHADER_ENTRY_FORMAT, path);
|
||||
return res;
|
||||
}
|
||||
|
||||
public string CreateIncludeShaderEntry(string value)
|
||||
{
|
||||
string res = string.Format(INCLUDE_SHADER_ENTRY_FORMAT, value);
|
||||
return res;
|
||||
}
|
||||
|
||||
public string GetPassSymbolShaderEntry()
|
||||
{
|
||||
string res = string.Format(DEFINE_SHADER_ENTRY_FORMAT, passSymbol);
|
||||
return res;
|
||||
}
|
||||
|
||||
public string GetLightLibraryShaderEntry(string shaderFolder)
|
||||
{
|
||||
string res = ConvertPathToRelative("Shaders/ShaderLibrary/AllIn13DShaderLight.hlsl", shaderFolder);
|
||||
res = CreateIncludeShaderEntry(res);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
public string GetCoreLibraryShaderEntry(string shaderFolder)
|
||||
{
|
||||
string res = ConvertPathToRelative("Shaders/ShaderLibrary/AllIn13DShaderCore.hlsl", shaderFolder);
|
||||
res = CreateIncludeShaderEntry(res);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
public string GetCommonStructsShaderEntry(string shaderFolder)
|
||||
{
|
||||
string res = ConvertPathToRelative("Shaders/ShaderLibrary/AllIn13DShader_CommonStructs.hlsl", shaderFolder);
|
||||
res = CreateIncludeShaderEntry(res);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
public string GetCommonFunctionsShaderEntry(string shaderFolder)
|
||||
{
|
||||
string res = ConvertPathToRelative("Shaders/ShaderLibrary/AllIn13DShader_CommonFunctions.hlsl", shaderFolder);
|
||||
res = CreateIncludeShaderEntry(res);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
public string GetShaderFeaturesLibraryShaderEntry(string shaderFolder)
|
||||
{
|
||||
string res = ConvertPathToRelative("Shaders/ShaderLibrary/AllIn13DShader_Features.hlsl", shaderFolder);
|
||||
res = GetIncludeWithPragmaShaderEntry(res);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
public string GetLightModeShaderEntry(RenderPipelineEnum renderPipeline)
|
||||
{
|
||||
string res = string.Empty;
|
||||
string lightTag = string.Empty;
|
||||
if(renderPipeline == RenderPipelineEnum.BIRP)
|
||||
{
|
||||
lightTag = lightModeTagBIRP;
|
||||
}
|
||||
else if(renderPipeline == RenderPipelineEnum.URP)
|
||||
{
|
||||
lightTag = lightModeTagURP;
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(lightTag))
|
||||
{
|
||||
res = string.Format(LIGHT_MODE_ENTRY_FORMAT, lightTag);
|
||||
}
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
public static string GetAllIn1FeaturesEntries(List<EffectsProfileEntry> enabledEntries)
|
||||
{
|
||||
string res = string.Empty;
|
||||
for (int i = 0; i < enabledEntries.Count; i++)
|
||||
{
|
||||
res = AppendEntryKeywords(res, enabledEntries[i]);
|
||||
}
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
public static string AppendEntryKeywords(string input, EffectsProfileEntry effectProfileEntry)
|
||||
{
|
||||
string res = input;
|
||||
|
||||
List<string> keywordsEnabled = new List<string>();
|
||||
effectProfileEntry.CollectKeywords(keywordsEnabled);
|
||||
|
||||
for (int i = 0; i < keywordsEnabled.Count; i++)
|
||||
{
|
||||
res += CreateDefineEntry(keywordsEnabled[i]);
|
||||
res += "\n";
|
||||
}
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
|
||||
private string ConvertPathToRelative(string localPath, string shaderFolder)
|
||||
{
|
||||
string res = Path.Combine(GlobalConfiguration.GetRootPluginFolderPath(), localPath);
|
||||
res = Path.GetRelativePath(shaderFolder, res);
|
||||
|
||||
res = res.Replace("\\", "/");
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
public string GetPassFilePath(string shaderFolder)
|
||||
{
|
||||
string res = string.Empty;
|
||||
|
||||
switch (passType)
|
||||
{
|
||||
case AllIn13DPassType.MAIN:
|
||||
res = Constants.MAIN_PASS_PATH;
|
||||
break;
|
||||
case AllIn13DPassType.DEPTH_NORMALS:
|
||||
res = Constants.DEPTH_NORMALS_PASS_PATH;
|
||||
break;
|
||||
case AllIn13DPassType.DEPTH_ONLY:
|
||||
res = Constants.DEPTH_ONLY_PASS_PATH;
|
||||
break;
|
||||
case AllIn13DPassType.FORWARD_ADD:
|
||||
res = Constants.LIGHT_ADD_PASS_PATH;
|
||||
break;
|
||||
case AllIn13DPassType.META:
|
||||
res = Constants.META_PASS_PATH;
|
||||
break;
|
||||
case AllIn13DPassType.NONE:
|
||||
res = "UNDEFINED";
|
||||
break;
|
||||
case AllIn13DPassType.OUTLINE:
|
||||
res = Constants.OUTLINE_PASS_PATH;
|
||||
break;
|
||||
case AllIn13DPassType.SHADOW_CASTER:
|
||||
res = Constants.SHADOW_CASTER_PASS_PATH;
|
||||
break;
|
||||
}
|
||||
|
||||
res = ConvertPathToRelative(res, shaderFolder);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
public static string CreateDefineEntry(string symbol)
|
||||
{
|
||||
string res = string.Format(DEFINE_SHADER_ENTRY_FORMAT, symbol);
|
||||
return res;
|
||||
}
|
||||
|
||||
public string GetPassName(RenderPipelineEnum renderPipeline)
|
||||
{
|
||||
string res = passNameBIRP;
|
||||
if(renderPipeline == RenderPipelineEnum.URP)
|
||||
{
|
||||
res = passNameURP;
|
||||
}
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
public string GetEffectsLibrariesShaderEntry(EffectsProfile effectsProfile, string shaderFolder)
|
||||
{
|
||||
string res = string.Empty;
|
||||
|
||||
List<EffectsProfileGroup> enabledEffectGroups = effectsProfile.GetEnabledEffectsGroups();
|
||||
|
||||
for(int i = 0; i < enabledEffectGroups.Count; i++)
|
||||
{
|
||||
string libraryFileName = enabledEffectGroups[i].effectGroupConfig.libraryFileName;
|
||||
|
||||
if (!string.IsNullOrEmpty(libraryFileName))
|
||||
{
|
||||
string path = string.Format(EFFECT_LIBRARY_PATH_FORMAT, libraryFileName);
|
||||
path = ConvertPathToRelative(path, shaderFolder);
|
||||
|
||||
string entry = CreateIncludeShaderEntry(path);
|
||||
|
||||
res += entry;
|
||||
res += "\n";
|
||||
}
|
||||
}
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
public string GetExtraPragmaLines(RenderPipelineEnum renderPipeline)
|
||||
{
|
||||
string res = string.Empty;
|
||||
|
||||
if(renderPipeline == RenderPipelineEnum.BIRP)
|
||||
{
|
||||
res = extraPragmaLinesBIRP;
|
||||
}
|
||||
else if(renderPipeline == RenderPipelineEnum.URP)
|
||||
{
|
||||
res = extraPragmaLinesURP;
|
||||
}
|
||||
|
||||
return res;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f0d35b40778f5ef47a14fca4766c770a
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 316173
|
||||
packageName: All In 1 3D-Shader
|
||||
packageVersion: 2.72
|
||||
assetPath: Assets/Plugins/AllIn13DShader/Editor/ShadersConfigurator/ShaderPassConfig.cs
|
||||
uploadId: 865720
|
||||
@@ -0,0 +1,61 @@
|
||||
using UnityEngine.Rendering;
|
||||
|
||||
namespace AllIn13DShader
|
||||
{
|
||||
[System.Serializable]
|
||||
public class ZTestCommand : ShaderCommand
|
||||
{
|
||||
private const string SHADER_ENTRY_FORMAT = @"ZTest {0}";
|
||||
private const string STR_DEFINED_IN_PROPERTIES = @"[_ZTestMode]";
|
||||
|
||||
public CompareFunction zTestMode;
|
||||
|
||||
protected override string GetShaderEntryFormat()
|
||||
{
|
||||
return SHADER_ENTRY_FORMAT;
|
||||
}
|
||||
|
||||
protected override string GetShaderEntryValueDefinedInCode()
|
||||
{
|
||||
string res = string.Empty;
|
||||
|
||||
switch (zTestMode)
|
||||
{
|
||||
case CompareFunction.Disabled:
|
||||
res = "Disabled";
|
||||
break;
|
||||
case CompareFunction.Never:
|
||||
res = "Never";
|
||||
break;
|
||||
case CompareFunction.Less:
|
||||
res = "Less";
|
||||
break;
|
||||
case CompareFunction.Equal:
|
||||
res = "Equal";
|
||||
break;
|
||||
case CompareFunction.LessEqual:
|
||||
res = "LEqual";
|
||||
break;
|
||||
case CompareFunction.Greater:
|
||||
res = "Greater";
|
||||
break;
|
||||
case CompareFunction.NotEqual:
|
||||
res = "NotEqual";
|
||||
break;
|
||||
case CompareFunction.GreaterEqual:
|
||||
res = "GEqual";
|
||||
break;
|
||||
case CompareFunction.Always:
|
||||
res = "Always";
|
||||
break;
|
||||
}
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
protected override string GetShaderEntryValueDefinedInProperties()
|
||||
{
|
||||
return STR_DEFINED_IN_PROPERTIES;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c3315b3dcfcd94b47a7e672699f6fab8
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 316173
|
||||
packageName: All In 1 3D-Shader
|
||||
packageVersion: 2.72
|
||||
assetPath: Assets/Plugins/AllIn13DShader/Editor/ShadersConfigurator/ZTestCommand.cs
|
||||
uploadId: 865720
|
||||
@@ -0,0 +1,27 @@
|
||||
namespace AllIn13DShader
|
||||
{
|
||||
[System.Serializable]
|
||||
public class ZWriteCommand : ShaderCommand
|
||||
{
|
||||
private const string SHADER_ENTRY_FORMAT = @"ZWrite {0}";
|
||||
private const string STR_DEFINED_IN_PROPERTIES = @"[_ZWrite]";
|
||||
|
||||
public bool zWriteOn;
|
||||
|
||||
protected override string GetShaderEntryFormat()
|
||||
{
|
||||
return SHADER_ENTRY_FORMAT;
|
||||
}
|
||||
|
||||
protected override string GetShaderEntryValueDefinedInCode()
|
||||
{
|
||||
string res = zWriteOn ? "On" : "Off";
|
||||
return res;
|
||||
}
|
||||
|
||||
protected override string GetShaderEntryValueDefinedInProperties()
|
||||
{
|
||||
return STR_DEFINED_IN_PROPERTIES;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f5a579664b289374ba56c3d9cbc06664
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 316173
|
||||
packageName: All In 1 3D-Shader
|
||||
packageVersion: 2.72
|
||||
assetPath: Assets/Plugins/AllIn13DShader/Editor/ShadersConfigurator/ZWriteCommand.cs
|
||||
uploadId: 865720
|
||||
Reference in New Issue
Block a user