如何让 2D 精灵在 3D 统一游戏中面对相机?

How do get a 2D sprite to face the camera in a 3D unity game?

我一直在努力让它工作,但大多数代码要么过时要么不起作用任何人都可以帮助我需要 unity 2021 的代码吗?

我试图找到一些代码,但它们已经很旧了,好像是 2016 年的

计算机图形学中的术语“广告牌”是指始终面向相机的物体。你可以尝试一个广告牌组件,像这样:

public class Billboard : MonoBehaviour {
    public Transform cam;
    private void Start() {
        cam = Camera.main.transform;
    }
    void LateUpdate() {
        transform.LookAt(transform.position + cam.forward);
    }
}

应始终在 LateUpdate 中实现跟随相机行为,因为它会跟踪可能已在 Update 内移动的对象。此外,如果您的精灵在 canvas 中,请确保它在世界的 space 中,这样它就是一个 3D 世界对象并且可以旋转。 Canvas space 是 canvas 组件本身的一个选项。