問題タブ [sprite]

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

c# - Direct3d/C# - スプライトに描かれた四角形の下の領域をぼかす

それを行う方法はありますか?半透明のウィンドウであるはずの長方形を描いています。半透明のテクスチャを描画することで透明にすることができましたが、ウィンドウの下にあるものは何でもぼかしたいと思っています。

通常 (例: GDI を使用)、領域のビットマップを作成し、それをぼかして、ウィンドウの背景としてペイントします。Direct3D では、既にレンダリングされている領域を取得する方法さえわかりません。あるいは、別のアプローチがあるかもしれませんね。助けてください。

0 投票する
2 に答える
4278 参照

c# - xna:3Dオブジェクトの背後に2Dスプライトを表示します

私は3Dグラフィックスの初心者で、xnaとcsharpを学んでいます。

2Dの背景の前に描画したい3Dオブジェクトがあります。3Dオブジェクトは単純で、単なる線です。2次元のVertexPositionColor[]から作成しました。

次に、PrimitiveType.LineStripを使用して描画しました。

また、Spritebatch.drawで表示したTexture2Dがあります。

何が起こっているのかというと、背景の後ろに線が表示されているので、線が見えません。

しかし、spritebatch.drawにコメントすると、そこに行が表示されます。

助けてください..

0 投票する
4 に答える
13934 参照

xcode - スプライトの画像差し替え - iPhoneのcocos2dゲーム開発

スプライト画像を変更したい。

たとえば、次のように言います。

ここで、スプライトはすでにレイヤーに追加されています。アクセスできる mainSprite (ポインター) があります。

私が変われば

それは完全に機能します。しかし、ここでは不透明度の代わりにスプライト画像を変更したいと考えています。

しかし、方法がわかりません。

0 投票する
2 に答える
1670 参照

actionscript-3 - スプライトの x、y 座標の定義と、特定の場所でのオブジェクトのペイントの違い

私には仕事があります:

1 つのキャンバスに約 100 個のスプライトを配置する必要があります (その上にグリッドが用意されています)。それらを目に見えない(円)石としてボード上に配置し、マウスオーバーでのみ見えるようにする必要があります。

私が遭遇した問題は次のとおりです。これらのオブジェクトをグリッド上のノードに正確に配置できません。

例えば

石を次のように定義すると (前述のように、これは単なるスプライトです)、次のようになります。

彼らはノードに座っていません...画像を参照してください: http://img.skitch.com/20091014-kuhfyjeg1g5qmrbyxbcerp4aya.png

そして、私がこのようにすると:

石はグリッド ノードに正しく表示されます ...

したがって、これら2つのアプローチの違いは何だろうか。

また、石のクラスに正しい座標を渡す必要があると思います...石のオブジェクトのいくつかのプロパティを変更したい場合に備えて。たとえば、可視性、または半径。

  1. 座標をstone.x、stone.yとして定義する際の何が問題なのか、教えてください。
  2. 位置が正しくない問題を修正する方法。

