微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Godot Tapping 游戏建议

如何解决Godot Tapping 游戏建议

我想为移动设备创建一个类似 aim Lab 的“Circle Shot”这样的反应游戏。因此,用户将需要点击出现的圆圈,而不是拍摄。如果我想让它尽可能简单,我应该为圆圈使用哪个节点?精灵还是纹理按钮?

我还想问一下如何包含圆圈,这样它们就不会产生越界。我使用网格容器还是其他东西?

解决方法

为什么?

这个问题在某些方面很奇怪:

  1. 为什么要使用 TextureButton
    TextureButton实际上是一个Control节点,Control节点主要用于UI场景。
    我并不是说使用 TextureButton 来创建游戏而不是创建 UI 是不可能的,但我的意思是这不是做到这一点的最佳方式。
  2. 为什么要使用 Sprite
    您不能为此使用 Sprite,因为您无法点击它。
    Sprite 用例用于创建动画,只需在场景中放一张图片,也许还有背景用例等等。

那又怎样?

我主要建议使用:

  1. KinematicBody2D:此节点是 Node2D 类型,您可以通过附加脚本轻松在屏幕上移动它。
    您可以为它模拟物理并使用 move_and_slide()move_and_collide() 等函数移动它。
  2. RigidBody2D:这个节点也是一个 Node2D 类型,你可以很容易地模拟质量、重力和重量,让它有一个不能移动的物体本身,但可以通过环境力量(如冲击、重力或......)移动。

怎么样?

这些节点中的每一个都继承自具有 3 个信号的 CollisionObject2D 节点:

  1. mouse_entered():当鼠标指针(在本例中为手指)进入该对象的任何形状时发出。
  2. mouse_exited():当鼠标指针(在这种情况下,手指)退出此对象的所有形状时发出。

通过这些信号,您可以了解字符手指是否在圆圈内。
重要说明:我实际上并没有亲自测试过这个,因为我不是在移动设备上开发的,但由于我在为 PC 开发游戏方面的经验很少,这些应该可以。

建议

还要始终关注最新的稳定 godot documentation,看看是否有其他更好的解决方案或更好的节点来处理您的情况。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。