Unity 瞄准线 2D

时间:2021-02-27 11:26:19

标签: unity3d

我刚开始使用 Unity 进行编码,想创建一个游戏,让玩家可以射击目标。我想从玩家位置到鼠标位置画一条线,当玩家击中空间时,线消失,子弹朝那个方向飞。

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

public class Weapon : MonoBehaviour
{
    public Transform firePoint;
    public GameObject bulletPrefab;
    // Update is called once per frame
    void Update()
    {
        if (Input.GetButtonDown("Fire1")) {
          Shoot();
        }
    }

    void Shoot()
    {
      Instantiate(bulletPrefab,firePoint.position,firePoint.rotation);
    }
}

我有显示项目符号的代码

1 个答案:

答案 0 :(得分:0)

我只会给你一些关于我将如何做的提示(因为答案不应该涉及提供你的编码解决方案)。真正合适的问题是,一旦您研究并尝试了所有这些,具体步骤和可重现的示例可能会卡住。查找有关如何提出好问题的更多信息here

实现您想要的功能所需的功能是 Input.mousePosition、unity lineRenderer 以及可能在屏幕上调试您的路线的 Debug.DrawRay

具体的画线步骤需要将Input.mousePosition设置到lineRenderer位置,SetPositionsUpdate()中,这样在拍摄的时候可以让线条消失根据您可能需要的行为,禁用线条渲染器组件,或重置位置或使用其他替代方法。

祝你好运:)