0

画面に SKSpriteNode がある場合、それをフリックして、サッカー ボールが蹴られる物理現象をシミュレートするにはどうすればよいでしょうか。SKSpriteNode をスローするには? この質問のようなものになると思いますが、フリックする前に最初に指をたどるノードの代わりに、発生するべきではありません。フリックするとノードに向かってスワイプし、指がノードに当たるとサッカー ボールの物理学のように動きます。これを達成するための出発点を誰か教えてもらえますか??

4

1 に答える 1

1

touchesBeganメソッドとメソッドを使用することをお勧めしtouchesMovedます。基本的には、タッチの最後の位置をタイムスタンプと共に追跡し ( を使用)、サッカー ボールがその内部にタッチ位置を持っているかどうかをチェックするNSTimeIntervalたびに ( を使用) 。次に、ボールに与える力を計算します (タイムスタンプを比較し、位置を比較します)、次に実行します。touchesMoved[soccerBall containsPoint:location]

[soccerBall.physicsBody applyImpulse:CGVectorMake(dx, dy)];

dxdyを計算結果に置き換えます。探している結果が確実に得られるように、スケール値を追加することをお勧めします。

于 2015-10-08T18:05:14.340 に答える