TECH::CAMP VRで100時間かけて学んできた!
どうも、Linです。コロコロマッサージそろそろ購入します。
VRのコンテンツを作れるようになると言う噂の「TECH::CAMP VR」。
あまりにもWebページがかっこよすぎて、参加したい欲望を抑えきれず。

2017年の4月から1ヶ月間TECH::CAMP VRで勉強してきてしまいました。
今日は、あまりその存在が知られていないTECH::CAMP VRの実態を忘れないうちにまとめておこうと思います。
TECH::CAMP VRへの参加で迷われている方はよかったら参考にしてみてくださいね。
テックキャンプVRの基礎カリキュラムで勉強する6つのこと
テックキャンプVRでは、
- 基礎カリキュラム
- 応用カリキュラム
の2つに分かれています。
ここではまずすべての受講生に必須の6つの勉強事項をまとめていきます。
その1. 開発準備(30分)
まずは、VRコンテンツを制作する「Unity」というソフトをダウンロードしていきます。

Unityは基本的に個人でも無料で使うことができますが、Unityに会員登録をする必要があるので、そのやり方などを優しく教えてもらえます。
その2. Unityの操作基礎(60分)
続いては、Unityの操作の基礎を勉強していきます。
たとえば、開発がしやすい画面の配置だったりとか、あとは、簡単にUnityをお触りしていくような感じです。
具体的にいうと、
滑り台に球を落として転がす
というゲームを作っていきます。

ここでは、オブジェクトに重力を持たせる方法や、衝突判定の設定方法などを学んでいくのです。
おそらく、このフェーズで、
「うお!Unityおもしれえなあ!」
と気づくでしょう。
コードもないので楽勝です。
その3. C#基礎(2時間)
いよいよ、プログラミングの勉強です。
Unityでは「C#というプログラミング言語」を使ってゲームを作成していきます。
そのため、当然、VRコンテンツをUnityで作る際にもC#が必須となってくるわけですね。
TECH::CAMP VRでももちろん、C#の基礎を勉強させてもらいます。
ただ、本当の基礎の基礎なので、
hello worldから条件分岐、繰り返しまでですね。
C#特有のEnumの使い方がよくわからず泣きそうになった覚えがあります。
どのようにC#を勉強していくのかというと、
Unityのゲーム画面上や、コンソール上にプログラミングの出力をさせたりして、自分が書いたコードが正しいのかを確認しながら学習を進めていきますよ。
その4. ピンボールアプリ作成(15時間)
いよいよ本格的なゲームアプリをUnity上で作成していきます。
なんと、1970年代に流行ったような、
ピンボールゲーム
を作成していくのです。

このゲーム作成ではゴリゴリC#のスクリプトを作成していきます。
ちょっといきなり本格的なUnityのゲームを作っていくので、心の準備ができてないので一度ここで心折られるかもしれません笑
このゲーム作成を通して、
- ゲームオブジェクトの動かし方
- ブロックやボールが消えるコードの書き方
- ゲーム画面にスコアなどの文字情報を表示させる方法
などを学ばせてもらいましたね。
その5. RPGゲーム作成(25時間)
簡単なRPGゲームを作成していきます。
このRPGゲームとは、FFシリーズとは比べ物にならないぐらい簡単なもので、
宝箱の中の鍵をゲットして、ドアを開けて恐竜のボスを倒す
というものです。

このサンプルゲームの作成によりUnityの基礎を勉強させてもらいました。
具体的にいうと、
プレイヤーがドアに近づくことによって初めてオープンする設定を施すことで、ドアが開くアニメーションの方法を勉強させてもらいました。

鍵をプレイヤーが取得しないと、開かない扉の条件設定なんかも学ばせてもらいました。

このゲーム作成にすべてのUnity基礎が詰まってると言っても過言ではありませんね。
その6. Rayの使い方
続いては、VRゲーム作成にあって重要なUnityの機能の1つである、
Rayの使い方
をみっちり学んでいきます。
Rayとは簡単に言ってしまうと、
見えない光線のこと
です。
この光線をVRゲームでは、プレイヤーの視線で表現したり、