問題についてのアイデアを本当に感謝します。私は長い間解決しようとしています:(

0 投票する
4 に答える
14985 参照

opengl - OpenGLを使用してスプライトシートからスプライトをレンダリングしますか?

次のシナリオを想像してみてください。PNG形式のRPGキャラクタースプライトシートのセットがあり、それらをOpenGLアプリケーションで使用したいとします。

個別の文字は(通常)16 x 24ピクセルのサイズ(つまり、24ピクセルの高さ)であり、パディングを残さずに任意の幅と高さにすることができます。このようなちょっと:

ファイナルファンタジーVIのテラ
(出典:kafuka.org

フレームインデックスとサイズを指定して、整数ベースのクリッピング長方形を決定するコードをすでに持っています。

このコードをで実行すると、幅/高さではなく右/下であると仮定してframeIndex = 11, cellWidth = 16, cellHeight = 24、cliprectが返されます。(32, 24)-(48, 48)

実際の質問

さて、スプライトを配置するためのクリッピング長方形とX / Y座標が与えられた場合、これをOpenGLで描画するにはどうすればよいですか?左上にゼロ座標を設定することをお勧めします。

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

flash - AS3/FP9 - スプライトのサイズ変更

サイズが 3264x2448 の JPG をスプライトにロードしました。Sprite を BitmapData オブジェクト (CS3/Flash Player 9 では高さまたは幅が 2880 に制限されています) に描画できるように、プロポーショナルにサイズを変更するにはどうすればよいですか。私の目標は、Soulwire [DisplayUtils][1] を使用してサムネイルを作成することです。以下は、他の小さなスプライトで問題なく動作するコードです。

あなたの提案に感謝します。

0 投票する
4 に答える
5517 参照

performance - XNA-スプライトをマージして描画パフォーマンスを向上させますか?

どこかで、多くの3Dオブジェクトをレンダリングするときに、これらをマージして巨大なメッシュを形成し、描画呼び出しが1回だけ行われるようにすることができると読んだことがあります。したがって、「GPUはその魔法を実行します」と引用しますが、CPUは描画以外の呼び出しに使用できます。

それで、私の質問に対して、これはパフォーマンスを念頭に置いて2D環境で実行可能でしょうか?

たとえば、単純なタイルシステムがあり、ビュー内の各タイルに対して描画呼び出しを行う代わりに、すべてのタイルをマージして大きなスプライトを形成し、それに対して描画を呼び出すとします。

グラフィックパフォーマンスの経験がないので、ヒント、リンク、その他の問題についての洞察は大歓迎です。

編集:私の悪い説明でごめんなさい。私は個人用のタイルエンジンを作成しており、可能な限り用途が広いことを望んでいます。したがって、近い将来にたくさんのタイルを描画する必要がある場合に備えて、最適化したいと思います。

タイルシートを使用しますが、質問で意味したのは、シートから描画されるすべてのタイルを新しいTexture2Dにマージすることでパフォーマンスが向上するかどうかです。例えば:

画面に描画する128x72のタイルがあります。すべてのタイルをループして、描画するタイルごとにdrawを呼び出す代わりに、すべてのタイルをサイズが1280x720の新しいスプライトにマージして描画します。このように、draw()メソッドはフレームごとに1回だけ呼び出されます。私の質問は、3Dを実行するときに3Dオブジェクトを単一のメッシュにマージするので、これによってパフォーマンスが向上するかどうかでした。

私が収集した情報は、draw()の呼び出しはパフォーマンスの低下であり、できるだけ少なく呼び出す必要があるということです。確認または拒否する人はいますか?:)

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

animation - アニメーションスプライトをリダイレクトするcocos2dのベストプラクティスは何ですか?

「防御」スプライトが「攻撃」スプライトに向かってアニメーション化する必要があるゲームを作成しています。しかし、たとえば攻撃者はコースを変更して、アニメーションの途中で別のものを攻撃する可能性があります。アニメーションと宛先を管理する最良の方法は何ですか? 新しいスプライトを追加する前に、スプライトのアクションを削除する必要があると思います。おそらく、共有アクションマネージャーか何かを使用する必要がありますか??

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

actionscript-3 - スプライト グラフィックを使用したトゥイーンライト フェード

白い四角形を描いたスプライト(下)があり、スプライトをフェードインおよびフェードアウトするために使用したいのですTweenLiteが、スプライトを表示または非表示にします。などのサイジングのアニメーション化はscaleX、アルファだけでうまく機能します。何か案は?

0 投票する
2 に答える
2743 参照

graphics - 透明なスプライトを描画するために SDL で GFX rotozoomSurface を使用する適切な方法は何ですか?

Fedora 10 で最新の SDL/GFX ライブラリを使用しており、PNG または GIF 画像を画面にレンダリングしようとしています。透明な PNG をまったく表示できなかったので、透明な部分またはスプライトをすべて白に置き換えました (そしてマゼンタ 255,0,255 を試しました)。次のコードを使用すると、白透明の PNG が正常に表示されます。

しかし、スプライトを回転させようとすると、すべての白いピクセルがドロップされません。上記のコードを次のコードに置き換えて回転させます。

いくつかの良いピクセルの周りに白い輪郭ができてしまいます。GIF 画像でも同じ結果が得られます。

透明な PNG/GIF ファイルを試したとき、SDL_SetColorKey を呼び出さなかったことを除いて、コードは同じでした。次に、PNGがまったく正しく表示されませんでした。私が見つけた奇妙なことの 1 つは、透明な PNG が MS ペイントでも SDL と同じように見えたのに、GIMP/Photoshop プログラムでは正しく開いたということでした。

宛先サーフェスの設定に欠けているものはありますか?

Googleはあまり現れませんでした。実際の例は素晴らしいでしょう。