Also added a script to orient that Canvas toward the Camera, independent of the parent GameObject rotations:
using System.Collections;
using System.Collections.Generic;
using Unity.VisualScripting;
using UnityEngine;
public class LookAtCamera : MonoBehaviour {
private enum Mode {
LookAt,
LookAtInverted,
CameraForward,
CameraForwardInverted,
}
[SerializeField] private Mode mode;
public Camera Camera;
private void LateUpdate() {
switch (mode) {
case Mode.LookAt:
transform.LookAt(Camera.main.transform);
break;
case Mode.LookAtInverted:
Vector3 dirFromCamera = transform.position - Camera.main.transform.position;
transform.LookAt(transform.position + dirFromCamera);
break;
case Mode.CameraForward:
transform.forward = Camera.main.transform.forward;
break;
case Mode.CameraForwardInverted:
transform.forward = -Camera.main.transform.forward;
break;
}
}
}
Learned that here: