インスタンス分配ツール: "distributeInstancesUI"
こんにちは、Steemです。
自作のスクリプトを紹介しようと思います。まずは動画をご覧ください↓
こちらは、指定したオブジェクトを選択したオブジェクトの座標にインスタンス/コピーするスクリプトです。(既にトランスフォームノードが存在する場所に、別オブジェクトのインスタンスを分配していくイメージです。)
機能説明
機能の特長として、以下のことが可能です。
- 複数オブジェクトのインスタンスを一度に分配
- オフセットの基準にするオブジェクトとの相対的な位置関係を用いた配置
- インスタンス/コピーを選択
- 分配先オブジェクトの回転の適用
- 選択したオブジェクトを削除して置き換え
操作について順に説明していこうと思います。
オブジェクトをリストに追加
ここで取得したオブジェクトがインスタンスとして複製されることになります。ここには複数のオブジェクトの追加が可能です。
インスタンス / コピーを選択
インスタンスを作成するか、コピーとして作成するかを選択できます。メッシュオブジェクトに限らず、例えばライトを複製したいときは、インスタンスではなくコピーを使用します。
基準オブジェクトを取得
このオプションを使用する場合は、オフセットの基準となるオブジェクトを追加します。追加できるオブジェクトはひとつです。
この機能を使用すると、インスタンスを分配していく際に、登録した基準オブジェクトからの相対的なオフセットが適用されます。なお、オフセットの基準となるのはここで取得したオブジェクトのピボット位置となります。
この機能を使用しない場合は作成先のオブジェクトのピボット位置にインスタンスが配置されます。
回転の適用(Match Rotation)
削除して置き換え(Replace Objects)
実行
追加説明
一度に大量のインスタンスを作成しようとすると、処理に時間がかかることに注意です。
(一応時間はかかりますが、途中でフリーズせず最後まできちんと完遂してくれる方式を選んだつもりです。)
機能についての説明は以上です。
おわりに
小話として、前のスクリプト紹介で突然出てきた雪だるまはこのスクリプトを説明する上で分かりやすい例になるのではと考えて簡単に作成したものでした。
雪だるまではなく、机と椅子とかの方が良かったかもしれない。
=================
こちらですが、配布・販売については調整中です。
続報をお待ちください。
Steem
=================