First attempt at a 3d engine