1
\$\begingroup\$

I'm trying to integrate a "ground particle" effect (like a fire-circle or similar) in Unity3d, however since i'm using uneven terrain as my terrain mesh, the effect gets culled behind terrain parts that above it.

To better ilustrate it I created an image as attachment : enter image description here I want for the effect to always be displayed regardless of it's "depth". How can this undesired effect be avoided/resolved properly ?

\$\endgroup\$
1
  • \$\begingroup\$ It looks like you're projecting your effect to the bottom of your actor. I would think you'd want to display it to the terrain below your actor. The visible part, by your illustration, would be floating above the terrain, which wouldn't look good either. \$\endgroup\$ Jun 13, 2014 at 15:59

2 Answers 2

1
\$\begingroup\$

I would recommend an animated Projector.

You'd simply configure the IgnoreLayers property to ignore your player. And you could animate the effect with a simple script to modify the UV offsets of the material you use.

One thing to remember is for every object a projector is projected onto an extra draw call is issued (just like a light), so use them sparingly.

\$\endgroup\$
0
\$\begingroup\$

If the effect is simply a quad being created at the player's feet, then you will have to change the way your effect is implemented. Projecting the effect onto the surface like a decal is one way to get things looking a bit better. Of course, it won't help with extra particles, or other more complex effects. Here is a link describing this idea.

http://blog.wolfire.com/2009/06/how-to-project-decals/

\$\endgroup\$
1
  • \$\begingroup\$ Yes , i already use this scenario ( albeit with using projectors , but more or less), but as you noted in your post , in my case I'm using a 'complex' effect (rotation on the ground texture along with 'flame tongues' emitters.). \$\endgroup\$
    – CodinRonin
    Jun 14, 2014 at 0:00

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .