algorithm - 在圆形碰撞和旋转方面需要帮助吗? - 游戏物理

标签 algorithm math physics

好吧,我有一堆球:

Ignight Balls


我想弄清楚的是如何制作这些圆圈:

  • 根据它们接触的表面旋转

  • 在处理多个触摸物体时修复碰撞穿透


编辑:这就是我所说的旋转

alt text

  • 球 0逆时针旋转,因为它靠在球 3 上

  • 球 5顺时针旋转,因为它靠在球 0 上


尽管对此的解决方案是通用的,但仅供引用,我正在使用 Javascript 和 SVG,并且宁愿自己实现它而不是使用库。

非常感谢您的帮助。谢谢! :)

最佳答案

这里有一些我认为可以帮助您完成任务的链接:

Box2D

Advanced Character Physics

Javascript Ball Simulation

Box2D 有您要找的东西,而且我相信它是开源的。您可以下载这些文件,看看它们是如何实现您的效果的。

让我知道这是否有帮助,尝试在此处更好地回答问题。 :)

编辑:

所以我继续深入思考这个问题,以便就我将如何处理它提供一些见解。看看下面的图片:

基本上,比较网格上的角度,如果球与其落在的球相比下降 +30 度,则将球正向旋转。如果它相对于它落在的球下降 -30 度,则将球反向旋转。我并不是说这是正确的解决方案,只是想一想,这就是我立即解决问题的方式。

alt text

关于algorithm - 在圆形碰撞和旋转方面需要帮助吗? - 游戏物理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2127692/

相关文章:

java - 使用 Java 比较目录 : how could I recognize deleted files?

java - 如何降低这部分代码的复杂性?

algorithm - 寻找分区问题算法返回 true 的最大值子集

iphone - fmodf 获取模数的问题

c# - 在 C# 中减去时间的最简单方法是什么?

arrays - 如何在 xor 方法的数组中查找重复项?算法复杂度 O(n)

math - 您需要什么数学才能阅读计算机编程艺术?

cocos2d-iphone - 物理 Sprite 和CCSprite有什么区别?

math - 给定所有 4 个顶点位置,求不规则四面体的高度

C++ push_back 到数组中更改对象的变量