100日後に完成するゲームシステム 88日目「路線変更」

2022年6月1日

テクノロジー 特集

eyecatch ゲーム開発はスピードが命ということがよくわかった、ユゲタです。 このブログシリーズ、100日後といいつつ、1年以上も時間をかけて書いています。 実際この半年ほどは、別の会社の業務を請け負ったりしながら、ラジオも毎日配信しつつ、大変な業務をこなしていたという言い訳はこのぐらいにして、 途中で、「ゲームマーケティング」というアイデアを、初めて会った人からいただいて、大きな路線変更を施す事にしました。 ちなみに、前回のこのシリーズが2022年2月だったので、実に半年近くも空いてしまって、楽しみに読んでくださっていた人がいたとしたら、まずはお詫び申し上げます。

ゲームマーケティング対応

まず以前書いた記事のゲームマーケティングというキーワードについては、下記ブログを参照してください。 https://myntinc.com/?b=488
ゲームマーケティングをビジネス視点で考える
直前で仕様変更したThree.jsを使ったWebGLバージョンで、内部で使っていたJavascriptライブラリを全て書き直し始めて、改めてもっと効率の良いゲームフレームワークが欲しいと感じました。 それは、UnityやUnreal Engineなどのような、既存のゲームフレームワークではなく、ユゲタの想定する技術が自分で簡単に実現、搭載することができ、拡張性も高く持ちたいというようなフレームワークです。 これって、やっぱりユゲタ的には自分で作るしかないでしょ! という事で、このブログ企画の根幹でもある、ゲームシステムとしてのフレームワークの開発に路線変更をしようと考えました。

どのくらいの工程がかかるのか?

まず初めに考えたのは、「ゲームマーケティング」というビジネスで活用できるゲームとして、色々な方向性も楽しめる「パズルゲーム」を実装できる基本システムを構築したいと思います。 そして、まず取り掛かったのが、「テトリス」です。 実際の画面はこんな感じ。 とりあえず、ブロックが積み上がって、一列揃えば消えて、上段まで到達したらゲームオーバーというシンプル内容です。 ちなみに、実際に遊べるデモは、次のURLです。が、 【注意】遷移してゲームスタートしたら、大きな音がでるので、スマホなどを使って公共の場でプレイする際は気を付けてください。 https://myntinc.com/data/game/tetris/public/tetris/ ※まだ開発中なので、音量変更や、保存処理などは入っていません。

どんなフレームワークを作ったの?

今回のゲームでは、次の様なプラグインを自分で構築してみました。
  1. キー操作、タッチ操作によるコントロール処理やボタン判定
  2. データの読み込みローディング処理
  3. mp3とブラウザ音源を使うサウンド処理
  4. Canvas2Dを使った描画関連の共通処理
  5. テトリスの基本処理
どれもそこそこ時間はかかりましたが、サウンド処理は、ブラウザの制限が多分にあったので、これにとても時間を費やしてしまいましtあ。 ちなみに、侮れないポイントとして、キー操作は、PCでもスマホでも、かなり柔軟に使える仕様にしたので、今後どんなゲームが来てもこのシステムは外せないですね。 そして、WebGLなどの3D処理を扱うタイミングでは、Canvasの描画処理にThreejsを追加して、もっと別の処理が膨らんでいくと想定しています。

今後の展開について

まずは、画面が表示できて、音が出て、動かせて、ゲームができるという状態に辿り着いたので、 次は、これを、ホームページなどで柔軟にAPIみたいに表示ができて、データキャッシュ処理などを搭載する必要があります。 普通に、ブログなどにJSタグを貼り付けたら、ゲームが実装できるようになれば、ファイナルベータ版の完成になりますね。 その後は、それらを有料で使える様な仕組みを作るための課金サービスとの連携をして、ビジネスに繋げてみたいと思います。 なかなか面白くなってきましたね。 色々なコラボレーションもお声がけいただいているし、さまざまな業界への提供を考えているので、何がピンときたという人は、是非お便りでも書いてくださいませ。

このブログを検索

ごあいさつ

このWebサイトは、独自思考で我が道を行くユゲタの少し尖った思考のTechブログです。 毎日興味がどんどん切り替わるので、テーマはマルチになっています。 もしかしたらアイデアに困っている人の助けになるかもしれません。