問題タブ [sknode]
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.
ios - SpriteKit: 完全なノードのオーバーラップを検出
2 つの SKShapeNodes があり、1 つはエッジ ベースの SKPhysicsBody、もう 1 つはボリューム ベースで、衝突することなくそれらの交差を検出したいと考えています。SKPhysicsContactDelegate コンタクト メソッドが別のボディを通過するときに呼び出されて、これはうまく機能していますが、私の問題は、一方のボディが他方のボディに完全に含まれている場合でも、エッジが交差しなくなっdidEndContact
たときに呼び出されることです。エッジの交差だけでなく、真の接触または重なりを判断する最良の方法は何ですか? 私は試してみましたが、役に立ちませんでした。usesPreciseCollisionDetection
ios7 - スプライト キットが SKAction を使用してノードを移動すると問題が発生する
ブロックの行があるブロック ゲームを作成しようとしています。エンド ブロックを右から左にスライドさせ、他の各ブロックを右に 1 位置移動させます。次に、ブロックをもう一度スライドさせると、すべてのブロックが 1 ポジション左にスライドします。私が抱えている問題は、ゆっくりとドラッグすると正常に動作しますが、すばやく前後にドラッグすると、ブロックがすべて台無しになり、ブロックが互いに重なって移動するため、6 列ではなく 4 列になることです。 2 つのブロックが他のブロックの後ろにあるためです。アドバイスをいただければ幸いです。
これが私のScene.Mのコードです
ここに私のBlock.Mからの私のコードがあります
ios - SKノード!「SKNode」に変換できません
この問題が発生しましたが、解決できません。変数のラップ解除に関するドキュメントがよくわかりません
エラー: (文字列!) -> SKNode! 「SKNode」に変換できません
ありがとう
objective-c - SpriteKit: スプライトを無限に移動するとフレームが不連続になることがある
全て。私は現在、スプライト キットを使用して iOS ゲームを開発しています。ゲームの仕組みには、スプライトを上から下に無限にスクロールするものが含まれます。
私のゲーム シーンには、上、中、下の 3 つのスプライトしかありません。私は何十ものスプライト画像を持っているので、私の解決策は動的に3つのスプライトを作成することです(スプライトが画面全体を埋めることができるように)。新しいスプライト ノードを作成し、下、中、上のスプライトを交換します。
疑似コード: インターフェイス ファイル内:
実装ファイルで:
ゲームの fps は 60 で、ノード数は増加していません。すべて問題ないように見えますが、ゲームで突然ショット チョークが発生し、フレームの移動が連続しなくなることがあります。私の直感では、主な原因は手順 4 にあると思いましたが、解決する方法がわかりません。任意の提案をいただければ幸いです。
createNewNode メソッドは次のとおりです。
ios - SKEmitterNode はなぜ AccumulatedFrame を破壊するのですか?
次のコード ブロックを使用します。デバッグすると、SKShapeNode の累積フレーム{{-160.03586, -42.431793}, {470.03586, 519.50903}}
が{{0,0}, {100,300}}
.
この粒子コード全体をコメントアウトすると、accumulatedFrame
再び意味があります。
nodesAtPoint
で使用するので、意味のあるものにする必要がありますtouchesBegan
。意味のない値を指定nodesAtPoint
すると、関連のないノードも検出されます。これは、accumulatedFrame がすべてにとって奇妙になり、それらがすべて交差するためです...
次のコード ブロックを使用していますが、問題が見つかりませんでした。ここで何が恋しいですか?
swift - swift を使用して名前をハードコーディングせずにスプライトをドラッグ アンド ドロップする
ユーザーに特定のスプライトを画面上でドラッグアンドドロップさせようとしています。これについて私が見た答えは、スプライトの名前をチェックすることです(以下のようなもの)。これを行うためのより良い方法があるはずです。ご意見ありがとうございます。
ios - SKAction: ノードの生成でランダムな遅延を生成する方法
次のコードを使用して、SKNode を定期的に生成します。これらの SKNodes の生成期間をランダムにする方法はありますか? 具体的には、次のコードの「delayFish」をランダムな遅延のあるアクションにするにはどうすればよいですか?
ios - Objective C - タッチを「飲み込む」ための SKNode サブクラス?
そのフレーム(子を囲む最小フレーム)にSKNode
触れると、メソッドによって通知されるように、をサブクラス化しようとしています。touchesBegan::
ただし、SKSpriteNode
子供が触れた場合のみ通知されるようです。メソッドをオーバーライドしようとcontainsPoint:
しましたが、成功しませんでした。
これが私のコードです:
mainChar と nSKSpriteNodes
ノードがタッチされ、画面の残りの部分がタッチされた場合にのみ、タッチ イベントが発生します。
それを機能させるために考えることができる唯一の方法はSKSpriteNode
、背景に透明を追加することですが、もっと良い方法があるはずです!
SKNode
子供が子供に触れているかどうかに関係なく、それが受け取る接触を「飲み込む」ようにするにはどうすればよいですか? つまり、SKNodes
のフレームに触れて、メソッドを介して通知したいのですtouchesBegan::
。
更新:SKNode
これはのフレームの問題だと思います。子供を追加した後に行うと..
フレームは、高さと幅が 0 として返されます。ただし、実行すると[self calculateAccumulatedFrame]
、正しいサイズが返されます。どうしてこれなの?
更新:この質問は完全に混乱しています。透明を追加するSKSpriteNode
か、SKScene
. 皆様、ご迷惑をおかけして申し訳ありません。
ios - Subclassing SKNodes created with SpriteKit .sks scene file
(this is for XCode 6 and iOS 8 beta 4)
Love the new SceneKit editor. I'm successfully loading the scene from .sks file into a custom SKScene class. However, objects inside it are instantiated as default classes (SKNode, SKSpriteNode, etc), and i'm not sure how to bind them to be instantiated as custom subclasses instead.
Currently, I'm getting around that by creating custom classes and linking to sprite nodes as a property, and that works ok