今日、私は新しいプロジェクトを開始しました。私はJavaでシンプルなハイトジェネレータを作りたいので、私は次のことを試してみました:Java:高さマップジェネレータはバイナリのみを書きます
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
public class Heightmap {
public static int width = 200;
public static int height = 200;
public static void main(String[] args) {
BufferedImage bufferedImage = new BufferedImage(width, height, BufferedImage.TYPE_BYTE_GRAY);
for(int x = 0; x < width; x++){
for(int y = 0; y < height; y++){
bufferedImage.setRGB(x, y, (byte)(Math.random() * 256 + 128)); // + 128 because byte goes from -128 to 127
}
}
File outputFile = new File("heightmap.png");
try {
ImageIO.write(bufferedImage, "png", outputFile);
}catch (IOException ioex){
ioex.printStackTrace();
}
}
}
コードは非常に簡単です、私は次のステップとして、パーリンノイズをしようとする計画します。しかし、最初に私はこの問題を解決する必要があります。heightmap.pngで Generated Heightmap
ピクセルがいずれか完全に白、または完全に黒です。画像には灰色がありません。高さマップにはもちろん必要です。誰かが私が間違ったことを知っていますか?
はBufferedImage.TYPE_BYTE_GRAY
部分ですか?もしそうなら、私は代わりに何を使うべきですか?