Blendeでモディファイア―(Modifier)の配列(Array)とカーブ(Curve)を併用してオブジェクトを並べるときに、インスタンス化(Instancing)という機能を使用してメッシュを変形させない方法を紹介します。
1 配列(Array)とカーブ(Curve)を併用について
モディファイア―(Modifier)の配列(Array)とカーブ(Curve)を併用すると、カーブに沿って同じ形のメッシュを並べることができますが、このときメッシュはカーブ(Curve)の影響を受けるので変形してしまいます。
画像1では立方体(Cube)とカーブ(Curve)の円(Circle)を使用していますが、台形のように形が変わっています。
モディファイア―(Modifier)の配列(Array)とカーブ(Curve)を併用してカーブに沿って同じ形のメッシュを並べるときに、インスタンス化(Instancing)という機能を使用すると、画像2のようにメッシュを変形させずに並べることができます。
2 インスタンス化(Instancing)を使用して、配列(Array)とカーブ(Curve)を併用する際にメッシュを変形させない方法
ここからは画像2のようにインスタンス化(Instancing)を使用して、配列(Array)とカーブ(Curve)を併用する際にメッシュを変形させない方法を紹介します。
手順1
カーブに沿って並べたいメッシュ(ここでは立方体(Cube))を追加して、カーブ(Curve)の円(Circle)も追加します。
手順2
インスタンス化(Instancing)を使用するには親となるメッシュが必要になるので、インスタンス化(Instancing)の親となるメッシュを追加します。
インスタンス化(Instancing)の親となるメッシュは何でもいいのですが、ここでは画像4のようにカーブに沿って並べたいメッシュとほぼ同じ大きさの平面(Plane)を使用します(区別しやすいようにインスタンス化(Instancing)の親となるメッシュは水色にしてあります)。
画像4を斜めから見ると画像5のようになっています。
手順3
インスタンス化(Instancing)の親となるメッシュを選択してモディファイア―(Modifier)の配列(Array)を追加します。数(Count)と係数 X(Factor)の値を適当に設定します。
さらに、インスタンス化(Instancing)の親となるメッシュにモディファイア―(Modifier)のカーブ(Curve)を追加して、カーブオブジェクト(Curve Object)に手順1で追加したカーブ(Curve)の円(Circle)を選択します。
追加したモディファイア―(Modifier)は画像6のようになります。
追加したモディファイア―(Modifier)により、インスタンス化(Instancing)の親となるメッシュは画像7のようになります。
手順4
カーブに沿って並べたいメッシュを選択したら、プロパティ(Properties) → オブジェクトプロパティ(Object Properties) → 関係(Relations)と進み、ペアレント(Parent)にインスタンス化(Instancing)の親となるメッシュを選択します(画像8参照)。
カーブに沿って並べたいメッシュ → インスタンス化(Instancing)の親となるメッシュの順番で選択してCtrl+Pでオブジェクト(Object)でも同じ操作となります。
これでインスタンス化(Instancing)の親となるメッシュが親、カーブに沿って並べたいメッシュが子の親子関係になります。
手順5
インスタンス化(Instancing)の親となるメッシュを選択して、プロパティ(Properties) → オブジェクトプロパティ(Object Properties) → インスタンス化(Instancing)と進み、面(Faces)を選択します(画像9参照)。
すると、インスタンス化(Instancing)の親となるメッシュの面がある位置にインスタンス化(Instancing)の子となるメッシュ=カーブに沿って並べたいメッシュが生成されます(画像10参照)。
画像10のようにインスタンス化(Instancing)の子となるメッシュ=カーブに沿って並べたいメッシュは、インスタンス化(Instancing)により生成しているだけなので、モディファイア―のカーブ(Curve)の影響を受けず形が変形することなく並べることができます。
3 補足
◆ インスタンス化(Instancing)のFaceにあるViewportのチェックを外すと3DViewportでインスタンス化(Instancing)の親となるメッシュを非表示にします。また、Renderのチェックを外すとインスタンス化(Instancing)の親となるメッシュをレンダリングしないように設定します。
◆ インスタンス化(Instancing)で生成したメッシュをメッシュとして確定したい場合は、オブジェクトモードでインスタンス化(Instancing)の親となるメッシュを選択して、オブジェクト(Object) → 適用(Apply)からインスタンスを実体化(Make Instance Real)を選択してください。
◆ カーブに沿って並べたいメッシュの位置や大きさを変更したい場合は、カーブに沿って並べたいメッシュを選択して、位置や大きさを変更してください。
◆ インスタンス化(Instancing)の親となるメッシュの向きを変えると、カーブに沿って並べたいメッシュの向きも変わります。
◆ インスタンス化(Instancing)の子となるメッシュは複数あっても構いません。
◆ インスタンス化(Instancing)の親となるメッシュまたはカーブに沿って並べたいメッシュは、基本的には編集モードで位置・大きさの変更を行ってください(意図してオブジェクトモードで変更する場合は別です)。
以上、Blenderの「インスタンス化(Instancing)を使用して、配列(Array)とカーブ(Curve)を併用する際にメッシュを変形させない方法」でした。
※この記事で使用しているのはBlender 2.93です。
※参考サイト: https://docs.blender.org/manual/en/latest/scene_layout/object/プロパティ(Properties)/instancing/index.html
コメント