iモード携帯電話用Java(iアプリ) Part 6
■ このスレッドは過去ログ倉庫に格納されています
0266258
NGNG// マップデータ
byte[][] map = new byte[MAP_WIDTH * MAP_HEIGHT];
final int PATTERN_WIDTH = 16;
final int PATTERN_HEIGHT = 16;
...
// メインループ内の背景描画
// BG面の描画範囲を決める。mapX、mapYはマップ表示座標(ドット単位)
int x0 = mapX / PATTERN_WIDTH;
int y0 = mapY / PATTERN_HEIGHT;
int x1 = (mapX + WIDTH - 1) / PATTERN_WIDTH;
int y1 = (mapY + HEIGHT - 1) / PATTERN_HEIGHT;
for (int iy = y0; iy <= y1; iy++) {
for (int ix = x0; ix <= x1; ix++) {
// 表示される領域を描画
// Bgクラスのキャッシュ機構で、drawImageの呼び出しは最小限に抑えられる。
bg.put(ix, iy, map[iy * MAP_WIDTH + ix]);
}
}
bg.draw(g, mapX, mapY);
■ このスレッドは過去ログ倉庫に格納されています