- Home /
How can i shader transparent Objects together?
First i am sorry for my bad english and shader skills! In my little game I have a character, which can run around. If he runs behind a Wall, this should get transparent. After searching and testing a while I got a shader can do this. Now my Problem: If the Player is behind the wall and under the roof, both get transparent, like they should, but you can clearly see the area they connect each other. How I could do that you cant see that? Connect the 2 objects temporary? Shader them somehow together as one object? Or just few lines more code in my shader? Here the problem:
My acctual Shader is here:
Shader "Transparent/CastShadow" {
Properties {
_Color ("Color", Color) = (0.9, 0.9, 0.9, 1.0)
_MainTex ("Base (RGB)", 2D) = "white" {}
}
SubShader {
Tags { "RenderType" = "Transparent" "Queue" = "Transparent" }
Blend SrcAlpha OneMinusSrcAlpha
Cull Off
LOD 200
CGPROGRAM
#pragma surface surf Lambert
fixed4 _Color;
sampler2D _MainTex;
// Note: pointless texture coordinate. I couldn't get Unity (or Cg)
// to accept an empty Input structure or omit the inputs.
struct Input {
float2 uv_MainTex;
};
void surf (Input IN, inout SurfaceOutput o) {
o.Albedo = _Color.rgb;
o.Alpha = _Color.a;
}
ENDCG
}
FallBack "Diffuse"
}
ps: I normely programm in C#
I got the same problem. Did you find the solution for this?
This is an expected manifestation of rendering transparency. $$anonymous$$erging the two objects will not make a difference with any stock shaders.
I'm sure achieving the desired result would possible with some kind of image effect stenciling technique, which is probably the superior option.
I'm not sure whether a non-image-effect based solution exists, but if it does, it would involve merging any such ghostly objects and using a shader which culls based on an opaque depth technique. In other words, if the pixel would draw if the object were opaque, render it as semi-transparent; otherwise do nothing
Either would be a useful effect to have; anyone aware of any examples?
Your answer
Follow this Question
Related Questions
Shader Renders Behind everything in Scene 1 Answer
Make transparency ignore meshes inside? 1 Answer
Shader Question about Alpha 0 Answers
Add transparency to this shader? 0 Answers
Transparent gameobject with textures 1 Answer