您好,我需要有关为我在处理中制作的游戏制作碰撞的建议
Hello, I need advice on making collision for a game I made in processing
我正在为我的计算机科学 class 制作一个 Atari 游戏版本 "Centipede"。我需要帮助为我的代码创建碰撞。我需要做到这一点,当子弹击中蜈蚣的一部分时,游戏会检测到它并且被击中的部分消失。
一个简单的实现如下:
1.指定一个代表蜈蚣像素位置的数组
2.指定另一个表示子弹像素位置的数组
3. 根据游戏的采样率更新每个数组的值并检查是否有任何重叠。 (理想情况下将其作为一个单独的线程)
4.Any重叠表示碰撞,所以有某种碰撞处理函数,删除蜈蚣命中的部分,重叠事件发生时触发。
这是一个相当宽泛的问题,但我会尽力提供一般意义上的帮助。
您需要阅读 collision detection。
首先,您可能想将蜈蚣分解成单独的矩形。对于每个矩形,检查它是否与子弹碰撞。
您可以考虑点-矩形碰撞检测,在其中检查点是否在矩形内。如果你的子弹是一个小点,这将起作用。
或者您可以考虑矩形-矩形碰撞检测,在其中检查两个矩形是否重叠。如果您的子弹大于一个点,请使用此选项。即使你的子弹是一个圆圈,你通常也可以逃脱这种碰撞检测。
请尝试一下,如果您遇到困难,请 post 一个 MCVE 来说明您遇到的困难。祝你好运。
我正在为我的计算机科学 class 制作一个 Atari 游戏版本 "Centipede"。我需要帮助为我的代码创建碰撞。我需要做到这一点,当子弹击中蜈蚣的一部分时,游戏会检测到它并且被击中的部分消失。
一个简单的实现如下:
1.指定一个代表蜈蚣像素位置的数组
2.指定另一个表示子弹像素位置的数组
3. 根据游戏的采样率更新每个数组的值并检查是否有任何重叠。 (理想情况下将其作为一个单独的线程)
4.Any重叠表示碰撞,所以有某种碰撞处理函数,删除蜈蚣命中的部分,重叠事件发生时触发。
这是一个相当宽泛的问题,但我会尽力提供一般意义上的帮助。
您需要阅读 collision detection。
首先,您可能想将蜈蚣分解成单独的矩形。对于每个矩形,检查它是否与子弹碰撞。
您可以考虑点-矩形碰撞检测,在其中检查点是否在矩形内。如果你的子弹是一个小点,这将起作用。
或者您可以考虑矩形-矩形碰撞检测,在其中检查两个矩形是否重叠。如果您的子弹大于一个点,请使用此选项。即使你的子弹是一个圆圈,你通常也可以逃脱这种碰撞检测。
请尝试一下,如果您遇到困难,请 post 一个 MCVE 来说明您遇到的困难。祝你好运。