public bool GetBlock(Ray ray, out Vector3 blockCoords, out Block block)
{
blockCoords = Vector3.Zero;
block = new Block ();
BoundingBox aabb = new BoundingBox ();
Vector3 min = new Vector3(Position.X, Position.Y, Position.Z) * new Vector3(32, 32, 32);
Vector3 max = min + new Vector3 (32, 32, 32);
aabb.FromMinMax (min, max);
if (!aabb.Collides(ray))
return false;
// TODO: return correct block and block coords from the octree
Console.WriteLine ("Collision! {0}\nMin:{1}\nMax:{2}", Position, min, max);