ios7 – SpriteKit:如何模拟磁力

ios7 – SpriteKit:如何模拟磁力,第1张

概述我正在使用iOS SpriteKit开发游戏.我试图在这个游戏中制造一个物体,它会将物体拉向它,当物体靠近它时,力会变大,想象一下磁铁或黑洞.我一直很难搞清楚要改变哪些属性以使这个节点物理实体在路过时吸引其他节点. 在iOS 8和OS X 10.10中,SpriteKit具有 SKFieldNode,用于创建适用于区域中的实体的力.这对浮力,面积比重和“磁铁”之类的东西很有用. 但请注意 – 你从 我正在使用iOS SpriteKit开发游戏.我试图在这个游戏中制造一个物体,它会将物体拉向它,当物体靠近它时,力会变大,想象一下磁铁或黑洞.我一直很难搞清楚要改变哪些属性以使这个节点物理实体在路过时吸引其他节点.解决方法 在iOS 8和OS X 10.10中,SpriteKit具有 SKFieldNode,用于创建适用于区域中的实体的力.这对浮力,面积比重和“磁铁”之类的东西很有用.

但请注意 – 你从该课程中获得的magneticField可能不是你想要的那种你想要的那种“磁铁”游戏.磁场表现为real-world physics at the micro level ……也就是说,它会使移动的带电体偏转.我们通常认为的是磁铁 – 那种粘在你的冰箱上,拿起垃圾汽车,或者做一个悬浮飞行的飞机 – 是这种力量的a higher-level effect.

如果你想要一个只吸引附近任何东西(或某些特定东西)的场地,那么你需要一个radialGravityFIEld. (为了只吸引特定的东西,在字段上使用categoryBitMask,在它应该/不应该与之交互的主体上使用fIEldBitMask.)

如果你想要一个或多或少吸引不同东西的领域,或者吸引一些东西并排斥其他东西,那么electricFIEld就是一个不错的选择.您可以使用物理实体的电荷属性来吸引或排斥它们(负值或正值)或者受到或多或少强烈影响(绝对值大于或小于绝对值).

在iOS 8和之前OS X 10.10,SpriteKit的物理模拟不包括这种力量.

但这并不能阻止你自己模拟它.在场景的更新:方法中,您可以找到物体之间的距离,计算每个与该距离成比例的力(以及您正在模拟的任何磁场强度),并对每个物体施加力.

总结

以上是内存溢出为你收集整理的ios7 – SpriteKit:如何模拟磁力全部内容,希望文章能够帮你解决ios7 – SpriteKit:如何模拟磁力所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1005011.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-22
下一篇2022-05-22

发表评论

登录后才能评论

评论列表(0条)

    保存