lookAt method

void lookAt(
  1. Vector3 target
)

Implementation

void lookAt(Vector3 target) {
  final dir = target - position;
  if (!dir.x.isFinite ||
      !dir.y.isFinite ||
      !dir.z.isFinite ||
      dir.length2 < 1e-12) {
    return;
  }
  dir.normalize();
  final horizontalDist = sqrt(dir.x * dir.x + dir.z * dir.z);
  if (horizontalDist > 0.0001) {
    _yaw = atan2(dir.x, -dir.z);
  }
  _pitch = asin(-dir.y.clamp(-1.0, 1.0)).clamp(-1.45, 1.45);
  _applyOrientation();
}