Arduboy ゲーム開発の基礎知識

ここはArduboyでゲーム開発を行う基本技術を説明するページです。

ビットマップの表示

ビットマップデータを配列で定義します。
こちらのArduboy用ドットエディタで描いた絵をデータ出力できます。
Arduboyには3つのメモリがあり、ビットマップデータは次の書式でPROGMEMというメモリに配置します。
・const unsigned char 配列名[] PROGMEM = { データ }
・drawBitmap(X座標, Y座標, 配列名, 幅, 高さ) で表示

●サンプルコード06 ※ビットマップを表示
#include <Arduboy2.h>

Arduboy2 arduboy;

const unsigned char wws[] PROGMEM = {
 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15,
 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15,
 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05,
 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05,
 0xfc, 0xfc, 0x00, 0x00, 0xfc, 0xfc, 0x00, 0x00,
 0xfc, 0xfc, 0x00, 0x00, 0xfc, 0xfc, 0x00, 0x00,
 0xfc, 0xfc, 0x00, 0x00, 0xfc, 0xfc, 0x00, 0x00,
 0xf0, 0xf8, 0x9c, 0x8c, 0x8c, 0x8c, 0x8c, 0x8c,
 0x1f, 0x1f, 0x1c, 0x0e, 0x07, 0x1f, 0x1c, 0x1e,
 0x0f, 0x07, 0x00, 0x00, 0x1f, 0x1f, 0x1c, 0x0e,
 0x07, 0x1f, 0x1c, 0x1e, 0x0f, 0x07, 0x00, 0x00,
 0x18, 0x18, 0x18, 0x18, 0x18, 0x1c, 0x0f, 0x07,
 0xa0, 0xa0, 0xa0, 0xa0, 0xa0, 0xa0, 0xa0, 0xa0,
 0xa0, 0xa0, 0xa0, 0xa0, 0xa0, 0xa0, 0xa0, 0xa0,
 0xa8, 0xa8, 0xa8, 0xa8, 0xa8, 0xa8, 0xa8, 0xa8,
 0xa8, 0xa8, 0xa8, 0xa8, 0xa8, 0xa8, 0xa8, 0xa8,
};

void setup() {
  arduboy.begin();
  arduboy.setFrameRate(10);
}

unsigned char tmr = 0;
void loop() {
  if (!(arduboy.nextFrame())) return;
  tmr++;
  arduboy.clear();
  arduboy.drawBitmap(tmr%128, 16, wws, 32, 32, WHITE);
  arduboy.display();
}

Arduboyでゲーム開発のページへ移動
プログラミング、ゲーム開発の書籍を執筆します
メールはこちらへ: