10.9K Views
April 20, 17
スライド概要
2017/04/15 (土)に開催された「UNREAL FEST WEST '17」で使用した資料です。
今年のGDC17で発表されたアニメーション、物理シミュレーションの新機能についてご紹介します。アンリアルエディタ内で設定と調整が可能な新しいクロス(布)ツールに、揺れ物やラグドールの品質とパフォーマンスを改善する新しい物理モードなど、プロジェクトで使ってみたくなるような新機能です!
Unreal Engineを開発・提供しているエピック ゲームズ ジャパンによる公式アカウントです。 勉強会や配信などで行った講演資料を公開しています。 公式サイトはこちら https://www.unrealengine.com/ja/
Unreal Engine最新機能 アニメーション+物理ショーケース! Epic Games Japan 星野 瑠美子
今回の講演で紹介する内容 リグを使ったアニメーション 新しいクロスツール イミディエイトモード物理 Robo Recallの物理 ライブリンク Unreal Engineブログでも紹介されています! https://www.unrealengine.com/ja/blog/gdc-2017-ue4-animation-and-physicstechnical-showcase
今回の講演で紹介する新機能のリリース予定 リグ + アニメーション作成 新クロスシミュレーション 新クロスツール イミディエイトモード物理 Robo Recallの物理 ライブリンク 4.16 (実験段階) 4.16 4.16 (実験段階) 4.16 4.15/4.16 4.17 (実験段階) 4.16のプレビューリリースは近日開始!
自己紹介 • エピックゲームズジャパンに2016年7月から参加 • エンジン・サポート・テクニシャン ライセンシー向けサポートサイト(UDN)での回答 エディタの日本語翻訳更新(4.14から) • 前職:オートデスクのソフトウェアエンジニア(Maya、Softimageなど)
リグを使ったアニメーション - 4.16 (実験段階) 新しいクロス(布)パイプライン イミディエイトモード物理 Robo Recallの物理 ライブリンク
エディタの中でリグが使える! リグ=柔軟でユーザーに優しい、アニメーションを作成するための仕組み
エディタの中で アニメーションの作成と修正が行いやすくなる!
これまでのパイプライン: DCCツール アニメーションデータ 作成 FBX UE4 アニメーション インポート メッシュに適用 アニメーション ブループリント DCCツールに戻らないとアニメーションを修正できない! ゲーム内 アニメーション
新しいパイプライン: UE4 アニメーション 作成&修正 ゲーム内 アニメーション エディタの中でもアニメーションの作成修正が可能で イテレーションが早くなる!
注意: DCCツールを置き換えてしまうわけではありません!
ゲームプロトタイピング/小規模チーム 簡単なアニメーションをエディタ内だけで作れる!
バーチャルプロダクション セット上でのモーションキャプチャの調整/フィードバックが高速
リターゲットも品質向上! プロポーションが異なるキャラクタ同士にも対応 モーションキャプチャソースからのリターゲットでも役立つ
プロシージャルアニメーション/ランタイムリギング ピストン、歯車といった機械要素のランタイムリギングにも活用可能!
コントロールリグのデモ 簡単なコントロールリグアニメーション作成 アニメーションブレンド リターゲット
アニメーションモードから コントロールリグシーケンスを作成・編集可能
補足:コントロールリグ機能はプラグインで提供
補足:コントロールリグの設定ウィンドウ (アニメーションエディタ)
今後の展開 コントロールリグシーケンスとアニメーションシーケンスの変換 (4.16)
今後の展開 アニメーションブループリントでのランタイムリギング (4.16より後)
今後の展開 エディタ内でのリグ構築 (4.16より後)
リグを使ったアニメーション 新しいクロス(布)パイプライン - 4.16 (実験段階*) イミディエイトモード物理 Robo Recallの物理 ライブリンク • • 新しいクロスツールは実験段階 新しいクロスシミュレーションは4.16から
これまでのクロスパイプライン:APEXの難点 APEXはオールインワンSDK:シミュレーションとレンダリング両方を扱う ただしUE4はレンダリング機能は使っていない
これまでのクロスパイプライン:外部ツールが必須 クロスの制作に外部ツール(APEX DCCプラグイン/APEX Clothing Tool)が必須 調整も外部ツールに戻らないと行えない
新しいクロスパイプライン:NvClothの統合 Nvidiaと共同で低レベルクロスシミュレーション(NvCloth)を統合 シミュレーションデータへのアクセスも改善
新しいクロスパイプライン:エディタ内でクロス作成・調整 エディタ内でのクロスの作成 パラメータのペイント これからさらに拡張していける!
これまでのクロスパイプライン DCCツール メッシュ作成 APEXアセット 作成 FBX APX メッシュ インポート APEXアセットを メッシュに適用 UE4 修正が必要? 布メッシュ完成
新しいクロスパイプライン DCCツール メッシュ作成 FBX UE4 メッシュ インポート 布アセット 作成 パラメータ 調整 修正が必要? 布メッシュ完成
クロスのデモ Auroraのスカートのクロス設定を作成 シミュレーションメッシュ選択 パラメータペイント ブラシとグラデーションツール
セクションから新規クロスアセットを作成 シミュレーション用メッシュを非表示 (Remove from Mesh) 布の衝突判定で使う物理アセット指定
スカートのメッシュにクロスアセットを設定
ClothPaintツールでパラメータを設定
ブラシやグラデーションツールでパラメータをペイント
補足:クロスツールは実験段階の機能 エディタの環境設定から有効化
リグを使ったアニメーション 新しいクロス(布)パイプライン イミディエイトモード物理 - 4.16 Robo Recallの物理 ライブリンク
イミディエイトモード物理 PhysXの新しいAPIを使用した物理シミュレーションモード シーン全体ではなく、1つのキャラクタの中で物理シミュレーションを行う →オーバーヘッドが少ない 鎖、ロープなど揺れものを持つキャラクタやラグドールに適している
これまでの物理シミュレーション すべてのボディを含むPhysXシーンに対してシミュレート UE4 PhysXシーン ボディ1 ボディ2 ボディ3 PhysXソルバ … ボディN
これまでの物理シミュレーション すべての物理ボディを集める→シミュレーション→結果をブレンドする 物理と アニメーションを ブレンド スケルタルメッシュ アニメーション スケルタルメッシュ アニメーション スケルタルメッシュ アニメーション ワールド 物理シミュレーション 物理と アニメーションを ブレンド 物理と アニメーションを ブレンド
イミディエイトモード物理 各キャラがキャラに関連する物理ボディに対して 軽量のシミュレーションを実行 UE4 スケルタルメッシュコンポーネント 1 ボディ1 ボディ2 ボディ3 … ボディN PhysXソルバ スケルタルメッシュコンポーネント 2 ボディ1 ボディ2 ボディ3 … … ボディN
揺れものならAnimDynamicsでは? AnimDynamicsは個々のボーン/チェーンに設定ノードが必要で管理が大変 今回のイミディエイト物理の方がさらにパフォーマンスが良い!
AnimDynamicsとRigidBodyノード 比較デモ
AnimDynamicsの場合、設定ノードの管理が大変
イミディエイトモード物理の場合 RigidBodyノードを接続するだけ! アニメーションブループリントからRigidBodyノードに接続 キャラクタの物理アセットをPhysxソルバで直接シミュレート
イミディエイトモード物理とパフォーマンス 高パフォーマンス! 個々のキャラクタの物理負荷がわかるのでプロファイリングも楽に!
イミディエイトモード物理とLOD LOD情報を使用 ボディを LODでソート シミュレーション の必要がない ボディをスキップ
イミディエイトモード物理とパフォーマンス AnimDynamicsとくらべて2倍早い 大量のラグドールの場合にも恩恵がある
ラグドール爆発デモシーン
リグを使ったアニメーション 新しいクロス(布)パイプライン イミディエイトモード物理 Robo Recallの物理 – 4.15/4.16 ライブリンク
Robo Recallの物理 Oculus Touch専用 手での操作 • 持つ • 投げる • 殴る • 跳ね返す エンジンに機能を 追加することで 小さいチームでも 大きな成果!
Robo Recallの物理: Physical Animationコンポーネント 普通のアニメーションを物理駆動に変換 =>
Robo Recallの物理: Physical Animationコンポーネント アニメーションと 物理インタラクション がシームレスに統合
Robo Recallの物理:キネマティックCCD(連続衝突判定) プレイヤーの手が速く動いた時に、手が物体をすり抜けてしまうのは困る! フレーム 1 フレーム 2
Robo Recallの物理:キネマティックCCD
Robo Recallの物理:ポーズスナップショット ポーズスナップショットでラグドールのポーズを記憶してアニメーションBPで 使用できる→ラグドールからの起き上がりアニメーションが簡単に! =>
Robo Recallの物理:ポーズスナップショット ラグドールのポーズ からブレンドして 起き上がる!
Robo Recallの物理:コンストレイントプロファイル 状況に合わせて コンストレイント設定 を切り替え!
Robo Recallの物理:スプリング補間ノード 動くオブジェクトに バネのような 簡易物理挙動を追加
リグを使ったアニメーション 新しいクロス(布)パイプライン イミディエイトモード物理 Robo Recallの物理 ライブリンク- 4.17 (実験段階)
ライブリンクとは? アニメーションデータをエディタにストリーミングするためのシステム
ライブリンクはなぜ必要? Senuaデモ:モーション キャプチャデータの 流し込み Paragon:DCCツールの アニメーションと、 ランタイムの物理アニメ付き の結果の差が大きい
ライブリンクシステム概要 Maya Unreal Engine Mayaプラグイン ライブリンク メッセージバス 他のDCCツール DCCプラグイン ライブリンク メッセージバス Unrealメッセージバス メッセージバス プラグイン モーション キャプチャ システム モーション キャプチャ プラグイン ライブリンクシステム ライブリンク アニメーション ノード シーケンサ
ライブリンクシステムの展望:他のDCCツール Maya Unreal Engine Mayaプラグイン ライブリンク メッセージバス 他のDCCツール DCCプラグイン ライブリンク メッセージバス Unrealメッセージバス メッセージバス プラグイン モーション キャプチャ システム モーション キャプチャ プラグイン ライブリンクシステム ライブリンク アニメーション ノード シーケンサ
ライブリンクシステムの展望:シーケンサ対応 Maya Unreal Engine Mayaプラグイン ライブリンク メッセージバス 他のDCCツール DCCプラグイン ライブリンク メッセージバス Unrealメッセージバス メッセージバス プラグイン モーション キャプチャ システム モーション キャプチャ プラグイン ライブリンクシステム ライブリンク アニメーション ノード シーケンサ
ライブリンクシステムの展望:モーションキャプチャ対応 Maya Unreal Engine Mayaプラグイン ライブリンク メッセージバス 他のDCCツール DCCプラグイン ライブリンク メッセージバス Unrealメッセージバス メッセージバス プラグイン モーション キャプチャ システム モーション キャプチャ プラグイン ライブリンクシステム ライブリンク アニメーション ノード シーケンサ
Mayaライブリンクプラグイン Mayaからデータを取得&エンジンと通信
ライブリンク紹介 (Maya→UE4)
Maya側:シーンを読み込む
Maya側:ライブリンクプラグインを有効に!
エディタ側のライブリンクプラグインも有効化!
ライブリンクポーズノードを接続!
ライブリンクウィンドウでライブリンクソース選択!
ライブリンクウィンドウでライブリンクソース選択!
まとめ
リグを使ったアニメーション – 4.16(実験段階) エディタ内でアニメーション作成! 編集モードをアニメーションモードに切り替え ↓ アニメーションを作成したい アクタを選択 ↓ コントロールリグシーケンス作成 コントロールリグシーケンスは レベルシーケンスから呼び出せる アニメーションシーケンスへの変換も可能
新クロスツール – 4.16(実験段階) エディタ内でクロス(布)も作成! 布にする部分をメッシュのセクションとして用意 ↓ メッシュエディタでセクションからクロスアセットを新規作成 衝突判定に使う物理アセットも指定 ↓ 布にしたいセクションにクロスアセットを適用 ↓ パラメータをペイント 例:固定したい部分はMax Distance = 0 ↓ 布の質感(柔らかさ)などをCloth configで設定
イミディエイトモード物理 – 4.16 揺れもの、ラグドール向け 物理シミュレーションモード! 物理アセットを PhAT 物理エディタで準備 揺らしたい部分のPhysics Typeを Simulatedに指定 ↓ アニメーションBPでRigidBodyノード を呼ぶ
Robo Recallの物理 – 4.15/4.16 Robo Recallを支える物理機能! Physical Animationコンポーネント キネマティックCCD ポーズスナップショット コンストレイントプロファイル スプリング補間ノード
ライブリンク - 4.17(実験段階) DCCツールからエディタに アニメーションをストリーミング Maya側: • ライブリンクプラグインを有効 • シーン読み込み ↓ UE4側: • ライブリンクプラグインを有効 • アニメーションBPにライブリンク ノード接続 • ライブリンクソース選択
最後に新機能を もう一つ紹介
The Human RaceのトンネルシーンのVFXは 開発中の新しいパーティクルFXシステム、ナイアガラ!
新機能、是非使ってみてください! ありがとうございました!