Sprite Kit 中的单个粒子和物理

Posted

技术标签:

【中文标题】Sprite Kit 中的单个粒子和物理【英文标题】:Individual particles and physics in Sprite Kit 【发布时间】:2013-11-24 21:03:22 【问题描述】:

我是 *** 的长期用户,但第一次发帖。

我的问题看起来很简单,有没有办法让发射器中的粒子与场景中的物理精灵交互? (例如,如果我使用粒子来下雨,并且我希望它从一个拿着雨伞的人的精灵身上反弹或颠簸。一定有办法,但我没有看到很多关于添加物理的文档到单个粒子。有什么想法吗?

谢谢!

【问题讨论】:

【参考方案1】:

没有。没有办法让 SpriteKit 的内置粒子与物理体交互。您可以控制的每个粒子属性都是SKEmitterNode 的属性,它没有设置粒子物理行为的属性。

事实上,粒子被设计为非常轻量级,因此您可以在 SpriteKit 支持的任何硬件上拥有数千个粒子。物理模拟不是轻量级的。

【讨论】:

很公平。希望是值得的 :) 如果粒子可以做普通精灵可以做的所有事情,它肯定会使粒子变得笨拙。谢谢! 我有一个问题,任何帮助都将不胜感激,如果我真的想制作像我的粒子有物理的效果,我可以将我的粒子添加到透明图像并使用emitterNodes.targetNode = self属性,所以可以使用透明图像的物理来检测任何碰撞和接触? 如果您有问题,请点击“”按钮(位于右上角)并发布新的***问题。【参考方案2】:

有 LiquidFun,它是一个 Box2D 扩展,可以模拟粒子系统的物理特性。该引擎是 Apple Spritekit 物理引擎的基础,您可以在游戏中使用它,但您必须稍微调整一下才能使其运行。有很多关于如何在 ios 项目中使用它的教程。我相信 Apple 将来会在 Spritekit 中添加更多功能,使粒子系统响应物理。

【讨论】:

【参考方案3】:

您可以使用 SKField 来模拟重力,然后在您的雨伞上使用另一个场来击退它。

【讨论】:

以上是关于Sprite Kit 中的单个粒子和物理的主要内容,如果未能解决你的问题,请参考以下文章

Sprite Kit iOS 中的慢动作

用unity2D请问如何让粒子在sprite上面不被遮住

Sprite Kit 碰撞检测和物理

16092001(镜头粒子)

Three.js开发指南---粒子和粒子系统(第七章)

Cocos Creator粒子系统简单操作