-
【Unity】TENCHO DUNGEON移植日記 その2 ~着々と進捗中~(ポイントクリック型ローグライクゲーム)
前回のエントリにも書きましたが、現在、WANPA's STORE製の新作として、Flash版のTENCHO DUNGEONをUnityに移植しています。 ちょくちょくTwitter上では ...
続きを見る
前回のエントリの続きではありますが、ちょっと毛色を変えてエンジニア視点(=実装者の視点)で書いてみます。
TENCHO DUNGEONの「実装最前線」
周知の通り、今回のTENCHO DUNGEONはUnityを用いて作成しています。
ソースをキレイに記載・配置する
もともとParafla!で記述したAction Scriptのコードは存在するので、ロジックの多数は旧コードから起こしていますが、Parafla!では意識していなかったことを、Unityの実装では意識するようにしています。
実際、Parafla!版の方はほぼほぼすべての変数をグローバルで実装しており、完全一人開発仕様のオレオレコードになっているという事実。
…逆に、約10年前に、このオレオレコードの状態でゲームを完成させたと思うと、我ながらゾッとします^^;
Unity版も開発者は私一人ですが、勉強がてらというのもあり、フォルダ構成・クラス設計等、キレイにコードを書くことを意識しながら実装しています。
つい最近出くわしたのが、「プレイヤーのレベルアップ処理を実装する場合、どこに実装するのが一番良いか?」という問題。
候補としては、「戦闘シーンのロジックの最後」「プレイヤーを表すクラスの中」等が考えられます。
「レベルが上がるのはプレイヤーなので、プレイヤーの行為として、プレイヤークラスに持たせるべき」「いやいや、レベルアップはある意味天からの恩恵なので、戦闘シーンロジックの最後に実装すべきだ」といった葛藤がちょくちょく生まれてます(結局は、プレイヤークラスに持たせました)。
また、後々で「Unity フォルダ構成」あたりでググってみると、今の実装上のフォルダ構成と一般的なフォルダ構成がかけ離れたものになってきていたりします。
やはり、この辺りはUnityの実業務の経験・ノウハウがないと厳しかったりします。。。。
まあ、個人でやっている分、仕方がないといえば仕方がないのですが^^;
BitBacketとSourcetreeの導入
その他の特記事項としましては、ソースのバージョン管理をしたかったので、BitbucketとSourcetreeを利用し始めました。
個人での利用ならば無料ですし、慣れれば導入も楽々。
PCをまたいで開発する(macとWindouwの二刀流で開発したい等)場合のソース共有手法としても使えます。オススメ。
尚、Unity Cloud BuildとBitbacketを連携させて、定期自動ビルドをもくろんでみましたが、そもそもにUnity Cloud Buildを利用するにはUnity Teams Advancedの登録(有料)が必要だったので、こちらは断念しました。
TENCHO DUNGEONの「今後」
前回のエントリにも書きましたが、サーバサイドプログラミング用にRuby on Railsには手を出す予定です。
あと、今作で手を出すかはわからないですが、Loom SDKも将来的には手を出したい。
むしろ、Loom SDKに手を出すことこそが、Unityに手を出した一番の理由なので、将来的には絶対に手を出したいと思っています。
Twitterでもつぶやいたのですが、ITエンジニアはモノが作れるのが最大のアドバンテージなので、手を動かして「自分の作品」を色々作って、どんどん世に出すべきだと思い始めました。
最近、ITエンジニアはモノを作れるんだから、大なり小なりモノを作ってどんどん世の中に出すべきだ、それが一番のアドバンテージだ、と思い始めてきました。今はわんぱ君のゲームがメインですが、時間を見つけてどんどん色々作っていこう。
— WANPA ATAYU (@wanpa189) 2018年6月30日
日本再興戦略でいうところの「ポジションを取れ!手を動かせ!」というやつです。
というわけで、引き続き実装を進めていこうと思います。
おまけ
話は変わりますが、ふと、こちらのエントリを読ませていただきました。
外部記事:3Dモデリング未経験の人間がモデリング→Unityへインポートまでしてみた。
頑張れば、わんぱ君の3Dモデリングができるのではないかと…
わんぱ君がVTuberデビューする日も近いかもしれません(白目)。