The description of Faceforward on Blender’s manual page is:
Orients a vector A to point away from a surface B as defined by its normal C. Computes (Dot(B,C)<0)?A:-A
Could anyone please explain to me what Faceforward is about?
So we have a normal vector C which controls how steep the surface (or the plane) B is, and we have a vector A which points away from B.
-What does the part (B•C < 0)?A:-A mean?
-How can B•C if B is not a vector? I learnt that Dot Product can only be performed on 2 vectors.
-Why is there a question mark?
-What does “A:-A” mean? “A such that negative A”?
Any help is appreciated!
P/S: I don’t know about coding language.
Edit: The node confuses me.
If we have Vector input, why do we need Incident input? All vectors that are existing are supposed to be Incident vectors, aren’t they, at least that is what happens with other Vector Maths like Vector Rotation, Reflection, Refraction… So we have 2 incident vector inputs, to me it seems like the Vector input inputs all available vectors and the Incident input inputs only a specific vector. If this is the case, please explain to me why.
And what is Reference input? Is it the Normal vector input? Why is it named like that?