問題タブ [gameplay-kit]

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 投票する
1 に答える
192 参照

ios - Generating random numbers with GKRandomSource

I am using GKRandomSource in a struct to return a random inspirational quote in the view. Is there a way to return that random number and omit the prior entry? That way the user doesn't receive the same quote twice in a row.

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

swift - Swift 3: matrix_float3x3 を SCNVector3 に変換してみてください

Swiftで3Dゲームを作ろうとしています。敵にGKGoalを使用してパスをたどらせたい。GKAgent3D回転プロパティ タイプはmatrix_float3x3ですが、SCNNode の回転プロパティはタイプSCNVector4です。

シンプルなSwiftを使用してmatrix_float3x3SCNVector4に変換するにはどうすればよいですか?

既に Web を検索していますが、GameplayKit を SceneKit や GKAgent3D と共に使用する方法に関するドキュメントはほとんどありません。

行列の回転と角度に関する数学のドキュメントと関数を見つけました (例: 3×3 回転行列の分解と構成) が、これは SNVector4 ではなく SNVector3 の XYZ 角度を返します。

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

sprite-kit - Gameplaykit: GKStatemachines を使用して複数のオブジェクトを管理する

ゲーム プレイヤーが移動できる多数のスイッチ スプライトを持つゲームを書いています。
「Game-play-kit」ステート マシンを使用してコードを整理するつもりでした。
複数のステート マシンを管理する方法がわかりません。具体的には、スイッチを配列に格納し、各スイッチ オブジェクトにステート マシンが含まれてい
ます。プロパティを変更するために、GKState クラス内から「親」スイッチを参照するにはどうすればよいですか (この場合、新しいアニメーションを実行していますか?)

これは私のスイッチクラスです:

これは私のスイッチネットワーククラスです:

GameScene 内から切り替えを開始します。

これが私の質問です。
switch statemachine gkstate クラスの中から、アニメーションを変更するのは誰ですか?
ステートマシンを保持する親スイッチ オブジェクトに何らかの方法でアクセスする必要がありますか?

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

ios - GameplayKit: 弾丸を発射するための GKComponent の実装に関する提案

SpriteKit で作成された 2D ゲームのすべてのエンティティ/コンポーネントを実装するために GameplayKit を使用しようとしています。私が作成した最初のコンポーネントはSpriteComponentです:

これは、シーンに追加する必要があるすべてのコンポーネントで使用されることを意図しています。次に、弾丸を発射するためのコンポーネントを追加したいと思いました。これをFiringComponentと呼びます。箇条書きはグラフィック アイテムであるため、 SpriteComponentを実装するエンティティである可能性があるため、次のコードを記述し ました。

次に疑問があります。FiringComponentは弾丸エンティティをシーンに直接追加する必要がありますか? FiringComponentの可能な実装は、ゲーム階層に追加され、各フレームで更新されるBulletエンティティを追加することです。しかし、このロジックには欠陥があると思います。この方法では、ゲーム シーンだけでなく、すべてのエンティティを保持して定期的に更新するオブジェクトを指す変数がコンポーネントに必要になるからです。このように、弾丸を発射するためだけにゆがんだコードを書かなければなりません。私はそれを実装するためのきちんとしたクリーンな方法を探しています:何か提案はありますか?

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

swift - Swift 3: クラスが正しく機能しない

という名前のクラスがありFlashyPaddleEffectます。別のクラスでも言及してGameSceneいますが、適用すべき効果はありません。パドルは青と白で点滅しているはずですが、白のままです。パドルも青色のときに物理ボディを失うはずです。

他に情報が必要な場合は、遠慮なくお尋ねください。

注:私が提供したコードには問題がある可能性があります (インデントがあるため、各行に 4 つのスペースをインデントしてコードを作成するのは非常に困難です。申し訳ありません)。

回答ありがとうございます。PS 初めての質問なので、私を厳しく判断しないでください。