光线投射的问题
本文关键字:问题 光线投射 | 更新日期: 2023-09-27 18:15:19
我正在为我的游戏制作一个食物系统。
我想用Raycast
,这样你就可以把它捡起来,但我不能让它工作。当我点击带有标签的对象时,它不起作用。
public Text FoodUI;
public int FoodAmount;
public float Distance;
public GameObject Hands;
void Start()
{
FoodUI.text = "Food: " + FoodAmount;
}
void FixedUpdate()
{
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
RaycastHit hit;
if (Input.GetKeyDown(KeyCode.E))
{
if (Physics.Raycast(ray, out hit))
{
if (hit.collider.tag.Equals("Food"))
{
FoodAmount += 40;
}
}
}
}
我建议使用 layermask 来实现你想要做的事情:这样你可以节省性能,同时确保不会光线投射不需要的项目。另外,你可以使用Debug.DrawRay()
在场景视图中显示光线投射。