コントローラーの向きによって表したりします。

このRayという光線を使えるからこそ、VRゲーム内でプレイヤーが移動できたり、選択肢を選択したり、ゲーム内で入力できるわけです。
TECH::CAMP VRのカリキュラムでは主に、
ブロックをクリックすると、ブロックの名前を位置情報をコンソールに表示できるゲーム、

クリックした先に箱を移動させるゲーム、
上から落ちてくる箱に球を打ち、消すゲームなどを実際に作りながらRayの基礎を勉強していきますね。

正直言って難しいですが、このあと何度もRayを使ってVRゲームを作ることになるので、しっかり吸収したいところ。
TECH::CAMP VRの応用カリキュラムで勉強する4つのこと
と、ここまでがTECH::CAMP VRで勉強する内容の中でも「基礎カリキュラム」にあたるところでした。
ここからは、TECH::CAMP VRの応用カリキュラム。
一体、どんな応用技を見せてくれるのでしょうか?
その1. イベンダーゲーム
ここでは3つ目のUnityのサンプルゲームを作成します。
ズバリ、
インベーダーゲームですね。

宇宙を舞台に、前から迫り来る敵のビームを避けつつ、相手を破壊してスコアを稼ぐゲームです。
敵を自動的に複製したり、弾を敵に当てたら破壊させるノウハウを学びましたね。
まあ結構むずい。
その2. かわいい2Dゲーム
ここまでは、3DゲームをUnityで作成していきました。
が、ここでは一転して、
スーパーマリオのような2D ゲームを作成していきます。

かわいいキャラクターが迫り来る建物をうまく避けて前に進んでいくというゲームなのですが、
これがむちゃくちゃむずい笑
キャラクターがジャンプする角度の計算に数学の知識が必要になってきます。
高校数学で勉強したアークタンジェントとかサインとか、ラジアンとかがガンガン登場します。
その3. コルーチン
続いては、Unityで重要な機能となるコルーチンについて勉強していきます。
コルーチンとは簡単に言ってしまうと、
プログラムのある処理の実行を一定時間後に設定してくれるもの
です。
たとえば、UnityではゲームのフレームごとにUpdateという関数が読み込まれ、そこの関数がフレームごとに読み込まれていきます。
ここでは例として、
プレイヤーが箱を消しまくるけど、5秒ごとに箱が発生するゲーム
を作っていきます。

ぼくはコルーチンを勉強する時、
「どうせコルーチンなんか使わねえだろ」
と暴言を心の中で吐いていましたが、いざ自分がオリジナルアプリを作成する段階になると、
「こ、この処理が発動するタイミングは自分で設定したい」
と思う瞬間が多々あり、結局コルーチンにお世話になることになりました。
その4. ライティング
お次は、ライティングについてお勉強。
ライティングとは「書く」のwritingではなく、光を意味する「lighting」です。
ここでは、Unity上の光がどのように照らされているのか?
オブジェクトごとに設定を変えるだけで、ゲームビュー上の姿がいかに変化するのか??
ということを自分でいじりながら勉強していきます。
とくにゲームを作ったりするわけではありませんでしたね。
その5. ナビゲーション
お次は、Unityの機能で便利な「ナビゲーション」の勉強です。
ナビゲーションとは、
Unity上のオブジェクトがまるで意思を持ったようなロボットのように動かせる機能のこと
です。
ここでは、球が設定した地点を勝手に動き回る
というゲームを作成しました。

これにより、ゲームに登場させる敵や村人を勝手に動かすことができるようになるでしょう。
その6. 吹き出し
続いては、ゲーム上のキャラクターにクリックすると、吹き出しで喋る
という機能を作っていきます。

