やらなイカ?

たぶん、iOS/Androidアプリの開発・テスト関係。

Unite 2016 Tokyo に行ってきました #unite2016tokyo

Unite 2016 Tokyoに行ってきました。去年はVR系セッション優先で聴講しましたが、今年はVR、最適化、絵づくりあたりを満遍なく。

講演資料は下記ページで即日公開、動画も近々公開されるということで、印象深かったメモのみ。

Unity - Unite 2016 Tokyo 講演ガイド

DAY 0

トレーニングデイのコース A「Unity サービス実装ワークショップ」に参加してきました。Unityのクラウドサービスである Cloud Build, Analytics, In-App Purchase, Adsなどの体験ワークショップ。

Cloud Build以外は使っていなかったのですが、AnalyticsとGame Performance*1は適用も簡単で、早速自社プロダクトに組み込んでFabric*2と比べてみようかと。

このワークショップでは、教材のプロジェクトだけでなく、UnityのインストーラWin32/64/MacOSX)まで入ったUSBを配布され、プロジェクトはごく最小限のエディタ操作とコピペで動作、さらにはCloud Buildの体験にはGitHub上のプロジェクトをforkするだけと、かなり至れり尽くせりの(安全サイドに倒した)ワークショップでした。

この手のワークショップ、これまで主催側として上手く行った例がないのですが、やはりこれくらい準備しないとダメですね。見習いたい。

DAY 1

モバイル端末向けのUnityアプリケーションの最適化実践テクニック

  • 最適化の前に、良いデータを計測することが大事。各種プロファイリングツールの紹介、使いかた
  • テクスチャ、モデル、オーディオの最適化
  • メモリのフラグメンテーションに注意する*3
    • boxing, foreach*4, 文字列操作に注意
    • JSON操作は、Unity 5.3以降ならJsonUtilityを使うこと
  • PrefabやCanvasを適切に分割する

実践!Oculus Rift - VR開発テクニック

  • Oculus RiftおよびGear VR向けアプリをストアに掲載する申請ができる
  • バイナリは、Store/RC/Beta/Alphaの4種類(4フェーズ)アップロードできる
  • カテゴリにある「先行アクセス」はBeta版などに使える。「コンセプト」はフルゲームでないアプリでも申請可能。
  • 必要なストア画像などはOculus Store Art Guidelineを参照
  • 価格もOculusで審査される。法外な値段はリジェクトされる
  • VR酔いの程度を三段階にレーティングされる

ハードウェア性能を引き出して60fpsを実現するプログラミング・テクニック

DAY 2

ホンモノ志向のVR空間づくり

  • 3Dをどう見ているか
  • リアル世界で生活して経験を積んでいるので、写真でも立体や遠近感を得られている
    • 知っているものがあるとスケールがわかり、距離もわかる。道路標識とか
    • 線で描かれた立方体を、立方体だとわかる
    • この感覚は、13歳くらいで習得できるらしい
  • 静止画ではわかりにくくても、動いているとわかる
  • Oculus Frameworkの"Teleportation"は参考になる
  • 黄金比、フィボナッチ、Rule of 3rd。科学的根拠はない
  • Light/Shadow
  • VRコンテンツを作るとき、単眼でテストする。それで十分立体感を得られるならば、二眼にすればよりよく見えるはず

映像制作のゲームチェンジャー:メイキング オブ ”THE GIFT”

  • カラーボールのシーンは、頂点数がIntegerの最大値を超えてマイナス表記になった
  • ボールは複数あわせて1メッシュにしている
  • ボールのポリゴンは実は粗い。少し小さめの円形に切り取るシェーダで球体に見せている
  • デザイナさんがエディタで作業できるレベルで動く

marza-realtime.com

Fate/Grand Orderにおける、ディライトワークス流Unity活用術

  • バトルキャラはビルボード。槍など横に振り回すもの(奥行き表現があるもの)は3D。Mayaで作ってfbxエクスポート。
  • エフェクトなどMayaでは表現が難しい物はUnity側でエフェクトをPrefabにしてぶら下げる
  • モーションはPlayMaker。カメラ移動、エフェクトの再生もここで。キャラ・モーションが増えたときもActionの追加で済ませる(アプリ更新を避けられる)
  • 宝具(必殺技)演出はuSequencer(カットシーンエディタ)で作成
  • ゲーム開発環境とは別環境の「宝具制作環境」。実行ボタンを押すと宝具が再生される。デザイナが素早く開発できる
  • Unityエンジニア=プランナーでもデザイナーでもプログラマでもない。今後増えてくる役割かも?

マルチシーン編集の使い方

  • Unity 5.3から
  • シーンを並べるほか、レイヤのような使いかたで編集の競合を避けられる
  • ヒエラルキにシーンをD&Dすれば追加で開く
  • 新しいSceneManeger API

Unityとアセットツールで学ぶ「絵づくり」の基礎(ライト、シェーダー、イメージエフェクト)

  • Unity 4までの絵づくり、Unity 5からの絵づくり
  • ぼくのUnityと違う
  • 「色を塗る」のではなく、「光を反射させて色を出す」。要素は、マテリアル×ライト×カメラ
  • 間接光

Making of The Modern Zombie Taxi Co.

  • オブジェクトの選択は、Look at Button (Gazing) が最適
  • 入口をリビングルームにした。プレイヤーをVRに慣れさせる空間
  • ダッシュボードに表示する情報は、通常のゲームより少なくしないとノイズにしかならない。当初11項目を2項目に減らした
  • 道案内も工夫。VR空間内を見てもらえるように、オブジェクトとして配置。
  • チュートリアルも難しい
    • VR経験のない人は、VR世界に興奮する。ゲームを遊ぶことを忘れる。
    • シンプルに、最低限に、同じ情報を繰り返し提示する。
  • ほか、VRでやってはダメなことも試してみた結果なども紹介されていて面白い

所感

トレーニングデイも、懇親会も、そして講演も、楽しめました。 今年から導入された有料S席システムも利用しましたが、聞きたい講演を確実に、しかも並ばず入れるのは快適。

最近よく言われる、講演中のシャッター音問題も、各回開始前アナウンスの徹底の効果なのか、スライド全ページ撮影するような人は見当たらず。ほかのカンファレンスもこうなるといいですね。

関係者、登壇者の方々、ありがとうございました!

*1:クラッシュログを採取してくれるサービス。BetaなのでProライセンスが必要

*2:先月Unity SDKがリリースされた。AnswersとCrashlyticsがそれぞれAnalyticsとGame Performanceに競合

*3:この話題は携帯電話Javaやってた頃を思い出す

*4:arrayをヒープにコピーしてしまう