【发布时间】:2021-06-29 00:20:16
【问题描述】:
我是一个尝试制作像 https://youtu.be/qxwO1wyz50w?t=37 这样的游戏的菜鸟,但我不知道如何向我的线渲染器添加碰撞。线渲染器会是解决这个问题的方法还是有更好的方法?
这是我目前的代码(我知道我也是编程新手)
public GameObject crossHair;
public LineRenderer line;
public Transform startPoint;
public GameObject lazer;
void Start()
{
Cursor.visible = false;
}
void Update()
{
crossHair.transform.position = Camera.main.ScreenToWorldPoint(Input.mousePosition);
if (Input.GetKeyDown(KeyCode.Mouse0))
{
LineSpawner();
startPoint.position = crossHair.transform.position;
}
}
void LineSpawner()
{
Vector2 shootDir = crossHair.transform.position - startPoint.transform.position;
GameObject lazerInstance = Instantiate(lazer);
line = lazerInstance.GetComponent<LineRenderer>();
line.SetPosition(0, startPoint.transform.position);
line.SetPosition(1, crossHair.transform.position);
Physics2D.Raycast(startPoint.transform.position, shootDir);
Debug.DrawRay(startPoint.transform.position, shootDir, Color.red);
}
【问题讨论】:
标签: unity3d