【Blender】ゲームVFX竜巻メッシュの作り方 ポリゴンモデリング編
◯概要
【もここのBlender VFXメッシュ自由研究】
引き続き簡単な竜巻メッシュの作り方のメモです。
メッシュ自体はねじらず、UVをシアー(Shear)で歪める方法でらせん模様を作っていきます。
参考
↑のMayaよりも、Blenderはこの斜めに歪めたUVを作るのがとても簡単でした!!
(Mayaにも、UVのシアー機能があると嬉しいのになと切実に思います…(_ _ ;)僕が知らないだけかもですが…。。)
ーーー
あとは、Mayaでいうノンリニアデフォームの機能もBlenderで見つけたのでメモしておきます。
◯今回竜巻メッシュを作る作戦
・シリンダーメッシュを追加する
(サイズ調整)
・シリンダーを水平に分割する
・シリンダーをデフォームでいい感じに形を整える
(・必要に応じてピボットをずらす)
+頂点カラーを設定する(ジオメトリノード)
+UVを調整(シアーでゆがめる)
◯竜巻メッシュの作り方
▼1.シリンダーメッシュを追加する
変形までは基本、前のシリンダーメッシュの作り方と同じです。
↓参考
・「Vertices : 50」「Radius : 1m」「Depth:2m」「Cap Fill Type : Noting」「Generate UVs:オン」で設定します。
・コレクション(フォルダ)を追加して、フォルダ分けしておくとわかりやすくていいです。
リネームもしておきましょう。
▼2.メッシュを水平に分割する
エディットモード
・「Ctrl + R」でループカットモード → 「15」と値入力(orマウスホイールをくるくる)でループ数を変更 → 「左クリック」でループ数確定 → 「右クリック」でその場でループカット確定 のコンボでメッシュを水平に15分割しておきます。
▼3.シリンダーをデフォームでいい感じに形を整える
後でも調整しやすいように、デフォーム系のモディファイアを使ってこんな感じにしていきます。
<上下のすぼみかたを変える>
オブジェクトモード
・スパナアイコンのモディファイアプロパティから、「Simple Deform」モディファイアを追加。
・Taper(テーパー)でZ軸に沿って上下のすぼみを変形します。すぼめ具合は「Factor」で調整可能。
ーー
<真ん中のカーブを調整する>
オブジェクトモード
・「Smooth Corrective」モディファイアを追加する
・「Only Smooth」オン:カーブさせる
「Pin Boundaries」オン:上下の両端が固定される
ーー
→ 「Factor」「Repeat」でカーブ具合を変えられる
これでいい感じに
▼4.サイズ調整
オブジェクトモード
・「N」キーでサイドメニューを表示して、「Item > Scale」の値は50倍にしておきました。
(今回はUE5に持っていったときに高さが1mになるように)
▼5.マテリアル設定
以前の記事で作成した汎用マテリアルを適用していきます。
まだ作ってない場合は↓を作っておきましょう。
・「Shading」ワークスペースのNewの左から「MT_VFXMeshUVMap_Checker」(汎用チェッカーマテリアル(マット))を選択します。
このマテリアルの「color」アトリビュートにジオメトリノードから値を送ります。
▼6.ジオメトリノードでカラーを送る
ジオメトリノードから頂点カラーを設定することで、UVに対するカラー、アルファの調整がかなり楽になります。
これも作っておいた汎用のジオメトリノードをコピーして流用していきます。
もし作ってない場合は、先に↓を作っておきましょう。
(作ってある場合は、使い回し方法を参照してください)
<ジオメトリノード使いまわし方法>
・オブジェクトを選択して → モディファイアプロパティの「Add Modifier > Geometry Nodes」を選択
・Newの左のアイコンから、「上記で作った汎用ジオメトリノード」を選択します。
(Temp_GN_VFXMeshPoligon_000)
・(注意)ジオメトリノードエディタ内の↓のアイコンでテンプレを「コピー」しましょう。
※モディファイアプロパティの方は、同じアイコンでも新規作成らしくテンプレが使いまわせません…。アイコン同じなのが紛らわしい(_ _;)
・連番が増えてコピーされるので、わかりやすい名前にリネーム。
(メッシュと同じ名前とかだとわかりやすいかも。)
これで、マテリアルの「color」アトリビュートに頂点カラーが送られて頂点カラー/アルファが適用されました!
▼7.UVを調整(シアーでゆがめる)
・「UV > Constrain to Image Bounds」をオン
・「2D Cursor」をピボットにしておく
今回は下を基準にななめにUVをシアー変形していきます。
・一番下の頂点をまとめて選択
・「UV > Snap > Cursor to Selected」を実行して、2Dカーソルを一番下に移動しておきます。
・「A」で全選択 → 「Ctrl + Shift + Alt + S」でシアー変形 → マウス移動 → 「Enter」で確定のコンボ。これでシアー変形できます。
オブジェクトモードで見ると、UVをゆがめたことでらせん模様になったことがわかります。
▼8.複製して各モディファイアを適用
・書き出し用に複製
・上から順番にそれぞれのモディファイアを「Apply」する
最終的にモディファイアの欄が空になればOK
▼9.ノーマル設定
・前に作った汎用マテリアル適用(チェッカーマテリアル(鏡面反射)MT_VFXMeshUVMap_Checker_Mirror)
に切り替え
エディットモード
・「A」で頂点全選択 → 「Mesh > Normals > Set from Faces」でノーマルを調整する。
▼10.ピボットをずらす
・「Nキーサイドメニュー > Item > Dimensions」の3Dカーソルを移動したい軸の値を「コピー」
・「Nサイドメニュー > View > 3D Cursor > Location」で、今回は「-Z」に3Dカーソルを移動したいので、「Z」に「-(コピーした値ペースト)/2」と入力します。3Dカーソルが移動します。
・メッシュ選択状態で「Object > Set Origin > Origin to 3D Cursor」でピボットを移動すればOKです。
・「Nキーサイドメニュー > Item > Location」を(0,0,0)にすると、オブジェクト位置がワールド原点に移動します。
◯FBX書き出し
書き出し設定をしてFBX書き出しします。
↓参考
https://zenn.dev/animamococo5656/articles/e2c4d32d6f7dfd
・1.編集メッシュを複製
・2.ジオメトリノード適用
・3.トランスフォームのフリーズ
のみ行えばOK!※今回はジオメトリノードでUV設定はしていないので、
・「▼4.UVアトリビュート適用」はしなくてOK!
◯まとめ
竜巻メッシュをBlenderで作る場合のポイントは、
・らせん模様になるようにUVをシアーでゆがめる
・シリンダーをデフォーム系のモディファイアで変形する
あたりがポイントになるかなと思いました。
ちょっとところどころBlenderの癖やショートカットは覚えておく必要がありますね。
Discussion