ライノのモデルをツインモーション上で一括置換(リプレイス)する方法。

ライノ上で配置したオブジェクトをツインモーション上でツインモーションのアセット(樹木や車など)に一括変換する方法を紹介します。

このTipsは、植物が人工的にパラメトリックに配置できるようになるので、色々と応用ができるのではないかと思います。

English article is here.

YouTubeに工程をまとめた動画をアップしていますので、そちらもご覧ください。

動画は英語なので、ここでは、日本語で補足説明をしていければと思います。
次の章からは、ビデオの内容を簡単に説明します。
この章の冒頭の時間は、対応するYouTube動画の時間へのリンクです。

Twinmotionには一括リプレイスの機能が実装されていますが、試したところ、ライノからインポートしたファイル(OBJ、FBXなど)ではうまくいきませんでした。。 その解決策を見つけたので、以下の記事にてシェアします。

00:23 01. GHでのデータ準備。

まず、RhinoまたはGHでデータを準備する必要があります。
今回は、Rhinoで作成した大量のデータをTwinmotionで一括変換できるか確認するため、Grasshopperでパラメトリックにオブジェクトを生成します。

最終的な成果物は以下のような感じです。

グラスホッパーのコンポーネントの組み合わせの詳細はYouTubeをご覧ください。
以下が最終的なグラスホッパーのキャプチャです。

X方向に木々が徐々に減っていくようなコンポーネントです。

グラデーションの箇所は、堀川さんのYouTube動画を参考にさせてもらっています。

02:12 02. Twinmotionでセンターピボット(ピボットポイント)のふるまいを確認します。

次に、RhinoとTwinmotion(TM)の間のセンターピボット(ピボットポイント)のふるまいを確認しておく必要があります。
次の画像は、RhinoからTMにオブジェクトを移動したときの画像です。

RhinoからTMにBrepを送信すると、オブジェクトのセンターピボットがオブジェクトの中心ではなく、World座標の原点にあることがわかります。

この動作では、TMの置換機能が正しく機能しません。
TMの置換では、オブジェクトの置換位置がその中心ピボットに対応しているため、このまま置換するとすべてのオブジェクトが原点に表示されてしまい、うまくいきません。

問題を解決するために、TMに送信する前にRhinoでブロックインスタンスを定義する方法を紹介します。

次の画像は、ブロックインスタンスとしてのオブジェクトがrhinoをTMに移動した場合です。

ご覧のとおり、Rhinoオブジェクトをブロックインスタンスとして送信すると、センターピボットはRhinoガムボールに対応するオブジェクトの中心に正確に配置されます。

03:20 03. Elefrontプラグインをインストールして、GHでBlock Instanceを使用する。

TM置換用のブロックインスタンス(BI)を導入する場合は、手作業でそれぞれのBIを1つずつ定義する必要があります。
それは少し手間がかるので、、GHを使用するのがいいかと思います。

Grasshopper内のブロックインスタンスの使用を可能にするため、Elefrontと呼ばれるGHプラグインをインストールして使用します。
Elefrontプラグインは、Food4RhinoのWebサイトにあります。

eleFront
Bake geometry, annotations and blocks with user defined attributes and or Rhino attributes. Reference and filter all Rhi...

今回の場合、「Difine Block」と呼ばれるElefrontのコンポーネントを使用して、コンポーネントの最後の部分で1000を超える多数のブロックインスタンスを出力しています。

04:37 04. RhinoからTwinmotionに.SKP(ScketchUpファイル)としてデータをエクスポート。

次に、オブジェクトのセンターピボットの位置を維持しながら、Rhinoファイルをエクスポートする必要があります。

Rhinoからファイルをエクスポートする場合は、「.SKP」を選択します。
この拡張子により、BIによって定義されるセンターピボットがツインモーションに持っていっても維持されます。

05:14 05. Twinmotionでの操作。

最後のパートは、Twinmotion 2020での操作です。

以下の画像はインポート設定です。

以下の設定を確認してください。

  • Collapse: Keep hierarchy.
  • Fix UX: Checked

次に、右側のバーでインポートされたすべてのブロックを選択します。

そして右クリックして、「Replace object(オブジェクトの置換)」を選択します。

木、車、人などのTwinmotionアセットを好きなようにドラッグアンドドロップします。

「Transform(変換)」をオフにします。

最後に、「Start replace」を押して完了です。

以下のような感じになりました。

06:13 06.結果と作品例。

このTipsは、植物が人工的にパラメトリックに配置できるようになるので、色々と応用ができるのではないかと思います。

もちろん、車や人の置換にも使えます。

いくつかの例を作りました。
時間ができたら、もう少し応用的なものも作ってみたいと思います。

Gradient Trees

Gradient Trees

Letters of Trees

以下よりTwinmotion関連記事を確認できます。

Twinmotion関連記事一覧

Twinmotionは、
2019年に大手ゲーム開発会社Epic Gamesが買収した、
建築・都市向けのリアルタイムレンダリングソフトです。
今最も注目される建築向けプレゼンテーションソフトのひとつと言えます。
買収以来、かなり刺激的なニュースが多いのも事実。
以下より最新ニュースを確認できます。

コメント