問題タブ [skphysicsbody]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
400 参照

ios - 2つのSKPhysicsBody間の衝突を無効にする方法は?

スプライトキット ゲームでスーパーヒーローに新しいスーパーパワーを追加したいと考えています。

このスーパーパワーが有効になると、彼は他の SKPhysicsBody を通過できるようになります。

contactTestBitMask を 0x00000000 に設定すると、接触検出 (didBeginContact:) のみが無効になります。

dynamic を NO に設定すると、任意の SKPhysics ボディを通過できます (ただし、同時に重力も無効になります)。

接触検出を無効にするだけでなく、ヒーローを通過させたい.

これを達成する方法は?

0 投票する
3 に答える
435 参照

ios - bodyWithPolygonFromPath: メソッドを卵形に使用すると、アサーションが失敗しました

卵形の SKSprite ノードに物理演算をシミュレートしています。ただし、assertion failed エラーが発生します。

アサーションに失敗しました: (edge.LengthSquared() > 1.19209290e-7F * 1.19209290e-7F)、関数セット、ファイル /SourceCache/PhysicsKit_Sim/PhysicsKit-6.5.4/PhysicsKit/Box2D/Collision/Shapes/b2PolygonShape.cpp、180 行目.

以下はコードです:

どうしたの?誰かが私を修正するのを助けることができますか? どうもありがとうございます!

0 投票する
0 に答える
125 参照

ios - iPhone 5 の画面に合わせて SKScene のphysicsBody を 1.5 倍にスケーリングする必要があるのはなぜですか?

iPhone 5 で SpriteKit ゲームを作成しています。画面の端を表すはずの physicalBody が小さすぎるように見えるという奇妙なバグがあり、奇妙なスケーリング係数が必要なようです。

これは、physicsBody を画面の寸法に設定する正しい方法と思われるものです。

しかし、私にとって、これは私の他の物理体を画面の中央にある目に見えないオブジェクトと衝突させ、干渉することなく画面の端からすぐに移動させます.

ただし、これは次のとおりです。

その結果、画面の中央に奇妙なオブジェクトが完全になくなり、予想どおり、他の物理体が画面の側面に衝突します。

え、なに?

0 投票する
2 に答える
74 参照

ios - 特定の物体の異なる衝突点を検出することは可能ですか?

別のボディと接触する場所に応じて、異なる衝突状態を計算させるSKSpriteことは可能ですか? PhysicsBodyたとえば、青いボールが他のオブジェクトの側面に接触すると緑色に変わり、他のオブジェクトの底に触れると黄色に変わる場合。

0 投票する
2 に答える
1093 参照

ios - Sprite Kit で迷路の物理ボディを作成する最良の方法は?

SpriteKit と iOS プログラミングは初めてです。SpriteKit を使用した迷路ゲームに関する新しいプロジェクトに取り組んでいます。迷路の物理ボディを作成する良い方法が見つかりません。この素晴らしいツールSKPhysicsBody Path Generatorを試しましたが、機能しませんでした。おそらく、ルールが必要とする「凸多角形パス」に迷路がなかったためです (よくわかりませんが、単純な .png 画像を試しました逆T字型です)。この仕事をする他の方法はありますか?

0 投票する
2 に答える
185 参照

ios - スプライト キットの出入り領域

プレーヤーが (ポリゴン) 領域に出入りするタイミングを知る必要があります。この領域は SKShapeNodes から構築されます。各 SKShapeNode は単一の直線です。

良いアプローチは、SKPhysicsBody を介してプレーヤーとこれらの行の間の衝突検出を行うようです。プレイヤーがリージョン内またはリージョン外にいるかどうかをフラグで追跡します。

しかし、0.1 x 0.1 のサイズでも、私の SKPhysicsContactDelegate は複数の beginContact メッセージを受け取ります。短い間隔で何度もフラグが立てられ、境界を通過した後に間違った値になることがあります。

SKNode が別の SKNode に出入りするタイミングを判断する正しい方法は何ですか?