所以我写了一个微生物动画.这一切都很酷,但我认为如果微生物能够吃硅藻并破坏气泡会更好.
问题是微生物是由贝塞尔曲线组成的.我不知道如何以合理的方式检查由贝塞尔曲线构成的物体与圆形之间的碰撞.我想到的唯一一件事是绘制微生物形状并为隐藏的画布起泡,然后检查它们是否绘制到相同的像素.但这会导致哇哇大的性能问题.
代码:https://codepen.io/michaelKurowski/pen/opWeKY
class Cell是单元格,class CellWallNode而是贝塞尔曲线的节点,以防有人需要查找实现.
气泡和硅藻可以很容易地简化为圆形.
javascript performance collision-detection game-physics html5-canvas