Add radial hero-cutout shader for third-person camera
Reveal the player when geometry sits between the orbit camera and the character: a screen-space circular mask in a URP/Lit clone (HeroCutoutLit) clips occluders in front of the player, depth-gated so only geometry nearer than the hero is cut. The cutout lives outside UnityPerMaterial (SRP batcher intact) and is a no-op when disarmed, so occluders look identical to URP/Lit. A runtime driver (HeroCutout.cs on Main/GameManager) feeds the player's screen position, radius, feather and depth into global shader properties and only arms while the third-person orbit vcam is live; it disarms in first-person, free-cam and the pause menu. Applied to the lobby walls via a dedicated occluder material (floor left solid). Shipped but shelved for now. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
1 parent
b6aaf69235
commit
ac25f59232
10 files changed
+896
-7
No files matched your search
@@ -1823,6 +1823,7 @@ GameObject:
|
||||
m_Component:
|
||||
- component: {fileID: 1516578028}
|
||||
- component: {fileID: 1516578027}
|
||||
- component: {fileID: 1516578029}
|
||||
m_Layer: 0
|
||||
m_Name: GameManager
|
||||
m_TagString: Untagged
|
||||
@@ -1864,6 +1865,24 @@ Transform:
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!114 &1516578029
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1516578026}
|
||||
m_Enabled: 0
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: c7d67030b8dcdec489471b88c35dd78b, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier: Assembly-CSharp::HeroCutout
|
||||
orbitInput: {fileID: 0}
|
||||
modes: {fileID: 0}
|
||||
radius: 0.3
|
||||
feather: 0.1
|
||||
depthBias: 0.5
|
||||
heightOffset: 0
|
||||
--- !u!21 &1752619484
|
||||
Material:
|
||||
serializedVersion: 8
|
||||
|
||||
Reference in new issue
Block a user