Jump to content
Unity Insider Forum
Sign in to follow this  
HenriChinasky

Shader in SSR erscheinen lassen

Recommended Posts

Hi zusammen,

ich habe folgenden Shader im AssetStore erworben:
https://assetstore.unity.com/packages/vfx/shaders/holo-fx-pack-101298

Ich verwende den Shader jedoch zweckentfremdet zur Darstellung einer Neonlicht-Wandstruktur, die in verschiedenen Farben flackert, was fantastisch funktioniert. Nun möchte ich, dass die vom Shader bunt gefärbten Flächen auch auf einem durch Screen Space Reflections (SSR) spiegelnden Boden sichtbar sind, was standardmäßig nicht der Fall ist. Mir wurde schnell bewusst, dass es daran liegen muss, dass der Effekt transparent ist und daher keine Tiefeninformationen aufweist. So sieht der Beginn des Subshader Bereichs aus:

	Subshader
	{
		//http://docs.unity3d.com/462/Documentation/Manual/SL-SubshaderTags.html
	    // Background : 1000     -        0 - 1499 = Background
        // Geometry   : 2000     -     1500 - 2399 = Geometry
        // AlphaTest  : 2450     -     2400 - 2699 = AlphaTest
        // Transparent: 3000     -     2700 - 3599 = Transparent
        // Overlay    : 4000     -     3600 - 5000 = Overlay
		Tags { "Queue" = "Transparent" "IgnoreProjector" = "True" "RenderType" = "Transparent" }
		Pass
		{
			Blend SrcAlpha OneMinusSrcAlpha
			Zwrite on
			ZTest on
			//cull off
			CGPROGRAM
			//http://docs.unity3d.com/Manual/SL-ShaderPrograms.html
			#pragma vertex vert
			#pragma fragment frag

 

Ich habe keine Ahnung von Shader Programmierung aber die Idee gehabt folgende Änderungen vorzunehmen.

	Subshader
	{
		//http://docs.unity3d.com/462/Documentation/Manual/SL-SubshaderTags.html
	    // Background : 1000     -        0 - 1499 = Background
        // Geometry   : 2000     -     1500 - 2399 = Geometry
        // AlphaTest  : 2450     -     2400 - 2699 = AlphaTest
        // Transparent: 3000     -     2700 - 3599 = Transparent
        // Overlay    : 4000     -     3600 - 5000 = Overlay
		Tags { "Queue" = "Geometry" "IgnoreProjector" = "True" "RenderType" = "Opaque" } <<<<<<<<<<<<<<<<<<<<<< Hier abgeändert auf Opaque und Geometry
		Pass
		{
			Blend SrcAlpha OneMinusSrcAlpha
			Zwrite on
			ZTest on
			//cull off
			CGPROGRAM
			//http://docs.unity3d.com/Manual/SL-ShaderPrograms.html
			#pragma vertex vert
			#pragma fragment frag

 

Leider hat das keine Änderung gebracht. Jemand eine Idee, wie man dieses Problem angehen könnte? 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

×
×
  • Create New...