【100个 Unity踩坑小知识点】| Unity控制物体持续指向某个方向

2022-05-10 09:19:34 浏览数 (1)

Unity 小科普

老规矩,先介绍一下 Unity 的科普小知识:

  • Unity是 实时3D互动内容创作和运营平台 。
  • 包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助 Unity 将创意变成现实。
  • Unity 平台提供一整套完善的软件解决方案,可用于创作、运营和变现任何实时互动的2D和3D内容,支持平台包括手机、平板电脑、PC、游戏主机、增强现实和虚拟现实设备。
  • 也可以简单把 Unity 理解为一个游戏引擎,可以用来专业制作游戏!

Unity 踩坑小知识点学习

Unity 控制物体持续指向某个方向

有时候需要让某个物体一直指向某个游戏对象,如下图所示:

这时候有两种简单的方法:

  • 一种是直接使用API的LookAt,可以让物体持续指向某个游戏对象。
  • 另一种是方向向量的方法,这个方法也可以让物体的任意一个方位指向某个游戏对象。
代码语言:javascript复制
    public Transform targetPos;
    void Update()
    {
        //第一种方法:LookAt
        transform.LookAt(targetPos);
        
        //第二种方法:方向向量
        transform.forward = targetPos.position -transform.position;//正前方持续指向
        //transform.up = targetPos.position -transform.position;//正上方持续指向
        //transform.right = targetPos.position -transform.position;//右方持续指向
    }

这两种方法效果差不多一样,但是第二种的重塑性更高,可以自由控制某一个方向持续指向。

使用第二种方法的时候,这样打出去的炮弹就可以一直指向正确的位置了,可以随意修改X、Y、Z轴,以便控制任何一个轴一直指向我们的目标位置,从而实现炮弹的正确指向方位。例如弓箭这种就非常适合。

0 人点赞