#02 環境構築
今回は、Phaser3とViteでHello Worldするまでの環境を構築する方法を説明します。
Phaser3の公式サイトには、Getting Started というチュートリアルがあります。このチュートリアルでは、webpackを使ってビルドしています。しかし、このサイトではwebpackではなく、基本的にViteを使ってビルドします。Viteは、簡単に構築できてビルドが速いというメリットがあります。
環境
現時点での環境です。
- Node.js 18.17.0 (x64) and npm.
- Vite 4.4.5
- Phaser 3.60.0
1.Viteプロジェクトを生成する
ここでも書きますが、分からなくなったら Viteの公式サイト を見ましょう。
npm create vite@latest
以下のように聞かれるので、以下のように答えます。ただし、vite-projectは任意の名前でOKです。
√ Project name: ... vite-project
√ Select a framework: » Vanilla
√ Select a variant: » TypeScript
カレントディレクトリを先ほど答えたProject nameにします。
cd vite-project
2.Phaserをインストールする
npm install phaser
3.index.htmlを編集する
index.htmlを以下のように編集します。
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Getting Started Phaser3</title>
</head>
<body>
<div id="app"></div>
<script type="module" src="/src/main.ts"></script>
</body>
</html>
このindex.htmlは、最低限の設定です。<div id="app"></div>は、main.tsでPhaser.Gameを作成する際に、parentに指定するために必要です。
4.不要なファイルを削除する
├─public
│ vite.svg <=要らない
│
└─src
counter.ts <=要らない
main.ts
style.css
typescript.svg <=要らない
vite-env.d.ts <=要らない
publicディレクトリのvite.svgとsrcディレクトリのcounter.ts、typescript.svg、vite-env.d.tsは不要なので削除します。
5.main.tsを編集する
main.tsも最低限の設定で書いています。今回はテキストで「Hello world!」と表示するだけです。
import Phaser from 'phaser';
const DEFAULT_WIDTH = 640;
const DEFAULT_HEIGHT = 480;
class GameScene extends Phaser.Scene {
constructor() {
super('gameScene');
}
preload() {
}
create() {
const title = this.add.text(DEFAULT_WIDTH / 2, DEFAULT_HEIGHT / 2,
'Hello world!',
{
fontSize: '48px',
color: '#fff'
}).setOrigin(0.5, 0.5);
}
}
const config: Phaser.Types.Core.GameConfig = {
type: Phaser.AUTO,
width: DEFAULT_WIDTH,
height: DEFAULT_HEIGHT,
scale: {
parent: 'app',
mode: Phaser.Scale.NONE,
autoCenter: Phaser.Scale.CENTER_BOTH,
},
scene: [GameScene],
};
new Phaser.Game(config);
6.実行する
npm run dev
http://localhost:5173/にアクセスすると、以下のように表示されます。
