kimny blog

zatta

Unite 2017 備忘録

Unite 2017 Tokyoに行ってきました.

events.unity3d.jp

二日間朝から晩まで座っていたため,ケツが痛いです.

各セッションでスライド,動画が公開/未公開のものがありますが,自分の参加したセッションのメモを残しておきます.

1日目

プリキュア

Unity導入について

  • 魔法使いプリキュア!」EDはmade with Unity
  • リアルタイムの可能性を映像作品に

    • 今まではMaya
    • レンダリング工程のコスト低減
    • 週替わりのED
    • VR/ARコンテンツへのつながり
  • モデリング-> アニメーションレイアウト-> LookDevLighting

  • Maya -> Unity

  • カット割に依存しないアニメーション

  • カメラのロケーションを変えることで複数のバリエーションが
  • Maya/Unity比較
    • MAya
      • 1frame/12min
      • 1cut/12day
    • Unity
      • 1frame/5sec
      • 1cut/15sec
    • 48倍効率化!?
  • 従来のED:長期コストをかけて半年放映
  • 今回のED:リアルタイムの導入→視聴者とのコミュニケーション
    • 多角的な放映
    • アニメに入れる

Unityシェーダー開発

NPRについて

  • EDにおけるシェーダー
    • 単一のシェーダー→できるだけ汎用的なNPR
  • 単一のシェーダーで様々なマテリアル表現

    • HakkinenShader
  • シェーダーで要素やディテールを追加

  • セル表現とシェーダー

    • 標準色/影色/二号影
      • テクスチャ及び単色で指定
    • 落ちかげ/受け影
      • 特定部位への影キャンセル
    • 輪郭線
      • 線色と線幅+カメラの焦点距離に合わせた線の太さ調整
    • リムライト
      • スクリーン/加算
    • ハイライト
    • Yグラデーション
      • 「パラ」を出せる
    • 反射/屈折

    • 内部処理

      • 法線情報/UV座標/視点ベクトル/ライト方向ベクトルによる
  • 所感

    • 絵を即座に確認出来る
      • ストレスフリーの作業
    • ゲームエンジンではシェーダのウェイトが高い
    • デザイナーがシェーダーを書く重要性
      • デザイナーが欲しい機能を本人が実装
      • 敷居が低い
      • DCCツールのマテリアル表現より自由度が高い

ワークフロー・パイプライン開発

  • MayaからUnityへ

    • アニメーションの移植

      1. FBXでボーンを
        • ファイルサイズが小さい
        • Deformerが限定される
      2. Alembic(頂点位置をキャッシュ)
        • ファイルサイズが大きい
          • 問題ないと思ったが,長い時はプロジェクト開くのに30分
          • HDDだったため,SSD推奨
        • Deformerを限定しない
        • インポートにAlembicImporterを使用
    • マテリアルの適用

      • マテリアル付きメッシュをインポート
    • カメラのコンバート

      • UnityJapanの小林さんのスライド
  • Shotgunとの連携

    • assetのインポート等の手間を短縮
    • ワンクリックで全て終わり
    • 連携前後で差が15分
    • シーンの構築で時間の差
    • 1/20に短縮

Google Tango/Daydream

  • 情報のアクセスしやすさ,使いやすさのため
  • Spacial Computing
    • 15年ごとの流れ
    • 次はVR/AR/MR
  • spatially awareな情報のやり取り
  • モバイルの普及(3 Billion)

Daydream

  • presenceの感覚
  • カードボードとOculusの間
  • カードボードは1000万出荷した
  • information universalyのためのカードボード,Daydream
  • 三つのコンポーネント
    • 視覚,聴覚,何ができるか
  • 見えるべきものが見える,遅延0
    • しかしシミュレーションには時間がかかる
    • 体の動きから視覚への反映まで20ms以下でないと違和感
    • hard,softともにそれをクリアする
    • Pixel, Android N
  • immersiveな音>ハイポリゴンオブジェクト
    • SDKの中で部屋の大きさ等から正確な音を生成
  • インタラクション

    • R model : 実際動きに合わせてVR内で動く
    • メタファーを使う
  • ベストプラクティス

    • ユーザの環境:座っているであろう
      • 真後ろを見るのは大変
      • 移動も大変
    • 激しい動きは抑える:期間を短く
    • 現実で怖いものは怖い
      • 高所,閉所,開所
      • オブジェクトに入り込む
      • 安全である必要
  • Daydream Rendeler

    • 動的ライティング可能
  • Editorでプレビュー

  • GPUの解析ツール

Tango

  • Virtualなオブジェクトをどのようにリアルにするか

  • 実世界をスマホに理解させる

  • 人は画像一枚で動ける場所がわかる
  • 3つのハードウェアう

    • Depthセンサー
      • 広角カメラ(Motion tracking)
  • Motion Tracking

    • カメラがどこにいるか
  • Depth Prerception
    • 距離,床,壁判定
  • Area LEarning

    • 一度行った場所を覚える
  • peer inside

    • 博物館のミイラの中身を見る

Kudan

Pepper

  • Unityでの実行(Mono)とHoloLensでの実行(UWP)形式が違う
  • ライブラリに注意

HoloLens

  • Mixed Realityの定義

    • Physical RealityとVirtual Realityの融合
    • ARと何が違うか
      • AR:オブジェクトを重ねて表示
      • MR:3D空間上にオブジェクトを表示,インタラクションできる,オクルージョン
  • アプリケーション

    • 2Dアプリ
    • ホログラフィックアプリ
  • Portalで色々できる

  • 光の足し算
    • 外ではあまり使えない
  • holomagisians
  • 1.25-5mの間にホログラムを置くと良い

    • 触らせない
    • ジェスチャで遠隔操作
    • 2Dのウィンドウを出すのは2mが良い
  • トーリーが重要

    • 誰が使うのか
    • 何を表示するのか
    • 目的・対象は何か
  • Technology Drivenはダメ
    • Hololensでの開発が目的では誰も使わない
  • Envisioning

日本列島VR/HoleLenz

日本列島VR

  • 地図CG
  • substance materialの問題点

    • パラメータ変更時に再生成
    • 大きなデータは時間がかかる
    • シェーダでの作成に変更
  • Shader

    • Substanceで汎用素材作成->シェーダ
  • 標準Unity Terrain

    • 境界部分:terrain stitcher
  • 15度刻みで回転:スティック一回で一回転

  • メモリに全国を載せる

    • TerrainのLOD設定を調整
    • 距離が離れたらterrainを消す
    • シンプルなメッシュに差し替え
  • 二種類のカメラを用意

    • 地形:1unit 1km
    • UI:1unit 1m

HoleLenz

  • ステンシル
  • Gateの指向性
  • FOVが狭いので見せ方に工夫が必要
  • グラフィック最適化
  • MR:同じ座標なのにAにもBにもなる
  • 何を捕涌現するかでAR/VR/MRを使い分け

最適化

  • 最適化

    • クオリティを維持してパフォーマンスの向上,メモリ削減
    • なぜ:ターゲット端末での処理速度
  • 「パレードの法則」

    • 8:2の法則
    • 全体の数字は,一部分による影響
  • 直すべき処理を見つける

  • いきなり最適化ではダメ

    • 現状の負荷を把握したい
    • ゴールの明確化
  • 手順

    1. 負荷箇所を探す(プロファイリング)
    2. 直す手段を立てる
    3. 直す
  • Unity標準のProfilerで大体分かる

    • グラフで分かる
    • Window -> Profiler
    • Active ProfilerでAndroid/iPhone上でも
  • Unityのメモリ2種類

    • C#(Mono)
      • スクリプトで使うメモリ,GCされる
      • 予約して使う,アプリ終了まで返されない
    • Unity
      • リークする可能性あり
  • Assetの圧縮も必要かも

  • ロード時間が長い

    • 実は初期化処理?
    • Debug.Logは重い→プロファイリングするときはOFFに
  • AssetBundleを使っている場合

    • 同じテクスチャ等を二重読み込みをしているかも
  • 一瞬だけ画面が固まる

    • ほとんどGCが走っている
    • 特にString操作にメモリをたくさん使っているかも
  • 低いフレームレート

    • 60FPSにしたい→1フレームの処理を16.6msで終わらせる必要
    • ゲームロジック or 描画処理
      • 描画処理の修正を優先
    • PCとMobileでは描画処理の差が
    • MeshColliderは思い->BoxCollider等で置き換え
    • Time -> Fixed ~ :物理判定回数を減らす
    • UI処理は頂点計算に時間がかかっている
      • uGUIはAnimationしているものは別Canvas
  • BeginSample()で囲んでプロファイラを見やすく

