2016-05-18 20 views
1

SKSpriteNode私は、凹状のパスedgeChainFromPathから生成された静的なボディを持っています。このノードをハウスとしましょう。SpriteKit SKPhysicsBody broken collisions

rectangleOfSizeで生成された動的正方形のボディを持つ別の種類のSKSpriteNodeもあります。このノードをボックスとしましょう。私のシーンで

は、スローされボックスは別名にimpulsedし、それらの両方が遺体を持っているので、ボックスと衝突し、離れてバウンスする必要があります。

私はシーンをスクロールしているので、上記の正確に同じハウスの新しいインスタンスを作成しています。

問題私がいるは衝突は完全に、または部分的にいくつかののために壊れているということです。 ボックスと衝突一部家が正確に彼らが必要として、いくつかは、ボックス本体のみのいくつかのランダムなセグメント上のに衝突し、そしていくつかは完全にボックスとの衝突を無視します。

この問題はiPadでのみ発生し、iPhoneでは発生しません。 iPad Simulatorと本物のiPadデバイスで起こります。

問題は完全にランダムでランダムに発生しますハウス

私はの本体edgeLoopFromPathで作成しようとしましたが、問題は残ります。

また、私は物理学を描いており、ハウスのフィジックスボディは正確にそうであるように見えます。

話す価値のあるシーンやノードには特別なことはありません。

SpriteKitSwiftiOS 9で使用しています。


更新

問題がノード上のスケールを設定しているように思えます。私はそれをすべての画面サイズでユニバーサルな外観にするために行う必要があります。それでも解決策/回避策を探して

...

+0

ビジュアルフィジックスの表現を有効にして、すべてがうまく見えることを確認しましたか? – Whirlwind

+0

@Whirlwind私が言ったように: "私は物理学を描いている"。あ、はい。 :) – damirstuhec

+0

シーンに動きの速いオブジェクトがありますか?また、衝突する可能性のあるノードの位置を手動で変更している場合は、奇妙な動作が発生する可能性があります。 – Whirlwind

答えて

0

これはedgeLoopF​​romPathがあなたの家のためのエッジを持つ中空の箱ではなく、ボリュームのものを作成する可能性があります。

私はbodyWithPolygonFromPathを使用して、正確なCollisionDetectionをボックスと家に追加してみます。

+0

それも試してみました。うまくいきませんでした。 – damirstuhec

関連する問題