Ray([Vector3? origin, Vector3? direction]) { this.origin = (origin != null) ? origin : Vector3.init(); this.direction = (direction != null) ? direction : Vector3(0, 0, -1); }