implemented free moving camera