Billboard multi-texture toggle based on viewing angle? [SOLVED]

Sure. Mix RGB between two image texture lookups on the basis of some dot product. Probably, for what you’re talking about, for dot product is greater than some value, so you have an all-at-once mix.

The arccosine of the dot product is the angle between its vectors (in radians, and unsigned.) So if you want, you can mix on the basis of any particular angle you want.

Dear bandages, I’ve tried making this work but may be throwing in the towel. Basically, on the sketchfab I shared above: When click-dragging left to right and the camera swivels around the fisherman, how would you switch the image texture when you’re in front of him? Just a basic example would rock so much and I’d be forever thankful and would spread the knowledge forth to everyone I meet…

If you want to do it on a billboarded plane, do this:

That’s not dependent on the camera at all, but dependent on the object transform, which is going to be dependent on the camera when billboarding.

That is EXACTLY why this thread was started :slight_smile: Primarily for tree billboards, not only to render differently from sides and behind, but also from above (forest flyover)
However, i never got to finish and implement this idea.

Thanks for your awesome help and feedback, @bandages. I’ve now managed to make it switch textures when viewed from front and left sides. What I can’t figure out is how to expand the formula to also incorporate included back- and right sides in this .blend file:

texture-switching_v1.blend (773.5 KB)

Here’s a demo of what I’ve got so far. I’d be very happy for some help, but I also realize I’m probably asking too much so I apologize for even asking, and understand if you’re not up for it.

Understand your dot product. It is positive when both vectors point in the same direction (or less than 90 degrees off). It is negative when they point in opposite directions (or greater than 90 degrees off.)