2015の24日目です。クリスマス当日になってしまいました。遅れて申し訳ないです。phiさん俺とphina.js思えばphina.js(の前身であるtmlib.js)との付き合いも4年目を迎えようとしています。長いことJavaScriptブラウザゲーム作りを楽しませて頂きました。phiさんをはじめとしたJSゲーム界隈の皆様に感謝を捧げさせていただきます。この記事は...?さてさて、本記事は去る2015年の5月に行われた「tmlib.jsゆるふわ勉強会」にて私が発表したLTの資料をリライトしたものになります。今回はゲーム開発を通じ、Github上のphina.jsプロジェクトにPullRequest貢献する方法を紹介します。phina.jsを使ったゲームを作ることを決意するまずは何はなくとも自分のゲームを作り始めます。どんなゲームを作りたいかを考え、気合を入れて作業に入りましょう。phina.jsをForkするphiさんがGithub上に公開されているphina.jsのプロジェクトをForkします。プロジェクトの雛形を作る開発マシン上に自分のゲームを作る準備をします。initでgitリポジトリ化します。addコマンドでForkした自分のphina.jsをサブモジュールとして追加します。https://github.com/daishihmr/phina.js.gitそしてForkしたサブモジュールphina.js内に、自分のゲーム開発用のブランチを作成します。以後、このブランチのことをゲームブランチと呼ぶことにします。mygameゲームで使うphina.jsはこのブランチでビルドします。ゲーム開発開始!いよいよゲーム開発スタートです。魂の赴くまま、自分が面白いと思うゲームを作りましょう。そんな中、ふとこういうことを思う時が来るかもしれません。「......あ、phina.jsのここんとこ、バグってるや」そんな状況に遭ったら次のステップです。新たにブランチを切ってphina.jsに追加・修正developブランチから新たにブランチを分岐させます。feature/physics機能追加の場合は「feature/○○」、バグ修正の場合は「hotfix/××」というブランチ名にしましょう。分岐したブランチ内で機能追加・修正が完了したら、ゲームブランチへマージします。feature/physicsマージ後もfeatureブランチは消さないでください!変更履歴は大切な財産であるとともに、作成したブランチはのちのち使うことになります。マージしたら再びビルドし、自分のゲームに組み込んで引き続き開発しましょう。../libs/追加した機能にバグがあったり修正自体が間違っていた場合は、もう一度featureブランチに戻って再度修正→ゲームブランチにマージ→ビルドします。ゲーム完成!ついにあなたのゲームが完成しました!公開したり友達に自慢したりストアで販売したりして大いに楽しんでください。リポジトリをみるとfeatureブランチがたくさん出来ているはずです。まとめ今回紹介した流れをまとめると以下のようになります。確実に需要がある機能が出来る(少なくとも一人は使ってる!)実際に使うことで十分にテストできるということだと思います。単なる机上の空論ではない、実戦で「磨き上げた」コードをプルリクすることができます。今回はここまで今回はゲーム開発を通じてphina.jsへ貢献する私なりの方法を紹介しました。これからphina.jsを使ってゲームを作ってみようという方はぜひ参考にしてください。みんなで育てようphina.js!!phina.jsCommentsJavaScriptゲーム作りマン+MagicaVoxelでキャラ作るマン。phina.js好き。シューティングゲーム好き。能登麻美子と結婚したい。