アンリアルエンジンを勉強!
今度会社でプログラムのなにかについての発表をすることになったのでアンリアルエンジンを勉強し始めました。
現在世の中にはunityを使って開発されているアプリがたくさんありますが、unityよりきれいな3Dのゲーム開発ができるということで社内でもアンリアルエンジンに関心を持っている人が多いので、じゃー実際開発するとなったら(しかもブループリントで!)どんな感じなのか?というのを伝えたいと思っています。
ということで計画としては、
アンリアルエンジンのブループリントを利用してゲームを作成する
ゲームのクリア時にスコアをサーバーに残す
サーバーからスコアランキングを受け取って表示
までを作成し
開発過程の記録と自分が感じたメリットデメリットを発表しようと思います。
で、GW中はアンリアルエンジンを使い方を勉強して、今日なんとかゲームっぽいものの作成に乗り出しました。
ツールの使い方を勉強してみてですが、
ゲームのプログラム部分はC++かブループリント(以下BP)をプロジェクト作成時に選択するようになっています。なのでプログラマーとしてはC++一択だと思いますが、なんらかの理由、たとえばプロトタイプをBPで作った場合などはC++で作り直す必要があるので、それならBPで作ったほうがいいということもあり、BPも覚えておく必要があると思います。
で、肝心のBPですが、
使ってみた感じ、プログラマーであれば覚えるのは簡単だと思います。
結局、変数や関数などがグラフィカルになっているだけでプログラムであることは変わりありませんので、むしろ文字を打たない分わずらわしいor簡単にプログラムを組むことが可能かと思います。(BPは開発にマウス操作を多用しますので、昔からの筋金入りプログラマーであればわずらわしいと感じるかもしれませんが、最近の人であればむしろ簡単と感じるかもしれません)
ちなみに、UEのテンプレートにはそのままで即使えるゲーム向けテンプレートがたくさんあるので開発もしやすいです。私は今回横スクロールのテンプレートを使用してみました。
今日はその横スクロールのテンプレートにアイテムを設置してプレイヤーと接触すると画面から消える処理を追加しました。次はそのアイテムを獲得するとスコアが加算され、マップの最後に設置したゴールアイテムを獲得するとゲームが終了するように作りたいと思っています。
そんな感じで非常にゆっくりとしたペースですが、まだ解説本を読みながら進めているので、だんだん慣れてきたらスピードアップするはず・・・と思っております。
次回は画像を用意して、説明しながら作っていければ・・・そしてこのブログの内容をまとめればそのまま発表資料にできればなぁ・・・と思っています。