1

ファイナルファンタジー4などの古い2Dスタイルのゲームを使用して、ある種のマップメーカーを作成しようとしています。基本的に、グリッド上の各正方形が16x16または32x32ピクセルを占める可能性があるグリッドにすべてが設定されていました。

私は小さなことから始めて、最初に主要なことを理解したいと思います。たとえば、128x128のマップを生成するなど。これは、使用可能なさまざまなタイルを表す数値の配列をプログラムにフィードできる必要があることを意味します。次に、プログラムは、配列が指定するようにタイルを配置することによって新しい画像を作成する必要があります(したがって、インデックス0のタイルは次の場所に配置されます。 0,0など)。

終わったら写真を見せようと思っていますが、パイのように簡単なはずです。

私は解決策を探していましたが、写真を並べて表示するのではなく、写真を重ねて表示することしかできませんでした。正しい方向に向けることができますか?これは実際のアプリケーションというよりも学習体験であるため、サードパーティのライブラリに依存する必要がない場合は、それが欲しいです:)

4

1 に答える 1

1

まず、BufferedImage必要なサイズの出力を作成します。

BufferedImage image = new BufferedImage(width、height、imageType);

次に、Graphics2D画像からオブジェクトを取得し、結果の画像に必要な場所に小さい画像の描画を開始します。

Graphics2D g2 = image.createGraphics();
for (BufferedImage img : images) {
  g2.drawImage(img, x, y, null);
}

次に、画像を目的の形式(jpg、png、またはgif)で保存できます。

ImageIO.write(image, "jpg", file);
于 2012-10-13T17:50:09.003 に答える