イドのなんらか

TRPGしたりキャンプしたりするITエンジニアの人間が書く雑記

HTML5ゲームのデファクトスタンダードな開発環境ってどこにあるんだよ

そんなものはない

どうやらHTML5ゲームの開発界隈はまだ成熟しきっていないようなので,当然ながら開発のスタンダードとなる環境も定まっていないらしい.

まぁゲーム作れるって言われ始めたのが2018年くらいのことっぽい上にデベロッパーもパブリッシャーも少ないから情報がほとんどないのが実情なのだ.

なのでフロントエンドの開発と同様にVSCodeとかを使って頑張ってゴリゴリ書くのが一般的なようである.

 

基本的にはPIXI.jsとかThree.jsとかいったライブラリを使い,あとはTypeScriptで書いてくことになるらしい.

2Dゲーム作るならPIXI.js,3DやりたいならThree.jsを選択するのが賢いらしい.

ちなみにボラギノールタウンはThree.jsを使って作られてるらしい.

 

商用ゲームだと,Egret EngineとかPlayCanvas,CocosとかPhaserとかを使ってたりもするらしい.

後はTiny UnityとかLayaboxとかいうのもあるらしい.

 

らしいらしいといって何もやらないのもアレなので簡単にまとめよう.

選択肢は2つ.描画ライブラリを使って残りをフルスクラッチするか,今出てる未成熟のゲームエンジンを使うかという2択だ.

 

なにはともあれ,今の僕がやるべきことはとりあえず決まっている.

ローカルに仮想マシンを立てて,そこにサーバ立てて,そこに作ったHTML5入れて,ブラウザからアクセスして動くかどうかを試す.

 

HTML5ゲーム本体の開発については,今回はPIXI.jsを使ってみようと思う.

理由としては,ゲームエンジンを介さない方がプリミティブなフロントエンド開発の知識を多く得られるのではないかと考えたからだ.

 

作るゲームは,パフォーマンスのチューニングについての経験も得られるだろうから,簡単なシューティングゲームにしようと思う.

簡易的なゲームエンジンをスクラッチすることになるが,高度な物理演算を実装せずとも衝突判定の実装だけでゲームが作れる点も,STGをテーマにすることのメリットの一つだ.

 

開発に使うサーバは,とりあえずVSCodeのLive Serverを使う.

まずはフロントエンド開発の基礎を学びつつ,Windows PC上のローカルで動くものを作り上げることが大切だ.

その後はWSL Ubuntu上でDockerを使ってサーバを立てて動かしてみようと思う.

ローカルで立てた仮想マシン上に設置したサーバで問題がないようであれば,最後にレンタルサーバないしVPSを使ってデプロイするという算段だ.

 

よって,勉強の方針をまとめると以下の通りとなる.

  1. VSCodeにフロントエンドの開発環境を整える
  2. HTML5+TypeScript+PIXI.jsで簡単なゲームを作る
  3. VSCode上に立てた簡易サーバでテストする
  4. WSL Ubuntu上にDockerを用いてサーバを立ててテストする
  5. VPSかIaaSかを使ってデプロイする

 

意外となんとかなるかも知れない.

まぁWEB開発については完全なる無知of無知なので,間違っている部分や見通しの甘い部分もあるだろう.

 

おそらく,この方針に従って行動するだけでは不十分だろう.

だが上手く行かなかったとしても,そこで何かを学ぶことはできるはずだ.

今はまずがむしゃらにやってみて,問題にぶつかった時に,またそこで考えて見ようと思う.

 

茶番がないので茶番も入れる

今日も朝早くに起きて,セブンイレブンツナマヨおにぎりを購入し,食した.

睡眠をしっかりとって朝食も摂るのは,僕のメンタルの健全化に大きく貢献しているように感じる.

 

寝起き30分はなんもやる気が出ないが,それでも7時に起きて8時におにぎり食ってなんやかんやすれば,8:30には活動できるコンディションが整ってくれている.

それはとてもありがたいことだ.

1年間ニートして引きこもっていたが,人間の身体というものは健全な生命活動を望んでいるということを,良く感じることができる.

 

喜びとともに起きて,誠実に今日を生き,明日に希望を持って夜に寝ようと思う.

それがいつまで継続できるかはわからないが,それを楽しいと思える範囲で,実行し続けていきたい.

 

よし,今日も頑張ることが楽しいと思える範囲で頑張るぞ!!!うおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおおお