- Home /
Simple Shader: Pushing vertecies towards Camera
Hey Guys,
I want to add a Glow to an effect. To do that i want to draw a particle that is pushed just a little bit towards the Camera to draw over very near object. (E.g. that particle should not clip into woodpieces of a fire effect, when its billboarded).
So I started to write my own Particle Shader. First i thought you need the Offset Parameter, but it didnt helped at all. So my first question is, wether the Offset x , y Parameter in Shaders only effect verticies that lie nearly on the same z position in relation to the camera.
Then i changed the Vertex shader and it did start to get something. But when I now get very near to the particle with the z Offset it is some kind of distorted. Do I something wrong?
Here is my vertex shader:
v2f vert (appdata_t v)
{
v2f o;
float3 ObjSpaceCameraPos = mul(unity_WorldToObject , float4(_WorldSpaceCameraPos,1.0)).xyz;
float4 offset = float4(normalize( ObjSpaceCameraPos - v.vertex) * _Offset,0.0);
v.vertex += offset;
o.vertex = mul(UNITY_MATRIX_MVP, v.vertex);
#ifdef SOFTPARTICLES_ON
o.projPos = ComputeScreenPos (o.vertex);
COMPUTE_EYEDEPTH(o.projPos.z);
#endif
o.color = v.color;
o.texcoord = TRANSFORM_TEX(v.texcoord,_MainTex);
UNITY_TRANSFER_FOG(o,o.vertex);
return o;
}
Hope someone can help me. Thank you,
Julian
Your answer
Follow this Question
Related Questions
Blurry smooth edges of a mesh 0 Answers
UnityObjectToClipPos is inverted? 0 Answers
How to create a hole using a shader? 0 Answers
Why does AngryBots `QualityManager` alter shader LOD twice? 0 Answers
Why is shader generated from shader graph so large? 1 Answer