Skip to content

サンプルプログラム

サンプルプログラムの共通構造

a3jsの様々な機能を組み合わせて作った、実際に遊べるゲームの サンプルプログラムです。それぞれ1つのHTMLファイルで完結していて、 <script type="importmap">でCDNからa3jsを読み込んでいます。 自分のゲームを作るときのテンプレートとしても使えます。

3つのサンプルは共通の構造を持っています。

  • GameCanvasクラスを 使い、スマホ(ジョイスティックUI)でもPC(キーボード)でも 同じ操作で遊べます。
  • スタート画面・メイン画面・ゲームクリア画面・ゲームオーバー画面の 4つのScenereplaceScene()で 切り替えます。
  • 物理演算(initPhysics())・3Dフォント(initFont())・ サウンド(initSound())の初期化を最初に行います。サウンドの 初期化と全画面化はalert()のOKボタンをきっかけに実行します。
  • 時間のかかる3Dモデルの読み込みは、スタート画面を表示している間に Promise.all()でまとめて先読みします(heavyInit())。
  • ゲーム内に登場する物はObjectA3のサブクラスとして定義し、 毎フレームの動きをupdate(dt)に、衝突時の処理を handleCollision()に書きます。

カーレースサンプルプログラム

物理エンジンでカートを走らせてゴールを目指すゲームです。

TPSのサンプルプログラム

キャラクターを三人称視点で操作して敵と戦うゲームです。

フライトシミュレーターのサンプル

鳥を操縦して空を飛び、敵を撃ち落とすゲームです。