問題タブ [sktexture]
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 - SKTextureAtlas フィルタリング最近傍
私はSKTextureAtlas
SKTextures のリストを含む を持っていますが、そこから SKTexture をロードし、そのフィルタリングが SKTextureFilteringNearest であると述べるたびにLinearでフィルタリングするという問題があります。
より低いiOSでのみその問題があります7.1
が、7.1ではすべて正常に動作します。
編集#1
Theis Egeberg は次のように提案しました。
7.1 より前の動作では、フィルタリング モードがアトラス内のすべてのテクスチャ間で共有されていると確信しています。7.0 で "Nearest" を使用する場合は、最も近いテクスチャアトラスと線形のテクスチャアトラスを 1 つずつ作成する必要があります。もちろん、両方をカプセル化するヘルパー クラスを作成できます。」
どうすれば実際にそれを行うことができますか?
ios - アルファ チャネルを使用して SKTexture を UIImage にエクスポートする
SKTexture を外部の画像ファイルにエクスポートできるようにしたいと考えています。次のコードを使用してこれを達成できました。ただし、ビューが不透明ではなく、すべての背景色がクリアに設定されている場合でも、アルファ チャネルが無視されるという重大な欠陥があります。
アルファ値を含む画像をエクスポートできるようにするために、現在のソリューションに変更を加えることはできますか?
テクスチャを画像にエクスポートするためのより明確な方法はありますか?
意図:私がエクスポートしているテクスチャは、SKShapeNode の落とし穴を回避するために、SKShapeNode からのゲーム ロード時に現在生成されています。テクスチャ生成のオーバーヘッドを回避するために、それらを画像としてエクスポートし、代わりにこれらのテクスチャをテクスチャ アトラスから直接ロードしたいと考えています。
ios - SKScene を SKTexture にレンダリングしますか?
スプライト キットに、画面 (現在SKScene
レンダリングされているすべてのノード) をキャプチャしSKTexture
て、CIFilter を適用し、SKTexture を新しい に割り当てる方法はありSKSpriteNode
ますか?
をノード ツリーの親として設定し、フィルタなどを適用してその方法で結果を取得できることはわかっていますが、後で再利用できるフィルタ(または)SKEffectNode
が本当に必要ですか? SKTexture
SKSpriteNode
編集:
考えられる解決策:
うん、それは動作します:
cocoa - SKTexture textureWithImageNamed のメモリ使用量が多すぎる
spriteKit で 360° ビジュアライザーのようなものを作ろうとしています。私のシーンでは、
そして、私はこのようにそれを埋めています:
たとえば、私は 4x23 の 2 次元配列を持ちます。y 軸は 4 ステップ、x 軸は 23 ステップ。の上
私は使用しています
視覚化する適切なテクスチャを設定します。
シミュレーターで実行しているときは完全に動作しますが、実際のデバイスで試してみると、spriteArray を埋めているときにアプリがクラッシュし、xcode が「メモリ エラーのために終了しました」と表示されます。だから私はシミュレータでRAMの使用をチェックし、それが巨大であることを認識しています... 1.5GB; 私のテクスチャは 1220x1220 jpg で、それぞれが約 50kb です。そのため、どこかで一種のメモリ リークが発生しているようです。
誰か助けてくれませんか?
ありがとう
sprite-kit - SpriteKit のテクスチャ アトラスからテクスチャをフィルタリングできません
非常に悩ましい問題を抱えています...
私はピクセル ベースのアートを使用するゲームを持っているので、使用されるテクスチャは 8x8 で、128x128 または必要に応じて拡大されます。
これを行うには、私がする必要があるのは言うだけですtexture.filteringMode = SKTextureFilteringNearest
これで、テクスチャ アトラスを除いて、ほぼすべての機能が使用できるようになりました。テクスチャ アトラスからテクスチャをプルすると、テクスチャがフィルタリング モードの切り替えを拒否します。注意すべきことの 1 つは、テクスチャ アトラスをセットアップする標準プロセスからは機能するように見えることですが、テクスチャ アトラスがシングルトンの場合は機能しません。
通常は、設定が間違っていると思いますが、この問題は SpriteKit にあると思います。理由は次のとおりです。
1) バグは最近まで発生しておらず、何も変更していませんでした
2) このバグは iOS 7 でのみ発生し、7.1 または 8+ では発生しません。
3) 問題は、フィルタリング モードが間違っているということではありません。フィルタリング モードが最も近い 0 に設定されています (テストし、すべてのフレームをログに記録し、モードは正しかったのですが、視覚的には正しくありませんでした)。
そのため、レンダリングのバグです。しかし、それは意味がありません。特に、少しうまくいったように見える場合はなおさらです。他に何か意見はありますか?私は何かに感謝します、私もいくつかのことを試してみます。ありがとう!
注-コードはそのままでios7.1+で問題なく機能することを強調したいので、コードは何らかの形で機能します...しかし、ある時点で機能したため、7.1固有の機能でもありません。
objective-c - スプライトの x 軸方向に応じて SpriteKit のテクスチャが変化する
これは解決するのが簡単な問題のように思えますが、私にはできません。タイトルが示すように、スプライトの向きが左か右かに応じて、スプライトを別のテクスチャに変更する必要があります。これが私がやろうとしたことです:
どちらも機能しませんでした (スプライトの x 軸 == 0 -_- の場合を除く)。
私はこれを読みました: SpriteKit: Change texture based on direction 役に立たなかった.
編集: すみません、スプライトの動きは 2D 空間では完全にランダムであることを忘れていました。そのために arc4random() を使用します。上がったり下がったりするときのテクスチャの変更は必要ありません。でも左右は必須。
私は何か間違ったことを書いているに違いありません:
私のために働いていません。どちらでもない
このスプライトの動きをもう一度明確にするために、
方法。これは次のように達成されます。
}
ios - SpriteKit が SKTexture の読み込みに失敗することがある
現在、SpriteKit と SKTexture のプリロードで奇妙な断続的な問題が発生しています。次の形式でプリロードする画像の配列が複数あります。
これは 90% の確率で問題なく動作しますが、ときどき次のエラーが発生します。
SKTexture: 画像リソースの読み込み中にエラーが発生しました:
これは特定の画像セットでは発生せず、ランダムに発生します。そのため、プレーヤーが正常にロードされる場合とそうでない場合があります。これはメモリの問題でしょうか?_iCounter を使用してテクスチャの読み込みを分割します。これにより、前の画像セットが次の画像セットを開始する前に読み込まれ、同時読み込みが多すぎないようにします。これによりプロセスが高速化されましたが、この断続的な問題がまだ見られます。
他の誰かがこれを見たことがありますか、または何がこれを引き起こす可能性があるか考えていますか?
objective-c - SpriteKit で画像を表示する最良の方法
私は SpriteKit を 1 年間使用しており、非常に快適です。しかし、私がしていることの多くは習慣的なものであり、なぜ私が何かをしているのか必ずしも確信が持てません. 私の画像はすべてテクスチャアトラスでソートされていますが、これらのスプライトを出力するには 3 つの異なる方法があるようです。ObjectiveCを使用してSpriteKitでスプライトを表示する際の違いを誰かが説明できますか? 性能差はありますか?メソッドの 1 つがスプライトをキャッシュしますか? それとも違いさえありますか?
対。
対。