を設定すると、それが.setColor(X、X、X、1)このような円の境界のことが可能です私はすでに500のスプライトを参照しています。 012を使用したくないです。Libgdxスプライトの色
答えて
カスタムシェイダーで1回のパスで行うには、ソーススプライトを特定の方法でエンコードします。このように:
今、あなたは、補間係数としてRチャネルを使用して白と自分の境界線の色をブレンドすることができます。あなたはSpriteBatchのソースコードから頂点シェーダをコピーして、このように見えるようにフラグメントシェーダ主な機能を変更することができます。
vec4 texColor = texture2D(u_texture, v_texCoords);
gl_FragColor = vec4(mix(vec3(1.0), v_color.rgb, texColor.rrr), v_color.a * texColor.a);
ちょうど私が探していた、ありがとう!これは仕事を完了させるはずです。 –
2つの異なるテクスチャを使用してください.1つは塗りつぶし円で、もう1つはストロークだけです。 libGDX Sprite
クラスのsetTexture
メソッドを使用して、スプライトまたは塗りつぶされた円が必要なスプライトのテクスチャを設定します。
これは、テクスチャを一度読み込むだけで済み、スプライトのテクスチャを設定するだけで、テクスチャ全体ではなくポインタをメモリに保持するので効率的です。
TextureAtlasを使用している場合、Spriteを使用するときにUVを何度も再割り当てするためのオーバーヘッドがあります。 TextureRegionまたはSpriteをサブクラス化せず、TextureRegionインスタンスで渡された自身を描画するクラスを作成する方がいいでしょう。 – Tenfour04
この2種類のテクスチャに対して2つのテクスチャ.pngファイルを使用するとどうなりますか?アニメーションのためのtextureRegionと他のすべてのもの。十分でしょうか? –
私は2つのスプライトを参照して、drawメソッドの位置を変えておくこともできます。私はスプライトを100個作成することを選択しました。スプライトは見やすく、パフォーマンス上の違いはないようです。 –
あなたがあなたのゲームを終えたとき、あなたがた場合、私は、上記のTextureRegionの考え方で行くとなりパフォーマンスの問題THENそれだけで私は本当にこれについて心配しますが、私は幾分シェイダーを恐れています。
ほとんどの人は、本当に必要となる前に細部の方法で追いつくため、ゲームを終了することはありません。
- 1. Libgdx - 最大スプライト
- 2. LibGDX:スプライトの色を変更するには?
- 3. スプライトシートのスプライトを配列Libgdx
- 4. スプライト間のLibGdx衝突検出?
- 5. スプライトのLibGDX細い黒い境界
- 6. タイルマップ上にスプライトを表示するlibgdx
- 7. バッチLibGdxで部分スプライトを描く
- 8. 色を変えるスプライトCocos2d
- 9. Libgdxのスプライトの一部で重なり検出
- 10. libgdxの中心からスプライトのサイズを変更する方法
- 11. Libgdx:スプライト内の空白を削除する
- 12. libgdxの本体にスプライトが添付されていません
- 13. Libgdx Box2D本体とスプライトの整列問題
- 14. Spriter Pro 2d搭載のスプライトをLibGDXにインポートできますか?
- 15. いつかLibGdxのスプライトを点滅させる方法
- 16. LibGDXでCamera.Updateの後にスプライトを描画できない
- 17. libgdx、スプライトのリストを水平方向に移動
- 18. libgdxのスプライトに円運動を適用する方法
- 19. Swift 3スプライトの色合いを変更
- 20. スプライトの色を検出する
- 21. スプライトの色をテクスチャと異なる色にします。
- 22. Libgdxでスプライトを処理する方法は?
- 23. LibGdx - スプライトをラインパスに従うようにする
- 24. Libgdxスプライトがブラウザに描画されていません
- 25. LibGdx Box2dコリソンがスプライトと一致しない
- 26. Libgdx/Androidでスプライトを描画する方法は?
- 27. LibGDXの別のスプライトの起点の周りにスプライトを回転させるには?
- 28. libgdx 1つのスプライトのように複数のスプライトにアルファを設定する方法
- 29. LibGDX段階が黒色にフェーディングする
- 30. Libgdxで回転後のスプライトと境界のある矩形の整列
円の内側は純粋な白のままでなければならず、境界は任意の色にできますか?これはカスタマイズされたシェーダで行うことができます。 – Tenfour04
まさに今、私は空白のスプライトを使用していますので、私のゲームは色を動的に変えることができるので、シェーダをルックアップしますが、別のスプライトを描くよりも安価ですか? –
カスタムシェーダは、レンダリングごとにカスタムシェーダとデフォルトシェーダの間を何度も行き来することなく、すべてのシェイプをバッチで描画することができれば、はるかに安いでしょう。しかし、スプライトを設定してアウトラインと内部部品を別々のカラーチャンネルにエンコードする必要があります。私は後で自分のコンピュータで説明を書くことができます。 – Tenfour04