作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想制作一个名为“玩家”的自定义物理主体类型,它由 2 个圆圈和一个正方形组成。该图形看起来像一个正方形,正方形的左右两侧各有一个圆。我正在考虑将自定义多边形制作成这种形状,但是圆圈不会是真正的圆圈,而是看起来更像六边形。有什么想法如何让物理在顶点之间绘制一条曲线而不是直线,或者如何将现有的物体组合成一个新的物体?
最佳答案
仍然需要内置复合主体。没有简单的方法可以做到这一点,但您可以创建一个自定义主体来创建其他主体(例如,扩展一个正方形的自定义主体,创建两个圆形)。只需向自定义主体添加“连接”和“断开连接”方法,这样您就可以在将其添加到世界时添加和删除额外的圆形主体。
然后您可以使用 verlet 约束将它们连接在一起。
至于外观,你需要找到一种方法来自己用 Canvas 绘制它。如果您想了解弯曲多边形的物理原理,您必须自己编写。因此,用图像对其进行蒙皮可能会更容易。为此,只需设置“body.view = myImage”
这有点过时了,但有一些例子: http://flippinawesome.org/2013/12/02/building-a-2d-browser-game-with-physicsjs/
关于javascript - PhysicsJS 中的聚合体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23668005/
我是一名优秀的程序员,十分优秀!