zoukankan      html  css  js  c++  java
  • 追踪弹路径

    追踪弹路径

    为了实现上图比较平滑的追踪,又要保证追踪子弹能命中目标,
    增加一个变量记录追踪的力度,并且力度随时间成长,
    用追踪力度决定子弹原本方向的改变大小,
    特殊的,为了防止子弹在目标点附近打圈,在距离目标较近时,直接设置方向

    演示代码
    x
    20
     
    1
        private void Update()
    2
        {
    3
            if (IsArrive())
    4
            {
    5
                Destroy(gameObject);
    6
                return;
    7
            }
    8
            
    9
            Vector3 tarGetDir = targetPos - transform.position;
    10
            float dis = tarGetDir.magnitude;
    11
            tarGetDir = tarGetDir / dis;
    12
    13
            if (dis <= 1)
    14
                transform.forward = tarGetDir;
    15
            else
    16
                transform.forward = Vector3.Slerp(transform.forward, tarGetDir, homingWeight * Time.deltaTime);
    17
    18
            homingWeight += Time.deltaTime * 8;
    19
            transform.position += transform.forward * Speed * Time.deltaTime;
    20
        }










  • 相关阅读:
    安装和使用 PyInstaller 遇到的问题
    Mininet 系列实验(七)
    Mininet 系列实验(六)
    Mininet 系列实验(五)
    Mininet 系列实验(三)
    Mininet 系列实验(一)
    Linux进程间通信(消息队列/信号量+共享内存)
    bugku 输入密码查看flag
    bugku 头等舱
    bugku 你必须让他停下
  • 原文地址:https://www.cnblogs.com/Hichy/p/7892070.html
Copyright © 2011-2022 走看看