ピボットペインタ ツール は、モデルの頂点データの中にモデルの回転軸 (ピボット) と回転の情報を格納する MAXScript です。この情報が Unreal Engine 4 のシェーダー システムの内部で参照されることによって、魅力あるインタラクティブなエフェクトが作成されるようになります。
コンテンツ サンプル プロジェクトの中にある ピボットペインタ マップでは、 Pivot Painter Material 関数 を使ってこのエフェクトを実現するモデル作成し、風やプレイヤーの相互処理など幾つかの力によりこのモデルを操作する方法を実演するサンプルを見ることができます。
ピボットペインタ マップ
ピボットペインタ マップで提供されているサンプルは以下の通りです。
| サンプル | 内容 |
|---|---|
| 1.1.エレメントのスケール | 時間経過と共にオブジェクトのスケールを増減します。 |
| 1.2.カメラ距離を使ったスケール | プレイヤーとの距離に応じてオブジェクトのスケールを増減します。 |
| 1.3.Create unique animation phase | 複数のオブジェクトにユニークなアニメーション フェーズを作成します。 |
| 1.4.ランダムに格納された値のアニメーション | ランダムに格納された値を使って、複数のオブジェクトにユニークなアニメーション フェーズを作成します。 |
| 1.5.サブ オブジェクトの回転 | 時間とともにオブジェクトを回転させます。 |
| 1.6.メッシュ法線の更新 | 時間とともにオブジェクトの法線ごとオブジェクトを回転させます。 |
| 1.7.バーテックス シェーダーの法線を更新 | バーテックス シェーダーにより時間とともにオブジェクトの法線ごとオブジェクトを回転させます。費用効率が高くパフォーマンスが向上する方法です。 |
| 1.8.法線テクスチャの更新 | バーテックス シェーダーの法線を計算して、時間とともにオブジェクトの法線ごとオブジェクトを回転させます。 |
| 1.9.サブ オブジェクトの移動 | ランダム値にもとづくアニメーションでオブジェクト頂点をオフセットする方法です。 |
| 1.10.プレイヤーからオブジェクトを移動させる | ピボットに合わせてオブジェクトがプレイヤーに反応させたり離していきます (例えば、プレイヤーがその中を歩くと動き、風の影響は受けない草)。 |
| 1.11.オブジェクトの回転軸をロックする | サンプル 10 に類似しますが 、 3D の球の移動マスクを作成します。 |
| 1.12.風の向きに合わせて回転 | オブジェクトを風の向きに合わせて反応、回転させる方法です (例えば、ポイント A とポイント B を行ったり来たりするオブジェクト)。 |
| 1.13.オブジェクトの方向プロパティで回転を制限 | サンプル 12 に類似しますが、オブジェクトの方向プロパティで移動量を制限します。風がくる方向にむけてオブジェクトの回転量を制限し、木の枝が風に反応しているように見せかけます。 |
| 1.14.風を使ってアニメーション位相を変更 | 風に合わせてオブジェクト一式にユニークな動きを持たせます (例えば、人との接触ではなく風の影響を受ける草)。 |
| 1.15.ピボット フォールアウト オフセットでアニメーションを改善 | サンプル 14 に類似しますが、フォールオフ オフセットを使用して動きを制御することにより、より自然な動きが適用されます。 |
| 1.16.ランダム化でアニメーションを改善 | サンプル 15 と類似しますが、ランダム フォールオフ オフセットを使用することで、より現実的な動きが作成されます。 |
| 1.17.テクスチャとアニメーション | テクスチャと一緒に風に合わせてオブジェクトをアニメートします (この操作には DirectX 10 以上が必要になります)。 |
| 1.18.テクスチャとここまでのアニメーション オフセット技術の使用 | サンプル 10 から 17 までをまとめて、テクスチャ処理されたオブジェクトが風に反応するアニメーションを付けて作成します。 |
| 1.19.複数の回転を組み合わせる | 頂点シェーダー内で同時に回転を複数回正確に行う方法を説明します。 |
| 1.20.アンビエント クリーチャー | プレイヤーの位置に合わせて反応する環境クリーチャーを作成します (例えば、プレイヤーが近づくと興奮するクリーチャー)。 |
| 1.21.高度な草 | 風に合わせて動き、プレイヤーと接触すると反応するテクスチャ処理された草をさらに「game-ready」したサンプルです。 |
| 1.22.高度な椰子の木 | 風に合わせて揺れるテクスチャ処理された椰子の木です。 |
| 1.23.高度な木 | 枝と葉を持つテクスチャ処理された木の枝と葉を風に合わせて反応させます (階層ペインタで作成) 。 |