Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在碰撞时更改按钮_C#_Unity3d_Sprite - Fatal编程技术网

C# 如何在碰撞时更改按钮

C# 如何在碰撞时更改按钮,c#,unity3d,sprite,C#,Unity3d,Sprite,嘿,我正试图让我的精灵按钮从绿色变为红色,并在我的播放器与之碰撞时向后移动。我有一个boxcollider2d原样触发器和一个脚本 脚本: 我想这是其中的一部分,但我没有得到任何东西时,碰撞的按钮可以任何人启发我对这个问题将非常感谢 提前感谢区分碰撞器和触发器之间的差异非常重要 物理系统使用对撞机是为了使物体不会相互穿透或重叠。另一方面,触发器是用来检查重叠区域的,例如Sonic中的环。索尼克收集戒指,但它们并不能阻止他通过,可以把它们当作触发器。如果它们是对撞机,sonic会跳入其中并弹起 在

嘿,我正试图让我的精灵按钮从绿色变为红色,并在我的播放器与之碰撞时向后移动。我有一个boxcollider2d原样触发器和一个脚本

脚本:

我想这是其中的一部分,但我没有得到任何东西时,碰撞的按钮可以任何人启发我对这个问题将非常感谢


提前感谢

区分碰撞器和触发器之间的差异非常重要

物理系统使用对撞机是为了使物体不会相互穿透或重叠。另一方面,触发器是用来检查重叠区域的,例如Sonic中的环。索尼克收集戒指,但它们并不能阻止他通过,可以把它们当作触发器。如果它们是对撞机,sonic会跳入其中并弹起

在Unity中,创建触发器的过程与创建碰撞器的过程相同,只有一个附加步骤,即标记一个复选框

因此,了解在每种情况下应该使用哪些函数也很重要

迎面而来。。。对于碰撞器(或未标记为触发器的碰撞器)

昂蒂格。。。对于触发器,(将unity中的碰撞器标记为触发器将使其成为触发器。)

为了添加更多细节,为游戏的正确维度使用正确的碰撞器类型也很重要,2d碰撞器/触发器不会与3d碰撞器/触发器交互。更重要的是,物理组件:二维刚体不适用于三维碰撞器,三维刚体不适用于二维碰撞器/触发器

因此,每个2d、3d、碰撞和触发器都有相应的功能

另一个重要因素是确保如果要使用这些函数,至少其中一个对象必须具有正确类型(2d或3d)的刚体


因此,您遇到的问题是将OnCollisionInter2D用于标记为触发器的“碰撞器”,在这种情况下,不会调用OnCollisionInter2D,但会调用OnTiggerInter2D。

区分碰撞器和触发器之间的区别很重要

物理系统使用对撞机是为了使物体不会相互穿透或重叠。另一方面,触发器是用来检查重叠区域的,例如Sonic中的环。索尼克收集戒指,但它们并不能阻止他通过,可以把它们当作触发器。如果它们是对撞机,sonic会跳入其中并弹起

在Unity中,创建触发器的过程与创建碰撞器的过程相同,只有一个附加步骤,即标记一个复选框

因此,了解在每种情况下应该使用哪些函数也很重要

迎面而来。。。对于碰撞器(或未标记为触发器的碰撞器)

昂蒂格。。。对于触发器,(将unity中的碰撞器标记为触发器将使其成为触发器。)

为了添加更多细节,为游戏的正确维度使用正确的碰撞器类型也很重要,2d碰撞器/触发器不会与3d碰撞器/触发器交互。更重要的是,物理组件:二维刚体不适用于三维碰撞器,三维刚体不适用于二维碰撞器/触发器

因此,每个2d、3d、碰撞和触发器都有相应的功能

另一个重要因素是确保如果要使用这些函数,至少其中一个对象必须具有正确类型(2d或3d)的刚体



因此,您遇到的问题是将OnCollisionInter2D用于标记为触发器的“碰撞器”,在本例中,不调用OnCollisionInter2D,但是调用了OnTiggerInter2D。

是的,他有一个BoxCollized2D:Button你的任何对象有刚体吗?我的玩家有刚体吗?你的玩家有正确的标签吗?是的,他有一个BoxCollized2D:Button你的任何对象有刚体吗?我的玩家有刚体吗?你的玩家有正确的标签吗?是的,我发现了仍然是编程新手,我真的很喜欢你们所有人都这么乐于助人。这对我来说在大学还是一件非常新鲜的事情,我们正在努力为我们的项目制作一款游戏。到目前为止,我们只编程了1.5个月,还有很多东西需要学习:d@Simon没问题祝你在学习冒险中好运,我建议当你有时间查看Unity的一些教程时,这里有一个关于碰撞器和触发器的链接:@Simon不确定我是否了解你,你怎么有c#中的数组?你不知道有多少?c#中的数组有一个getLength方法。@Simon您可以使用foreach循环吗@Simon我建议可能使用foreach循环。。。试一试,如果你有问题,用你遇到的问题发布一个新问题。是的,我发现编程还是个新手,我真的很喜欢你们所有人都这么乐于助人。这对我来说在大学还是一件非常新鲜的事情,我们正在努力为我们的项目制作一款游戏。到目前为止,我们只编程了1.5个月,还有很多东西需要学习:d@Simon没问题祝你在学习冒险中好运,我建议当你有时间查看Unity的一些教程时,这里有一个关于碰撞器和触发器的链接:@Simon不确定我是否了解你,你怎么有c#中的数组?你不知道有多少?c#中的数组有一个getLength方法。@Simon您可以使用foreach循环吗@Simon我建议可能使用foreach循环。。。试一试,如果你有问题,用你遇到的问题发布一个新问题。无论是我还是这里众多的其他有帮助的人中的一个都能帮助你。