この技をマスターすれば、村人に話しかけても喋りかけてくれるゲームを作れるようになりますね。
その7.オンラインゲーム
今度は、Unityで作ったゲームをオンラインゲーム化していきます。
ただ、あまりにも話が難しすぎてぼくはついていけませんでした笑
その8 . スマホVR
と、ここまでがUnityの応用の使い方でした。
ここからはいよいよ、
Unityを使ったVRゲームの作り方
を学んでいきます。
まずはトップバッター、
スマホVR。
スマホをVRHMDにセットして再生すると、VRゲームが簡単に作れるのです。
ここでは、
視線で床の色を選択する
というアプリを作成していきますね。
スマホVRの作り方はいたって、簡単で、カメラを切り替えて、ジャイロスクリプトをアタッチするだけ。
ここまで作ってきた3DゲームだってVR化することができてしまうのです。
ヘッドセットは教室中のいたるところにおいてあるので、いつでもスマホVR作成にチャレンジできちゃいます。

その9. オキュラスVRの作り方
TECH::CAMP VRにはハイエンドVR機械のメジャーどころ、
オキュラス
を常備しています。

もちろん、TECH::CAMP VRのカリキュラムでもオキュラス入門があります。
ただ、ほんのさわりだけで、正直よくわかりませんでした笑
メンターの方にきいたら、
「オキュラスはあんまカリキュラムでやることないので、とりあえずゲームを体験してください笑」
と言われましたね笑
そこで、Robo Recallという廃棄になったロボットたちが襲いかかってくる
という今一番VR業界であついといわれているゲームを体験。
これはすごい!!!
その10. HTC VIVEのVRゲームの作り方
続いては、もう一台TECH::CAMP VRに常備されている、
HTC VIVE
をつかったVRゲームの作り方を勉強していきます。

これはオキュラスと異なり、作り方が明確でわかりやすく、カリキュラムもしっかりしていました。
ここでは主に、
- ゲームをHTC VIVE化させる方法
- コントローラーから線を出してものを掴んで投げる方法
- コントローラーの部品をくるくるさせる方法
- 弓を放ったり、ものを掴んで登ったり、剣を振り回して遊ぶ方法
などなどを学習していきます。
方法はそれほど難しくなくわかりやすかったので、ハイエンドVRの開発をすることになった場合はHTC VIVEを選ぼうと決心した次第です。
もちろん、HTC VIVEでもVRゲームを体験できます。
ぼくは「Space Pirate Trainer」という襲いかかる宇宙船を撃破しつつ、球を避ける
というゲームにはまっていました。
そのため、カリキュラムを進める前には必ずこのゲームをプレイして気合入れてましたね笑
TECH::CAMP VRの1ヶ月はあっという間!カリキュラムが充実しすぎている
と、以上がTECH::CAMP VRで勉強する内容でした。
全部で16個もあるなんて思いもよりませんでした笑
- Unity準備
- Unity基礎
- C#基礎
- ピンボールゲーム
- RPGゲーム
- Ray
- インベーダーゲーム
- 2Dゲーム
- コルーチン
- ナビゲーション
- 吹き出し
- オンラインゲーム
- スマホVR
- オキュラスVR
- HTC VIVE VR
ただ、改めて勉強したことを書き出してみて思ったのは、
TECH::CAMP VRのカリキュラムのほとんどがUnityの3Dゲームの作り方
に割かれている
ということです。
実際に作ったゲームをVR化させるカリキュラムは全体のおおよそ1割〜2割。
残りはそれ以前のUnityでゲームを作成する基礎を勉強していますね。
だから、なんというか、
VRコンテンツを作るためにはUnityとC#の知識が必要になるわけですね。
Unityの基礎が固まった段階でようやくVRのスタートラインに立てる
といった感じ。
TECH::CAMP VR卒業後も引き続き勉強が必要ですね!
これらのカリキュラムが終わると、Unityの基礎が完全に出来上がるので、興味がある方はぜひ参加してみてくださいね。

Lin

おそらく、ブロガー。
今年でフリーランス 6年目。