主に、LightWave3Dに関する事を書き記します。
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
LWの変位プラグイン「Inertia」を利用して飛行機雲を引く表現をテストしました。
モーションのパスに沿ってポリゴンが変形する機能があることを前から知り得ていたのですが、当初は新体操のリボンやヘビの動きくらいにしか使えない一発芸機能だと思い込んでいました。
でも、意外とこの機能を上手く利用しているLWユーザーさんがいましたので、僕だけが知らなかっただけだったのかもしれません。
きっと、新米ユーザー世代には馴染みの無い技法なんだと思います。
(と、また勝手に決め付けています。)^^;
とりあえず、この話は少し置いておいて・・・最近はWeightでいろんな質感のマップ範囲を作るのにハマッていました。
話はそこから進めていきたいと思います。
ちょっと昔のCG雑誌を整理していたら、「Pits&Peaks」というフリースクリプトの紹介に目が止まり読みふけっていました。
(Pits&PeaksはLWのスクリプトではありません。)
この機能の特徴は凹凸情報の抽出を強調させることが出来て、ガンプラ技法の白立ち上げや黒立ち上げといった表現が付けれるようになるので、アンビエントオクルージョンでは出し切れないポリゴンのハイライトやディテールを際立たせる事が出来ます。
LWもこれと同じことが出来ないかな~と思ってWeightマップに目を付けて作成していきました。
本来、ボーンの変形に用いるのが一般的ですが、これを万能な影響範囲のマップとして利用すれば同等のことが出来るんじゃないかと思いまして・・・。
ウェイトの利点は、マイナス値からプラス値まで作成できる点です。
上の画像のように、このウェイトマップ一枚で拡散レベルの光の反射、吸収具合(明暗)をまとめて付けることが出来るんです。
ポイントやエッジ選択がめんどくさいと思う人がいるかもしれませんが、モデラーには様々な選択方法があるので、上手く使えば簡単に選択出来てウェイトを作成することが出来ます。
ポリゴンの分割範囲を調整してウェイトをぼかし具合を上手く付けていくのがコツです。
気持ち、少しウェイトをぼかす範囲を大きめに取ると良い感じです。
レイアウトで質感を付けるようにしています。
VPRのおかげでリアルタイムに質感を確認出来るのは良いですね。
拡散レベルの【T】ボタンを押してレイヤー種を「グラディエント」、入力パラメータを「Weight Map」にして作成したウェイトを適用し、グラデーションのスライダーを追加してVPRの結果を見つつ位置と数値を調整していきます。
VPRビュー(上の画像)を見ると、二つのブロックの差が分かると思います。
遠くから見ると、角に丸みが付いたようにも見えますね。
マップの調整や修正が容易なので、いろんな事で利用出来ます。
しかし、この単純な形状のブロックにしてはウェイトマップの為だけにかなり無駄なポリゴンを使っています。
これではゲーム用のモデルには不向きなものになってしまいますね。
UV展開しているのであれば、このマップの結果をサーフェイスベイキングカメラで取得して、モデルをローポリ化して出力したマップを当てはめれば解決出来そうです・・・少し手間ですけど。。
あらかじめ、UV展開済みのローポリモデルを作っておいて、別名保存でマップ作り専用のモデルを作成していけば楽かもしれません。
こんな感じで段々とウェイトマップの利用方法が見えてきて、その時にふとモーションのパスに沿ってポリゴンが変形するプラグインの存在を何故か思い出しました。
そして、ウェイトを使って上手くポリゴンの輪郭を隠してやれば飛行機雲を引く表現が上手く作れるんじゃないかと・・・まぁ、そんな単純な思い付きからです。
まずはモデラーで簡単に飛行機と飛行機雲となるモデルを作っていきます。
この時、パスモーションで制御することを意識して、飛行機と雲は+Z軸方向を向くようにします。
飛行機の主翼は別レイヤーで複製して、飛行機雲を引く始点となる左右の中心点を用意します。
これは後でNullに置き換えますが、特にそこまで正確にする必要が無ければ適当に左右対称にNullを設置すれば良いです。
【飛行機雲】
飛行機雲のポリゴンは長方形型で外側のポイントは全て-100%にして、中心点から徐々にマイナス値のウェイトが掛かるようにしています。
Y軸の0値に当たるポイントは若干ウェイトを弱めています。
この画像のポリゴンでは既に中心点から-Z軸に向かってポリゴンのスケールが膨張するように「先細り」で変形していますが、こうすることで飛行機雲のゆっくりと膨張していく感じを出そうとしています。
レイアウトで飛行機雲のマップモーションを作った後からモデラーで変形させていった方がやり易いです。
飛行機雲の透明度とバンプは同じマップを使って以下のように組み合わせていきます。
ポリゴンの輪郭を消す&雲のマップモーションを見せるのに絶妙なレイヤー層になっています。^^;
これも、レイアウトのVPRビューで質感を詰めると早いですね。
雲のモーションは「Smoky1」の位置を反復のオフセットでずっと移動するように設定していて、Z軸をマイナス値に大きく移動、X軸とY軸はマイナス値に小さく移動させています。
これも、VPRのプレビュー再生で確認しながらマップモーションを作ると捗ります。
出来上がったら、いよいよ飛行機と飛行機雲を組み合わせていきます。
飛行機雲は複製して主翼のワールド座標で左右の主翼の中心点(Null)に固定するようにします。
そして、飛行機、飛行機雲二つをパスに沿ってモーションさせます。
前々回で書き記したモーションベイクの機能を利用して、3つのアイテムのモーションを焼きこみます。
これで、3つのパスモーションの計算の負荷を抑えれてシーンを軽くすることが出来ます。
最後に飛行機雲の変形です。
LWにはモーションのパスに沿ってポリゴンが変形するプラグインが3種類用意されています。
「LAZY_POINTS」
パスに沿ってポリゴンが変形するシンプルな変位機能。
前のバージョンではこのプラグインをコントロールする「LAZY_GUY」があったみたいで、現在では無くなっているようです。
「Inertia」
パスに沿ってポリゴンが変形する度合いを調整出来る変位機能。
LAZY POINTS/GUYの代用として存在している感じがします。
「serpent」
パスモーションの変形が正確。
ヘビや電車のモーションで使える。
今回はタイトル通りに「Inertia」を使っていきます。
「serpent」だと正確=固い動きで、フワフワと漂う飛行機雲の表現には不適切になりますので・・・。
ここでは、「Inertia」のLag Rateの数値で少しポリゴンがたゆんたゆんに動いてくれた方が擬似的な風の抵抗感が出し易いんです。
そして、飛行機のパスモーションの動き(スピード)をRelativityを使ってコントロール用のアイテムひとつの移動で制御しています。
フレームにキーが打っていなくても、コントロールアイテムを移動すると「ギュイン・・・ギュイーン。」といった感じにパスモーションのキーの動き(スピード)を無視して飛行機の動きの強弱が付け易くなっています。
しかし、これは慣れないとキーが打ち辛い。^^;
キーを打ったフレームとコントロールアイテムの移動距離の感覚がつかめないと、「?」な感じになってしまいます。(笑)
でも、モーションの修正には捗り易かったりしますね。
モーションのリテイクが出て、もっと動きを遅く、早く、強弱を付けてほしいと指示を受けた時は楽かも・・・。
これは僕が慣れれば問題無いかな~。
【VPRプレビュー】
gif用に背景やアイテムは単色で色数を抑えている。
シーンやレンダリングの負荷の掛かるものはパスモーションで変形する「Inertia」×2と、アイテムの移動でスピードの強弱を付けるRelativityのExpressionの3つに抑えられますね~。
軽い軽い~~♪
HVや物理演算と比べたら、かなり感覚的かつ視覚的にサクサクと作ることが出来ます。
個人制作の環境ならこっちの方が現実的ですね。
飛行機雲以外にもいろんな表現にも応用できると思います。
(車のテールランプの軌跡とか。)
そう考えると、一発芸だと思っていた機能は、何気に万能でいろんな近い道があるかもしれませんね。
もっと研究していこう・・・あと、文章力も研究していこう。(笑)
10 | 2024/11 | 12 |
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |