我是 Stackoverflow 的长期用户,但第一次发帖。
我的问题看起来很简单,有没有办法让发射器中的粒子与场景中的物理精灵交互?(例如,如果我使用粒子来下雨,并且我希望它从一个拿着雨伞的人的精灵身上反弹或颠簸。一定有办法,但我没有看到很多关于添加物理的文档到单个粒子。有什么想法吗?
谢谢!
我是 Stackoverflow 的长期用户,但第一次发帖。
我的问题看起来很简单,有没有办法让发射器中的粒子与场景中的物理精灵交互?(例如,如果我使用粒子来下雨,并且我希望它从一个拿着雨伞的人的精灵身上反弹或颠簸。一定有办法,但我没有看到很多关于添加物理的文档到单个粒子。有什么想法吗?
谢谢!
不,没有办法让 SpriteKit 的内置粒子与物理体交互。您可以控制的每个粒子属性都是 的属性SKEmitterNode
,并且它没有用于设置粒子物理行为的属性。
事实上,粒子被设计为非常轻量级,因此您可以在 SpriteKit 支持的任何硬件上拥有数以千计的粒子。物理模拟不是轻量级的。
有 LiquidFun,它是一个 Box2D 扩展,可以模拟粒子系统的物理特性。该引擎是 Apple Spritekit 物理引擎的基础,您可以在游戏中使用它,但您必须稍微调整一下才能使其运行。有很多关于如何在 ios 项目中使用它的教程。我相信 Apple 将来会在 Spritekit 中添加更多功能,使粒子系统响应物理。
您可以使用 SKField 来模拟重力,然后在雨伞上使用另一个场来击退它。