Thanks for give me confidence in: player.transform.origin - transform.origin
I end up with this $RayCast.castto:
$RayCast.castto = Vector3(transform.origin.x - player.transform.origin.x, player.transform.origin.z - transform.origin.z, player.transform.origin.y - transform.origin.y + 0.1)
I sit and do one value: X, Y; Z at a time and Debug / Visible Collision Shapes On
my gravity is:
var gravity = Vector3.DOWN * 12
Have I somehow turn my world to Vector3(X, Z, Y)
My $RayCast.cast_to formula make me confused, but it works!