Fixed raycasting with BufferGeometry

Raycasts now take BufferGeometry offset into account.
Added a safeguard to check for the existence of color before adding them
to the intersected face.
Made a minor optimizations by moving a precondition out of the loop.