LWJGLとSlick2dを使用して、大きな画像(スプライトシート)を読み込んで小さな画像に保存するにはどうすればいいですか?

私は基本的なものを少しして、画面全体に芝生タイルを並べることができます。透明なテクスチャを画面に表示することはできますが、大きなスプライトシートからスプライトを読み込む際にドキュメントを見つけることはできません。

画像を小さな画像にするにはどうすればいいですか?それともそれとは別の方法がありますか?

0

1 答え

Slickには正確にこれを行う SpriteSheetクラスがあります。

SlickのSpriteSheetsは、一連の均一なサイズのタイルで構成される大きな画像です。各タイルは、通常、スプライト内のアニメーションフレームです。 SpriteSheet コンストラクタでは、シート内のタイルの幅/高さとスペースと余白(必要な場合)を指定します。

Finally, the getSprite(x, y) method allows you to retrieve the specified tile, as if it were an element in a 2D array. In other words, if you have a SpriteSheet of 16 tiles, that are arranged in a 4x4 grid of tiles, then to get the tile in column 3, row 2, you would call getSprite(3, 2);

私は、 getSprite(x、y)のインデックスは、Javaの配列と同様にゼロベースであると信じています。

4
追加された
うん。私は、他の誰かが信用を得ていると思った。もっと多くの人々がもっと多くのlwjgl質問をして答えるだろう。
追加された 著者 davidahines,
ああ、ちょっと。あなたは24時間後に自分の答えを受け入れることしかできないと私は信じています。あなた自身の答えを受け入れることはまったく受け入れられます。
追加された 著者 jefflunt,
タイルマップをレンダリングするときに、getSpriteメソッドのパフォーマンスが実際に悪くなります。あなたはrenderInUSeを使うべきです
追加された 著者 Nuno Furtado,