問題タブ [skspritenode]

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 に答える
258 参照

objective-c - UIPinchGestureRecognizer のトラブル

わかりました、これに関するいくつかの投稿を読みました (例: UIImageView Gestures (Zoom, Rotate) Question ) が、問題を解決できないようです。

次のセットアップがあります: SKScene、SKNode _backgroundLayer、および背景を構成し、_backgroundLayer にアタッチされたタイルである 9 つの SKSpriteNodes。これらの 9 つのタイルは 3x3 の正方形を形成し、非常に大きいため、ズームインして、これらの 9 つの背景画像の上にある他の SKSpriteNode を確認できるようにする必要があります。

2 つの問題があります。1) ピンチしてズームインまたはズームアウトすると、タッチ位置からではなく、_backgroundLayer の位置 (0,0) からズームイン/ズームアウトしているように見えます。

2) ユーザーが 9 つの背景画像からスクロールできないように、いくつかの境界を追加しました。一般的には機能します。ただし、ズームインしてから9つの背景画像の上部に向かって移動し、ズームアウトすると、境界条件が暴走し、ユーザーは背景画像の外側の黒いスペースを見ることができます. ユーザーがどこにいるかに応じて、ユーザーが実行できるズームアウトの量を制限する方法が必要です。

何か案は?ありがとう!

以下にコードを含めます。

0 投票する
1 に答える
1934 参照

objective-c - -(void)didBeginContact が呼び出されていません。考え?

決して NSLogging ではありません。ビットマスクなどを変更してみました。CGRectIntersects 関数は機能しますが、十分に正確ではありません。また、2 つのノードは完全なボックス形状になっています。私は何が間違っているのでしょうか?前もって感謝します!

0 投票する
1 に答える
140 参照

ios - 単一の SKSpriteNode での複数の衝突 Rect

単一のSKSpriteNodeで複数の Collision Rectsを作成するにはどうすればよいですか? いくつかの果物が空から落ちてきて、バスケットがそれらを収集する必要があるというコンセプトを開発しようとしているように.

そのため、果物がカゴの側面に当たると、その質量と重量に応じて特定の方向に向かって右または左に落下するなど、物理学に基づいた反応が生じます。そして果物がカゴの中心に当たると中に入ったり消えたりします。これを行うには、SKSpriteNode の周りに複数の Rects の物理が必要です。どうすればこれを達成できますか?

0 投票する
1 に答える
684 参照

ios - スプライトをプリロードするにはどの方法を使用すればよいですか?

ゲームの開始時にスプライトノードを作成することでプリロードできることは知っていますが、これを行うより効率的な方法はありますか?

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

ios7 - SKNodes 間で SKSpriteNode を移動する方法

SKSpriteNode をある SKNode から別の SKNode に移動したいと考えています。removeFromParent メソッドは、実際にスプライトの割り当てを解除します。

たとえば、このコードでは、MySprite は SKSpriteNode のサブクラスであり、文字列を出力する dealloc カスタム メソッドを使用して、オブジェクトの割り当てが解除されたことを知らせます。

この場合、スプライトは割り当て解除されます。スプライトへの強い参照を持つことで、removeFromParent を呼び出した後でもスプライトが生き続けるはずだと思っていましたが、そうではありません。

しかし、コメントを外した場合 [self addChild:node2]; スプライトは割り当て解除されませんでした。

私はここでかなり混乱しています。removeFromParent がオブジェクトの割り当てを解除した場合、スプライトは nil である必要があり、nil ノードを親に追加するとエラーが発生するはずです。ではない?ドキュメントには、removeFromParent: 「受信ノードをその親から削除する」とだけ書かれています。ただし、ここでメモリがどのように管理されるかについては何も述べていません。

0 投票する
1 に答える
2514 参照

objective-c - SKSpriteNode 複数のテクスチャ

SKSpriteNode 複数の画像で構成する最良の方法は何ですか?

[SKTexture textureWithImage:image];スケール プロパティを使用していないことがわかりました(カスタム ビットマップ アセンブル イメージで使用すると、小さな がありSKSpriteNodeます)。

倍数間のリンクを作成できるかもしれませんがSKSpriteNode、衝突検出に適しているかどうかはわかりません。

編集:

私のために働く解決策。
このコードは 3 つのテクスチャを取り、GraphicsContextを作成するでそれらを描画しますUIImage。次に、これを複数のテクスチャを持つmy
に追加します。ただし、私の場合、サイズ プロパティを指定することは非常に重要です。そうしないと、ノードは不適切なスケール係数を使用し、テクスチャが小さくなります (非網膜)。UIImageSKNodeSKNode [self setSize:CGSizeMake(WIDTH_HERO, HEIGHT_HERO)];