問題タブ [skshapenode]
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 - Sprite Kit に bodyWithBodies を実装する
Apple のスプライト キットを使用してゲームを作成しています。現在SKShapeNode
、次のようなオブジェクトを描画しています。
私の実際のスプライトは丸みを帯びたエッジを持っていますが、簡単にするために、最初にこの形状ですべてを機能させようとしています。私はスプライトを完全にうまく描くことができます。ただし、スプライトをカバーする物理ボディの作成に問題があります。スプライトが表面に沿ってどこでも衝突を認識できるようにしたいので、暗い灰色の領域だけをカバーする物理体が必要です。また、スプライトをフォースとインパルスに反応させたいので、ボリュームベースの物理ボディが必要です。
CGPathRef
私の最初のアイデアは、スプライトのイメージを作成するために使用したものと同じものを単純に使用し、それをbodyWithPolygonFromPath
メソッドに渡して、対応する物理ボディを作成することでした。私の形状は凸状ではないため、これは機能しないことがわかりました。
bodyWithBodies
ですから、適切な形状の物理ボディを作成するために使用できるはずだと考えています。3 つの長方形の物理体 (灰色の領域の左側を覆うもの、上部を覆うもの、右側を覆うもの) を 3 つ作成し、それらを使用して、スプライトの灰色の領域を覆う領域を持つ物理体を 1 つ作成します。これを使用して:
ただし、私が抱えている主な問題は、bodyWithBodies
メソッドに渡される配列に入る個々のボディを正しく配置することです。上記の方法を使用することにより、これらの物理体が相互に配置されている場所を制御する方法が明らかにありません。その結果、3 つすべての物理体が の中心で互いに重なり合っていmySprite
ます。
メソッドに物理体を渡す前に、配列内の物理体を互いに相対的にどの程度正確に配置することになっていますbodyWithBodies
か?
ios - アプリ内のタッチで作成される線のサイズを制限する方法
タッチで無制限のサイズの線を作成するコードを作成しましたが、線の始点と終点が小さな距離から最大設定距離まで離れているようにサイズを制限する方法を知りたいですか?
私が使用したコードは次のとおりです。
in the touch ビギンズメソッドと
touchMoved メソッドで。
ありがとうございました
swift - PaintCodeファイルをSKShapeNodeに
作成中のアプリで使用するために、PaintCode ファイルを SKShapeNodes に変換する際に、いくつかのポインターを使用できます。以下に概説するように、私が克服しようとしている特定の問題が 2 つあります。プロジェクトには Xcode 6 beta 4、SpriteKit、Swift、および PaintCode を使用しています。まず、コード:
私が遭遇した最初の問題は、私が生成するほとんどすべての重要な PaintCode ファイルに複数の UIBezierPath が含まれていることです。私の知る限り、SKShapeNode の path プロパティは 1 つのパスしか取りませんが、それらを連鎖させることは可能でしょうか?
2 番目の問題は、グラデーションの色が機能していないように見えることです。
このファイルを実際に SKShapeNode に変換するために私が行ったことは次のとおりです。 1. SpriteKit をインポートします 2. クラス拡張子を NSObject から SKShapeNode に変更します 3. 描画関数の名前を変更します道
この種の変換に関するヒントをいただければ幸いです。ありがとう!
swift - パスを更新すると SKShapeNode が消える
最初に で線を引きSKShapeNode
ます。
これはうまくいきます。画面全体に紫色の線が引かれます。1秒間に60回呼び出される更新関数でその行のパスを更新しようとしています。これにより、ユーザーの指に基づいて線が湾曲します。
更新機能が実行されるとすぐに、行は消えます。のパスを更新する正しい手順を使用しているかどうかわかりませんSKShapeNode
。その方法に関する情報が見つからないようです。を使用してメソッドfingerLocation
から取得します。touchesMoved
touch.locationInNode(self)
objective-c - SwiftでSKShapeNodeストロークが描画されない
私はこのコードを持っています:
shapeNode が表示され、塗りつぶしの色が描画されますが、ストロークは描画されません。Obj-C の iOS 7 に戻ると、同じコードがストロークを描画するために機能します。
ios - Touch iOS Sprite Kit で線を引く
次のコードを使用してスプライト キット シーンで線を描画していますが、何も表示されません。しかし、ノード数は増えます。何が問題なのか誰でもわかりますか。私は永遠にこのコードと戦ってきました
編集 ------ バックグラウンド ノードが削除されたときにコードが機能します。ありがとう