【问题标题】:Moving a gameObject along a launch arc in Unity [duplicate]在Unity中沿着发射弧移动游戏对象[重复]
【发布时间】:2020-08-05 03:25:56
【问题描述】:

我正在尝试添加一个大炮攻击,它以弧线发射炸弹并落在目标 X 位置。

以下是大炮应如何射击具有不同 X 位置的目标的示例:

到目前为止,我只有一个脚本可以将炸弹直接移动到玩家当前的 X 位置,而不是沿弧线移动。

注意:玩家的X位置是在炸弹发射前一次记录的,所以目标位置是固定的。

更新:我正在尝试找到一种方法来计算一个弧线,该弧线将发射炸弹,然后在炸弹发射时降落在玩家的 X 位置。到目前为止,我已经将玩家的 X 位置存储在一个名为 lastPlayerXPos 的浮点数中,当炸弹被发射时,它会直接指向具有 lastPlayerXPos 的 X 值的 Vector2。 (没有曲线)。

【问题讨论】:

    标签: unity3d 2d


    【解决方案1】:

    你需要跟进同样的 HomingMissiles 概念。

    private void FixedUpdate()
    {      
    
        // increasing velocity, fake acceleration.     
        velocity ++;
        
        // Adding velocity to the rocket
        rocketRigidBody.velocity = transform.forward * velocity ;
    
        // getting the direction where the Missile should lock toward the target.
        var rocketTargetRotation = Quaternion.LookRotation(rocketTarget.position - transform.position );
        // Rotating the missiles to face the target
        rocketRigidBody.MoveRotation(Quaternion.RotateTowards(transform.rotation, rocketTargetRotation, turnRate)); //turn rate is how fast you want to rocket to look to the target
      
        
    }
    

    本教程还深入解释了您需要做什么 https://www.youtube.com/watch?v=0v_H3oOR0aU

    【讨论】:

    • 您好,我不确定您的意思。我不想让弹丸跟随玩家。我正在尝试找到一种方法来计算将有炸弹发射的弧线,然后在发射弹丸时降落在玩家的 X 位置。如果不清楚,我可以更新问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多