V-Ray Rhino | Grasshopper レンダリング [V-Ray 3.40用]

こちらでは、V-Ray for Rhinoにて Grasshopper のジオメトリをレンダリングする最も簡単な方法を解説します。

なお、V-RayのGrasshopperインテグレーションは現在開発中であり、極基本的な機能のみ実装されている事を予めご了承ください。

このチュートリアルは V-Ray 3.40 for Rhinoでのみ利用可能です。 V-Ray 3.6 以降では Grasshopper コンポーネントが更新されている為、このチュートリアルの内容は利用できません。

V-Ray for Grasshopperは現在、必要なファイルを手動で特定フォルダへコピーする必要があります。コピー作業は必ず管理者権限で行ってください。

  • V-Ray for Rhinoをインストールすると、以下の場所にGrasshopper用のファイルがコピーされています。C:\Program Files\Chaos Group\V-Ray\V-Ray 3.4 for Rhinoceros 5\GrasshopperComponents
  • 上記GrasshopperComponentsフォルダには以下のファイルがあります:
VRayForGrasshopper.gha
VRayForGrasshopper.pdb
VRayForRhinoNETInterface.dll
VRayForRhinoNETInterface.pdb
VRaySDK.Net.dll
VRaySDK.Net.Plugins.dll
VRaySDK.Net.Plugins.xml
VRaySDK.Net.xml
  • Grasshopperを起動して File > Special Folders > Components Folder を選択するとGrasshopperのライブラリーフォルダが開きます。(手動で開く場合は C:\Users\[ユーザー名]\AppData\Roaming\Grasshopper\Libraries)
    上記GrasshopperライブラリーフォルダへGrasshopperComponentsフォルダの中身を全てコピーします。

  • RhinoとGrasshopperを再起動すると、Grasshopperのメニューに V-Ray Render タブが追加されているのを確認できます。

  • 以上でインストール完了です。

V-Rayで Grasshopper のジオメトリを「直接」レンダリングする方法として以下の方法があります

  • Grasshopper内でシーン定義(カメラ、ライト、マテリアル、レンダリング設定、レンダリング実行)を行う方法
  • GrasshopperのジオメトリをRhino側に出力し(ベイクではありません)、V-Ray Rhinoでシーン定義(カメラ、ライト、マテリアル、レンダリング設定、レンダリング実行)を行う方法

今回は最も簡単で、おそらく最も利用されると思われる後者の方法を解説します。

こちらにサンプルのGrasshopperシーン(vraytest.gh)がありますので、ダウンロードしてZipを展開しGrasshopperで開いてください。

以下のように「サーフェス」のスフィア、シリンダー、コーンプリミティブがあり、座標と各パラメーターにスライダーを接続しています。



V-Rayはシーンに何もオブジェクトが存在しない場合レンダリングを実行できないので、シーンにPontを1つ追加します。(プリミティブでもなんでも良いで追加します。)



V-Rayのレンダリングを実行しても何も表示されません。



Grasshopperのジオメトリは通常ベイクする必要がある為です。
しかしV-RayではGrasshopperのV-Rayコンポーネントを使用してGrasshopperのジオメトリをダイレクトにレンダリングする事ができます。

まず、V-RayでレンダリングするにはGrasshopper上で「メッシュ」である必要があります。サンプルシーンのプリミティブは Brep (サーフェス)データなので、Mesh Brep コンポーネント等でメッシュに変換する必要があります。

Meshタブから Mesh Brepコンポーネントを配置します。



プリミティブを Mesh Brepコンポーネントに接続します。(Shftを押しながら複数接続します)



メッシュに変換したら、V-Ray Renderのタブから Document Render コンポーネントを追加します。

 注意:なおこのDocument Render コンポーネントは ドキュメント内に1つしか置けません。複数配置しても最後に触ったDocument Renderコンポーネントしか有効化されませんので注意してください。



今回使うV-Rayのコンポーネントはこれだけです。Mesh Brepコンポーネントから Document Render コンポーネントに接続します。V-RayでレンダリングするとGrasshopperのメッシュがレンダリングできる事が解ります。



マテリアルを割り当ててみましょう。V-Rayのアセットエディタを開き、マテリアルのプリセットから適当に3つのマテリアルをマテリアルリストに追加します。



分かり易いように、名前をダブルクリックして日本語名に変更します。(改名は好みです。)
今回

  • カーペイント
  • ガラス緑

というマテリアルを作成しました。



Grasshopperにて パネルを追加します。



パネルに

/カーペイント
/ガラス緑
/床

と入力します。必ず「/」(半角スラッシュ)で始まるように記述してください。スラッシュが無いと機能しません。



パネルを右クリックして “Multiline Data”のチェックを解除しシングルラインデータに変更します。



V-Rayでレンダリングすると、マテリアルが割り当てられてレンダリングされます。



なお、V-Ray Document Render コンポーネントの Geometryに入力されるメッシュのリストに、Material Name のリスト順でマテリアルが割り当てられます。



以下動画のように、Grasshopperのパラメーターを変更したり、マテリアルの変更がインタラクティブに反映されます。

Clipperを使ってGrasshopperオブジェクトを切る事もできます。

以上が最も簡単なGrasshopperジオメトリのV-Rayダイレクトレンダリング方法です。