Is it possible to make Decal affect only front and back ?

I’m using a stain decal, and i want it to spread all over the place.
The problem is : When i spawn a big one, it will look good only in the front and in the back, not in the sides.
And if i want to spawn more then one with different rotations to cover more places, it will get black because there is more then one in the same place.
Is there anyway to make it work ?

One decal :

Two decals :

Also, it doesn’t work with baked light. what is the solution for this one ?

you can set the scale of your decal, like x : 32, y : 2, z : 32 and then rotate it reffered to your actor decal receiver rotation. Then if you check z location. when it is less than decal size / 2 you spawn a second actor on the floor with a y offset = first decal z location. There will maybe need some check / set adds to have it working for x and y and some more too for ceilings or contiguous walls. But this is the global idea i would follow to do it.

Thanks. I’v made something similar at first. but then it disabling the ability to project the decal on walls with angles.
This is what i want as well :

Ok, i’v got a solution for this one. I use 6 line traces that goes up,down,left,right,forward and backward.
it takes the lines that hit some something and calculate the vector between them. also. it ignores everything but brushes and static meshes which are not dynamic. all i need now is to get rid of this extra white color. maybe i will try to edit the normal map.