Decals not rendering properly

I am setting up a pointer event to apply an image to mesh as a decal. i am using negative zOffset and cullBackFace = true, but the image is not getting rendered properly as you can see. When i click on the the outer surface the image reached inside as well. It works as expected for some surfaces but not for the some other. Why is this happening??

For the first picture, it’s going to be hard to tell without a repro.

Regarding the second one, it means the intersection point has been found on the interior face. Make sure you pick the intersection closest to the camera (don’t use the “fast” option of the pick method, which will return the first intersection found and not the closest).