137
社区成员




在学习开发游戏的老王【手把手带你Godot游戏开发】FlappyBird:5.2 无尽水管子滚滚来(二)时发现只能输出“得分”而不能触发死亡。
检查了代码发现没问题,然后仔细研读了老师的这篇文章:Godot Engine:碰撞和碰撞检测的简单实例(RigidBody2D与StaticBody2D碰撞) ,发现老师讲的很清楚:
为了避免不必要的性能消耗,RigidBody以及RigidBody2D默认是不开启碰撞检测的,所以需要碰撞检测必须做两件事:
将Contact Monitor设为true(开启碰撞检测)
将Contact Reported设为一个大于0的值(返回碰撞结果最大数量)
所以只需要启用Contact Monitor并将Contacts Reported设为1即可。如下图
如此,就可以正常触发得分和死亡了。