どうも!
今回は私が続けている活動の一つである、ゲーム開発の楽しさや辛さについて語っていきます。
活動内容
私はphaser3というゲーム開発用のライブラリを使ってゲームを作っています。
簡潔に説明すると、javascriptのフレームワークで、ブラウザ上で動くゲームを作ることができるものになっています。他の技術と組み合わせることで、クロスプラットフォームのデスクトップアプリケーションを作成することも可能です。
あまりに簡潔なので、詳しくはChatGPTさんの説明をご覧ください。
Phaser 3 は、2Dゲームの開発に特化したオープンソースのJavaScriptフレームワークです。Webブラウザ上で動作するゲームを簡単に構築でき、HTML5技術をベースにしています。以下はPhaser 3の主な特徴です:
- 強力なゲームエンジン
シンプルな2Dゲームから複雑なゲームまで対応可能で、物理エンジンやアニメーション機能などを備えています。- レンダリング
WebGLとCanvasをサポートし、デバイスやブラウザに応じて最適な描画方式を自動選択します。- 豊富なAPI
画像やスプライトの操作、アニメーション、イベント処理、サウンド、物理演算(Arcade PhysicsやMatter.jsなど)など、ゲーム開発に必要な機能を幅広く提供します。- 柔軟性
プラグインの追加やカスタマイズが可能で、さまざまな種類のゲーム(プラットフォームゲーム、パズル、シューティングなど)に対応できます。- コミュニティとドキュメント
活発な開発コミュニティと、公式ドキュメントやサンプルコードが豊富に用意されているため、初心者から上級者まで学びやすい環境が整っています。Phaser 3を使用するには、JavaScriptの基本的な知識が必要ですが、簡単なコードでゲームを作成できるので、初心者にもおすすめのフレームワークです。
私も触っていて思うのですが、プログラミングに抵抗がなければ簡単なゲームは作りホーダイとなっています。
興味がある方は触ってみてはいかがでしょうか。
難関1 アイデアが降ってこない
これは本当につらいです。
特に、何も作業がなく次の作業に取り掛かりたいのに何も浮かばず、さらに良いアイデアが思いつかなくなる。この悪循環が実につらいです。
待てど暮らせど既存のゲームに似ているものや実現可能性が低そうなモノしか思い浮かばないときは地獄です。
そんな難しいことを考えなくても、大体のゲームは完全新規でなく何かの二番煎じなので気にする必要ないんですけどね。
そのあたりは私の性格に由来していると思うので、また別の機会にお話しします。
難関2 完成までがとにかく長い
個人的に一番つらいのがこれで、長いと何が起こるかというと、モチベーションが消えます。
期間が長いことでモチベーションが徐々に喪失、またはある時点でパタリと消えることが殆どです。まあゲーム開発に限らずどの作業でも起きますよね。
さらに、モチベーションの消失ではなく方向性が変わることもあります。作っている最中に「コレじゃないな」「こんなアイデアのほうがうまくいくな」となって方向性が変わってまた変わって、永遠に完成にこぎつけず頓挫してしまう現象です。
また、開発作業として設計+実装(プログラミング)、テスト(デバッグ)、リリースが確定で存在します。このデバッグ作業がとんでもなくしんどいです。
本格的にデバッグをするときにはほぼ出来上がっている状態なので、心の中の悪魔が「早くリリースしちまえよ、楽になるぞ」とささやいてきます。
一応楽しさもある
つらいことばかり挙げてきましたが、もちろん楽しいこともあります。
頭の中のアイデアを形にし、キャラクターが動いた時や、アイデアが面白い等ポジティブな感想をいただいたときはすごくうれしいです。
何ならお金が発生しなくてもそれだけで元気になれます。
あと私が頭を使うことが好きなので、ゲームのロジックを考えるときなどはすごく楽しいです。
続けたいのかやめたいのか
ぶっちゃけ辞められるのであれば辞めたいです。
作るたびに毎回毎回つらい・しんどいと思っているので、できればもうかかわりたくないのですが、これがなくなるといよいよ無趣味人間になってしまう気がしてやめられないです。
ただ作っている最中のプログラミングがとにかく楽しいので、七割は惰性で三割は希望して続けている感じとなります。
ゲーム開発に関してはまだ語りたいことがあるので、また次の機会にもっと語りたいと思います。それでは。
コメント