c# - 我正在尝试检测我是否与统一的特定对象发生碰撞
问题描述
在我的场景中,有多个对象具有相同的图层和标签。我有一个变量将被设置为这些对象之一的游戏对象。当我与设置为变量的对象发生碰撞时,我想做一些事情。我目前的代码是:
private void OnCollisionEnter2D(Collision2D collision)
{
if (collision.otherCollider == targetFood)
{
Debug.Log("I am touching food");
}
}
我尝试了几种不同的方法来检查它是否接触到食物,但都没有奏效。帮助将不胜感激!
解决方案
如果你从碰撞中得到游戏对象,你应该能够确定目标食物是否被触摸过。
using UnityEngine;
public class Example : MonoBehaviour
{
void OnCollisionEnter2D(Collision2D collision)
{
if (collision.gameObject == targetFood)
{
Debug.Log("I am touching food");
}
}
}
这是假设targetFood
是一个类型为 的变量GameObject
。
推荐阅读
- aws-lambda - 启动新连接时的 AWS RDS 代理 CPU 消耗
- javascript - 如果宽度超过,如何转换为下拉菜单?
- npm - 更新到版本 7 后的 NPM。安装 Sass Sass-loader 错误
- flutter - 如何将图像变量从一个屏幕发送回另一个屏幕 - Flutter
- mongodb - 需要帮助聚合猫鼬数据
- python - 记录网页抓取数据
- flutter - Flutter,一个小小的 Cubit BlocBuilder 问题
- reactjs - Graphql 订阅未获取客户端变量
- php - Laravel 8 解密
- python-3.x - Python3:抽象类的子类是否继承其魔术方法?