[unity] Added 'Outline Shaders URP OutlinePass' example scene for Outline shader option commit fef6658, see #1824.

This commit is contained in:
Harald Csaszar 2026-02-06 21:49:02 +01:00
parent 20d724bc03
commit ab79c143c3
11 changed files with 2496 additions and 45 deletions

View File

@ -8,8 +8,8 @@ Material:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: raptor_Material_Outline
m_Shader: {fileID: 4800000, guid: 0c26b8f3f8867ba41ac82baf19d8ff91, type: 3}
m_ShaderKeywords: _USE8NEIGHBOURHOOD_ON
m_Shader: {fileID: 4800000, guid: debb879e3f89c5f41ac0ab285486e162, type: 3}
m_ShaderKeywords: _STRAIGHT_ALPHA_INPUT _USE8NEIGHBOURHOOD_ON
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
@ -29,14 +29,21 @@ Material:
m_Offset: {x: 0, y: 0}
m_Floats:
- _Cutoff: 0.1
- _Fill: 0
- _LightAffectsAdditive: 0
- _OutlineMipLevel: 0
- _OutlineOpaqueAlpha: 1
- _OutlineReferenceTexWidth: 1024
- _OutlineSmoothness: 1
- _OutlineWidth: 1.77
- _StencilComp: 8
- _StencilRef: 1
- _StraightAlphaInput: 0
- _StraightAlphaInput: 1
- _ThresholdEnd: 0.25
- _TintBlack: 0
- _Use8Neighbourhood: 1
- _UseScreenSpaceOutlineWidth: 0
m_Colors:
- _Black: {r: 0, g: 0, b: 0, a: 0}
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _OutlineColor: {r: 1, g: 1, b: 0, a: 1}

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 48fccf41ebe7c7e4e80e2698562616c8
guid: 614172e5bb1f5bd40b5b1e30f8554d63
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0

View File