2日目

建築におけるUnity

  • BIM(Building Information Modeling)
    • 1つの3Dモデルで情報共有
  • VDC(Virtual Design and Construction)
    • 仮想空間で何度もエンジニアリングを試す
  • 情報可視化のためのVR
  • BIMデータは重い
    • 軽量化していない
    • skpで取り込むと比較的良い
  • AR:見えない部分を見せる
    • 大型の建築:特徴点が少ない
  • MR:サイズ感と仮想の融合

PS VR

  • PS4向け4K360度動画plug-in
  • VRプロジェクションマッピング

  • Unity for PS4

    • ほぼUnity
    • Building SettingでPS4を選ぶだけ
  • UnityでのPS VR

    • renderScaleは1.4(推奨設定)
  • PlayMaker

    • トーリーの分岐が目に見えるAsset
    • シーンごとに作成
  • uSequencer

    • 開発が止まっている
    • UnityのTimelineを推奨
  • ポリゴン数

    • マシュ:10万弱
    • VRは二回描画されるので多めに見る
  • Shader

    • Unityちゃんットゥーンシェーダーをもとに
  • VRコンサルティング

    • 奥行きの矛盾
      • 常に最前のシェーダーなど
    • 画面真っ暗がダメ
    • フレームレート
      • 60fps死守
  • デザイン

  • マシュを可愛く見せるために

    • Final IK
      • 姿勢と視線:LookAtIK
      • これだけだとロボットぽい
        • 全モーションに対して
          • LookAtIKの変化アニメーションを作成
    • 服と髪の揺れ
    • 胸の揺れ
      • シミュレーションしてベイク
    • インタラクションに関係ない部分
      • モーションにベイク

漫才VR

  • VR絵コンテの必要性
  • 音声認識

    • HMD内臓マイク
    • Julius
      • 無償
      • 商用利用可
      • 深層学習
      • オフライン
  • 観客も楽しむ

  • 360度動画はファイルが大きい
    • commitしない
    • metaファイルだけあげる
  • 音声の収録を一本化する
    • 別撮りだとタイミング合わせの編集が必要
    • ハッカソンでは時間が足りない
  • MVC(Model View Contololler)

CAD VR

  • SYMMETRY
    • 可視化のためのツール
  • 高速化>コードの可読性

Asset bundle

  • AssetBundle Graph Tools
  • AssetBundle Browser

東大 知覚

  • VRにおける触覚

    • メリット:操作性,臨場感,楽しさの向上
    • 触覚-快楽,安心感
    • 触覚提示手法の種類
    • 問題点
      • 専用デバイスが必要
      • 高コスト
      • 汎用性
  • クロスモーダル現象

    • かき氷のシロップ
  • 空間知覚

    • ほぼすべての感覚を統合することで構成される
    • 映像によって三次元的に空間知覚を操作できる
  • VRは感覚・知覚をHackする技術

  • ハンドプレゼンス

    • 自分らしい手を作る
    • 身体所有感(心理学)
  • 動きが一致していれば,自分の手だと思う

  • LeapMotionだとトラッキング漏れでプレゼンス低下
  • コントローラで動きを制限する方法もあり

  • Proteus Effect

    • VRにおけるアバターの身体特性が認知・行動を変える
  • 自分の手の大きさで物体のサイズ知覚が変わる

  • まとめ

    • 「人間が身体を認知する仕組み」はまだまだ未知

VRにおけるキャラクター表現

  • 魅力的なキャラクター表現

    • 不気味の谷現象
    • プレゼンス
      • 目の重要性
        • 目のハイライト
          • 死んだ魚の目
        • アイコンタクト
          • 目があう
          • Look At
        • まばたき
      • 口の重要性
        • 呼吸
          • 呼吸音
          • 呼吸の動き
      • その他
  • キャラクタを生かす