【问题标题】:Spawned asteroid move towards player location found on spawn, but goes no farther生成的小行星向生成时发现的玩家位置移动,但不会更远
【发布时间】:2019-02-08 03:20:49
【问题描述】:

我正在为一个项目创建一个 Asteroids 克隆。我目前正在使用 MoveTowards 让小行星在玩家生成后移动到玩家所在的位置。使用这种方法限制我的是他们在到达那个点时会暂停,我知道这是由于 MoveTowards。是否有另一种方法可以让小行星在生成后跟踪玩家位置,然后移动到该点并超越该点?试图四处搜索,但找不到我的问题的具体答案

这是我目前拥有的适用于这个问题的内容。如果我需要提供更多代码,请告诉我,我会的。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Asteroids : MonoBehaviour
{
    public Vector3 playerPosition;
    public Vector2 direction;
    public int asteroidSpeed;

    // Start is called before the first frame update
    void Start()
    {
        playerPosition = GameManager.gm.player.transform.position;
    }

    // Update is called once per frame
    void Update()
    {
        transform.position = Vector3.MoveTowards(transform.position, playerPosition, asteroidSpeed * Time.deltaTime);
    }

【问题讨论】:

    标签: c# unity3d


    【解决方案1】:

    您希望您的矢量基于初始点和生成点所描述的线。然后,您想沿着该向量移动,但不要移动到“生成点”。

    【讨论】:

    • 我理解这个想法,但我将如何实际编写它?抱歉,我还在学习。
    • 啊,我明白了!休息后回到它,这个解释更有意义。谢谢你:)
    猜你喜欢
    • 2021-10-17
    • 2022-11-13
    • 2016-07-14
    • 1970-01-01
    • 1970-01-01
    • 2018-12-31
    • 2018-06-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多