我們可能想用于游戲開發的資源文件,例如圖片,轉換成二進制的文件并且可以在程序中使用。很多專業的游戲開發都采用了這樣的處理。本文將介紹一種功能不算很強大,但是簡單可用的工具:BINCompiler。通過具體的實例講解如何BINCompiler轉換游戲資源文件,并在MIDP應用中使用。
首先從本站下載中心下載BINCompiler,解壓后雙擊運行。BINCompiler的界面非常簡單:
BINCompiler不支持子目錄,因此你需要把你所有要轉換的資源文件放在一個目錄下。例如d:/temp/files,我們從WTK的DEMO中任意選擇了兩個PNG的圖片,比如LightHouse-0.png ,jc_frame_46.png(他們位于相冊應用程序的目錄中)。選擇Compilation Folder的Brows按鈕,定位到d:/temp/files也就是我們放置文件的目錄,然后選擇輸出的目錄,比如F:/,然后點Create按鈕。這時候BINCompiler就把這兩個文件創建為一個.bin文件了。在輸出文件的目錄中還有一個重要的文件index.txt,我們需要根據這個文件中的信息從.bin文件中讀取圖片文件。
FName Index Pos Size
LightHouse-0.png 0 0 3756
jc_frame_46.png 1 3760 4075
我們使用如下兩個java方法來讀取圖像文件:
//讀取指定文件并返回字節數組
public byte[] readFile(String binfile, int pos)
{
byte buffer[];
int len;
try {
InputStream is = this.getClass().getResourceAsStream("/" + binfile);
is.skip(pos);
len = (is.read() & 0xFF) << 24;
len = (is.read() & 0xFF) << 16;
len = (is.read() & 0xFF) << 8;
len = (is.read() & 0xFF);
buffer = new byte[len];
is.read(buffer, 0, buffer.length);
is.close();
is = null;
System.gc();
} catch (Exception e) {
buffer = null;
e.PRintStackTrace();
System.gc();
return null;
}
新聞熱點
疑難解答