@ -0,0 +1,45 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: raptor_Material_OutlineOnly
m_Shader: {fileID: 4800000, guid: 0c26b8f3f8867ba41ac82baf19d8ff91, type: 3}
m_ShaderKeywords: _USE8NEIGHBOURHOOD_ON
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _MainTex:
m_Texture: {fileID: 2800000, guid: 6c8d8b7e5bcbeb64b84f7a4d23de94dc, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MaskTex:
m_Texture: {fileID: 2800000, guid: 4a7cf7f7c7f74664f8514d290b5f4dd1, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _Cutoff: 0.1
- _Fill: 0
- _OutlineMipLevel: 0
- _OutlineOpaqueAlpha: 1
- _OutlineReferenceTexWidth: 1024
- _OutlineSmoothness: 1
- _OutlineWidth: 1.77
- _StencilComp: 8
- _StencilRef: 1
- _StraightAlphaInput: 0
- _ThresholdEnd: 0.25
- _Use8Neighbourhood: 1
- _UseScreenSpaceOutlineWidth: 0
m_Colors:
- _OutlineColor: {r: 1, g: 1, b: 0, a: 1}

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 48fccf41ebe7c7e4e80e2698562616c8
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@ -8,15 +8,17 @@ Material:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: stretchyman_Material_Outline
m_Shader: {fileID: 4800000, guid: 0c26b8f3f8867ba41ac82baf19d8ff91, type: 3}
m_ShaderKeywords: _ALPHAPREMULTIPLY_ON _NORMALMAP _RECEIVE_SHADOWS_OFF _USE8NEIGHBOURHOOD_ON
m_Shader: {fileID: 4800000, guid: d8278e30a6ef40244a03e6b6227ba490, type: 3}
m_ShaderKeywords: _ALPHAPREMULTIPLY_VERTEX_ONLY _EMISSION _FIXED_NORMALS_VIEWSPACE
_NORMALMAP _USE8NEIGHBOURHOOD_ON
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
m_CustomRenderQueue: 3000
stringTagMap:
AlphaDepth: true
IGNOREPROJECTOR: true
RenderType: Transparent
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
@ -33,12 +35,8 @@ Material:
m_Texture: {fileID: 2800000, guid: 0d1cf8a59ac52394084f22b49e53548e, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DiffuseRamp:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Texture: {fileID: 2800000, guid: 271553eea6793644fa41df10397ac014, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
@ -49,10 +47,6 @@ Material:
m_Texture: {fileID: 2800000, guid: b61a8e1e7baba4d47b417e8b7cc852e0, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- PixelSnap: 0
- _BlendAmount: 0
@ -62,13 +56,13 @@ Material:
- _CustomRenderQueue: 0
- _Cutoff: 0.1
- _DstBlend: 10
- _EmissionPower: 2
- _EmissionPower: 0.43
- _EnableExternalAlpha: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _Fill: 0
- _Hue: 0
- _Metallic: 0
- _LightAffectsAdditive: 0
- _OutlineMipLevel: 0
- _OutlineOpaqueAlpha: 1
- _OutlineReferenceTexWidth: 1024
- _OutlineSmoothness: 1
- _OutlineWidth: 3
@ -81,11 +75,14 @@ Material:
- _StencilRef: 1
- _StraightAlphaInput: 0
- _ThresholdEnd: 0.25
- _TintBlack: 0
- _Use8Neighbourhood: 1
- _UseScreenSpaceOutlineWidth: 0
- _ZWrite: 0
m_Colors:
- _Black: {r: 0, g: 0, b: 0, a: 0}
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 0}
- _EmissionColor: {r: 1, g: 0, b: 0, a: 0}
- _FixedNormal: {r: 0, g: 0, b: 1, a: 1}
- _OutlineColor: {r: 1, g: 1, b: 0, a: 1}
- _OverlayColor: {r: 0, g: 0, b: 0, a: 0}

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: c556bf10e5e5267429938469800c7c31
guid: 28e8f6e0aa2b8c842b6a50e5843f2536
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0

View File

@ -0,0 +1,95 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: stretchyman_Material_OutlineOnly
m_Shader: {fileID: 4800000, guid: 0c26b8f3f8867ba41ac82baf19d8ff91, type: 3}
m_ShaderKeywords: _ALPHAPREMULTIPLY_ON _NORMALMAP _RECEIVE_SHADOWS_OFF _USE8NEIGHBOURHOOD_ON
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap:
AlphaDepth: true
IGNOREPROJECTOR: true
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _AlphaTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BlendTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 2800000, guid: 0d1cf8a59ac52394084f22b49e53548e, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DiffuseRamp:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: c9255abfa116ced46ad8d46908663d9f, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MaskTex:
m_Texture: {fileID: 2800000, guid: b61a8e1e7baba4d47b417e8b7cc852e0, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- PixelSnap: 0
- _BlendAmount: 0
- _Brightness: 1
- _BumpScale: 1
- _Cull: 0
- _CustomRenderQueue: 0
- _Cutoff: 0.1
- _DstBlend: 10
- _EmissionPower: 2
- _EnableExternalAlpha: 0
- _Fill: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _Hue: 0
- _Metallic: 0
- _OutlineMipLevel: 0
- _OutlineOpaqueAlpha: 1
- _OutlineReferenceTexWidth: 1024
- _OutlineSmoothness: 1
- _OutlineWidth: 3
- _RenderQueue: 0
- _RimPower: 2
- _Saturation: 1
- _ShadowAlphaCutoff: 0.1
- _SrcBlend: 1
- _StencilComp: 8
- _StencilRef: 1
- _StraightAlphaInput: 0
- _ThresholdEnd: 0.25
- _Use8Neighbourhood: 1
- _UseScreenSpaceOutlineWidth: 0
- _ZWrite: 0
m_Colors:
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 0}
- _FixedNormal: {r: 0, g: 0, b: 1, a: 1}
- _OutlineColor: {r: 1, g: 1, b: 0, a: 1}
- _OverlayColor: {r: 0, g: 0, b: 0, a: 0}
- _RimColor: {r: 1, g: 1, b: 1, a: 1}

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: c556bf10e5e5267429938469800c7c31
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 379c10d38dabe154e8bb804b33926ff7
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -38,7 +38,7 @@ RenderSettings:
m_ReflectionIntensity: 1
m_CustomReflection: {fileID: 0}
m_Sun: {fileID: 0}
m_IndirectSpecularColor: {r: 0.37311953, g: 0.38074014, b: 0.3587274, a: 1}
m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1}
m_UseRadianceAmbientProbe: 0
--- !u!157 &3
LightmapSettings:
@ -98,7 +98,7 @@ LightmapSettings:
m_TrainingDataDestination: TrainingData
m_LightProbeSampleCountMultiplier: 4
m_LightingDataAsset: {fileID: 0}
m_UseShadowmask: 1
m_UseShadowmask: 0
--- !u!196 &4
NavMeshSettings:
serializedVersion: 2
@ -507,7 +507,7 @@ MonoBehaviour:
multiplyMaterial: {fileID: 0}
screenMaterial: {fileID: 0}
layoutScaleMode: 0
referenceSize: {x: 683.73193, y: 853.6634}
referenceSize: {x: 683.7319, y: 689.6365}
pivotOffset: {x: 0, y: 0}
referenceScale: 1
layoutScale: 1
@ -640,7 +640,6 @@ MonoBehaviour:
m_EditorClassIdentifier:
updateTiming: 1
threadedAnimation: 2
isUpdatedExternally: 0
animationName: main
loop: 1
timeScale: 1
@ -1176,7 +1175,7 @@ MonoBehaviour:
m_Calls: []
m_FontData:
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
m_FontSize: 12
m_FontSize: 10
m_FontStyle: 0
m_BestFit: 0
m_MinSize: 1
@ -1187,22 +1186,14 @@ MonoBehaviour:
m_HorizontalOverflow: 0
m_VerticalOverflow: 0
m_LineSpacing: 1
m_Text: 'In URP the Outline has to be a separate GameObject.
To add an outline
to your SkeletenRenderer:
1) Add a child GameObject and move it a bit back.
2)
Add a `RenderExistingMesh` component, found in latest `Spine Examples`
3)
Copy the original material, add _Outline to its name and set the shader to `Universal
Render Pipeline/Spine/Outline/Skeleton-OutlineOnly`.
4) Assign this _Outline
material at the `RenderExistingMesh` under Replacement Materials.'
m_Text: "In URP you can draw the Outline as a separate GameObject.\nTo add an outline
to your SkeletenRenderer:\n1) Add a child GameObject and move it a bit back.\n2)
Add a `RenderExistingMesh` component, found in latest `Spine Examples`\n3) Copy
the original material, add _Outline to its name and set the shader to `Universal
Render Pipeline/Spine/Outline/Skeleton-OutlineOnly`.\n4) Assign this _Outline
material at the `RenderExistingMesh` under Replacement Materials.\n\nAlternatively
you can use the new 'Outline' property to switch to a two-pass shader. See the
example scene\n 'Outline Shaders URP OutlinePass'."
--- !u!222 &832862687
CanvasRenderer:
m_ObjectHideFlags: 0
@ -1656,7 +1647,6 @@ MonoBehaviour:
m_EditorClassIdentifier:
updateTiming: 1
threadedAnimation: 2
isUpdatedExternally: 0
animationName: walk
loop: 1
timeScale: 1
@ -1916,7 +1906,6 @@ MonoBehaviour:
m_EditorClassIdentifier:
updateTiming: 1
threadedAnimation: 2
isUpdatedExternally: 0
animationName: sneak
loop: 1
timeScale: 0.5