私は2つのSKSpriteNodeを持っています.1つは野球のバット、もう1つはボールです。どちらも物理学のボディを持ち、衝突はうまく機能するか、少なくとも検出されます。私はバットを振るSKActionを持っており、ボールと衝突します。それが起こると、両方が動き始める。私はボールが飛び去り、バットが所定の位置にとどまるようにしたい。どうすればこれを達成できますか?ありがとう!他のスプライトと衝突したときに、physicsBodyのSKSpriteNodeが動かないようにするにはどうすればよいですか?
答えて
bat.physicsBody.dynamic = false
を作ってみましょうか、バットのcollisionBitMask
が含まれていないバットがボールと衝突しないように、それを作る(ただし、ボールバットに衝突しておく)、すなわち、ボールのcategoryBitMask
:
bat.physicsBody?.collisionBitMask &= ~ballCategory // bat does not collide with ball
あなたが行う必要があるでしょう
バットがボールに当たったときにバットを止めたい場合(例えば、2人の接触を設定したり、接触したり、バットのアクションを取り除いたり、バットの速度を0に設定するなど)
OK、明らかに非常に簡単です - SKPhysicsBodyにpinned
というプロパティがあり、これをtrue
に設定するだけでした。
ドキュメントの状態: A Boolean value that indicates whether the physics body’s node is pinned to its parent node. The default value is false. If true, the node’s position is fixed relative to its parent. The node’s position cannot be changed by actions or physics forces. The node can freely rotate around its position in response to collisions or other forces. If the parent node has a physics body, the two physics bodies are treated as if they are connected with a pin joint.
- 1. どのように衝突を検出するが、box2dで衝突しない?
- 2. pygameの衝突をどのようにするにはどうすればいいですか?
- 3. 「プレーヤー」と「壁」との衝突を実装するにはどうすればよいですか?
- 4. 既存のクラスと衝突しないように、Laravelでモデルのネームスペースを設定するにはどうすればよいですか?
- 5. C#でピクチャボックスを衝突させたいときはどうすればよいですか?
- 6. 2つの移動2d指向バウンディングボックスの衝突をテストするにはどうすればよいですか?
- 7. 移動スプライトによる2dスプライトの衝突処理のトップダウン?
- 8. 文字がボックスに衝突したときに論理的な方法でbool変数を使用するにはどうすればよいですか?
- 9. ユニティ3D:ターゲットと球の間の衝突検出がうまくいかない(3d)、ターゲットと球が衝突しないようにする
- 10. ベクトル内のスプライトに対するSFMLとの衝突を検出するにはどうすればよいですか?
- 11. ユニティリジッドボディーがキャラクターコントローラーのように動いて衝突する
- 12. サービスがいくつかのDAOまたは他のサービスにしかアクセスできないようにするにはどうすればよいですか
- 13. C#衝突、ブーリアンが右に動くことができないと言うと、プレーヤーが動かないようにする方法
- 14. 他のコンポーネントが変数にアクセスできるようにするにはどうすればよいですか?
- 15. DefaultMessageListenerContainerが自動的に起動しないようにするにはどうすればよいですか?
- 16. ズーム中にウェブサイトのコンテンツが動かないようにするにはどうすればよいですか?
- 17. Cocos2Dの特定の領域(スプライトでもある)内でスプライトが検出されないようにするにはどうすればよいですか?
- 18. hitTestObject()はどうにかして動作しないように衝突します
- 19. gerritが他のコミットを変更しないようにするにはどうすればいいですか?
- 20. ボーダーを他のものに囲まないようにするにはどうすればよいですか?
- 21. enum名がクラス名と衝突する場合はどうすればよいですか?
- 22. Androidアプリで他のアクティビティにアクセスできるようにするにはどうすればよいですか?
- 23. Sql Serverでエラーが発生したときに自動フィールドが更新されないようにするにはどうすればよいですか?
- 24. サードパーティのXMLスキーマの衝突を解決するにはどうすればよいですか?
- 25. SwiftでScenekitの衝突検出を処理するにはどうすればよいですか?
- 26. ProgressBarがツールバーと共にスクロールされないようにするにはどうすればよいですか?
- 27. Pythonのモジュールシステム内で命名の衝突を避けるにはどうすればよいですか?
- 28. コンボボックスが動いているときにWPFコンボボックスのポップアップが外れないようにするにはどうすればよいですか?
- 29. パンニング時にGoogleマップが移動しないようにするにはどうすればよいですか?
- 30. スプライトにキーコマンドを追加するにはどうすればよいですか?
だから、バットは、一端で開催され、振られていますようにすなわちrealisticly動いていますか? –
はい、唯一のことは、デフォルトで中心点に固定されていることです。したがって、アンカーポイントと物理学のボディのフレームを調整する必要があります。 – almas