Googleが開発した「Game Builder」は3Dゲーム開発をしながらプログラミングを覚えられる
先日Googleがコーディング不要でゲーム開発できるGame Builderをブログで発表し話題になっていた。リリース自体は2018年に行なっていて、今回いくつかの機能が大幅にアップデートされている。
今回はGame Builderを試してどれだけ簡単に3Dゲームが開発できるかを紹介したい。
どんなユーザーにおすすめか
このゲームをオススメしたいユーザーは「新しくプログラミングを学びたい人」である。ゲーム内にでてくるLOGIC
はコードを打たないプログラミングであり、楽しんでプログラミングの考え方を学べるのではないかと感じた。
一方で「簡単にゲームが開発できて他のゲーム開発エンジンが危ない」ということは現在の段階ではまったく感じられない。あくまで「ゲームを作るゲーム」である。作ったゲームを公開して誰かに遊んでもらうというような機能もなかった。
ちなみに裏ではUnityを使っている。
Game Builderの特徴について
公式ブログでは5つの特徴が紹介されている。これらの要素が組み合わさり簡単にゲーム構築が可能になる。
Built for gamers
このゲームは「ゲームを製作するゲーム」である。マインクラフトに近い形でオブジェクトや地形を作ることができ、さらにプログラムを組み込むことができる。ゲーマーが楽しんで作れる仕組みになっている。
Always-on multiplayer
複数のユーザーが同時にゲームを開発できる。
No code required
カードをドラッグ&ドロップするだけでロジック(プログラム)を構築できる。パラメーターなどはカードの値をいじることで調整する。
Real-time JavaScript
上記のカードに自分で新しい要素を作る場合、JavaScriptを使って開発ができる。
Thousands of 3D models
Google Polyにある数千の3Dモデルを使ってゲームに取り込むことができる。
環境構築
開発を行う前に必要なソフトウェアなどのインストールを行う必要がある。
ダウンロードリンク
Game Builderのダウンロードはこちらから。
なおGame Builderの利用にはSTEAMというアプリのインストールが必要になる。
アカウント登録
STEAMのアカウントを取得していない人は登録が必要である。
チュートリアルを試す
NEW PROJECTを選択するといくつかのゲームタイプが表示される。ゲームの操作方法を学ぶためにも「Tutorial」を試す。
操作方法
チュートリアルを試しながら「ゲームをプレイするときの操作方法」と「ゲームを作るときの操作方法」を学ぶことができる。
【プレイ時の操作方法】
- 十字キーあるいはキーボードの「AWSD」で移動、シフト押しながらだと走る
- スペースでジャンプ
- Vで視点の変換、Eで武器などを持つ
- マウスの位置で体の向きを変更する
【ゲーム開発時の操作方法】
Tabあるいは画面上部にあるBUILDを選択するとゲーム開発モードになる
- CREATE | 3Dオブジェクトを作成する
- MOVE | 作成した3Dオブジェクトを移動する(terrainは除く)
- ROTATE | オブジェクトを回転する
- SCALE | オブジェクトの拡大縮小をする
- TERRAIN | オブジェクト以外の地形を作成する(壁や地面など)
- TEXT | 画面上に表示するテキストを作成する
- LOGIC | オブジェクトにルールを付与する
- EDIT | オブジェクトに情報や属性を付与する
LOGICについて
ゲーム開発の中で一番重要になってくるのがLOGIC
である。ここにカード形式でアクションや状態遷移などのプログラムを行なっていく。
MOVEMENT
オブジェクトの動きを指定でき、複数の動きをカードで重ね合わせることも可能。上記のスクリーンショットの場合は、オブジェクト自体が回転しながらランダムに動き回るプログラムになっている。
IF THEN
もし〇〇だったら××するというプログラムができる。こちらのスクリーンショットの場合は、オブジェクトがプレイヤーに衝突したらオブジェクトが赤くなる。
HEALTH
主にプレイヤーのダメージの管理に利用する。上記の場合はダメージを受けたら赤くして画面をシェイクしている。また死んだ時は最終時のチェックポイントに戻り体力は回復している状態になる。
GRABBABLE ITEM
武器に対してのプログラムができる。上記の場合はビームがでるようになっている。
PLAYER CONTROLS
操作するプレイヤーの動きの管理ができる。この場合は歩く・ジャンプ・武器をもつことができる。
また歩くスピードやジャンプする高さを設定で変えることができる。
CUSTOM
既存のカードに無いアクションなどを行いたい場合は、JavaScriptでプログラムを行える。作成したコードはカードの1つとして管理して使うことができる。
GAME LIBRARYについて
Tutorialを一通り試した後はいくつかのサンプルを試すことができる。
FPS
FPSゲームのサンプルを試すことができる。
Platformer
アクションゲームのようなオブジェクトの動きなどを参考にできる
Card Demos
いろんなオブジェクトのLOGICの事例を見れるのでGame Builder内でのゲーム開発の参考になる。
ゲーム開発の流れ
上記に紹介した機能を組み合わせると「Game Builder」では以下のような開発の流れになるかと思われる。
- CREATEでオブジェクトを配置
- TERRAINで地形を配置
- LOGICでアクションやプログラムを加える
- 3に必要なアクションが無い場合はJavaScriptでカスタムカードを作成
- 色/向き/大きさ/位置を変更する場合はEDIT/ROTATE/SCALE/MOVEを使用する
1~3の組み合わせでゼルダの伝説やFPSのようなゲームは簡単に開発ができる。簡単なゲームではほぼコードを書く必要がなく、ただIF THENのようなプログラム的な発想を学ぶことができ、複雑なことがしたくなったらコードを書くことになるためステップアップしながら学ぶことができる。
最後に
- 3Dゲーム開発が簡単にできるGame Builderを試した
- プログラミングの発想を学ぶのに最適のゲームである
- LOGICというものを使用してゲーム内でプログラムを組んでいく
- 簡単に高クオリティなゲーム開発をできるようになるにはまだ時間がかかる