HOME

[移行記事]Copernicus (COP) でジオメトリを扱う

copernicsはジオメトリを読み込んでハイトマップやマスクなどのベイクテクスチャを作成することができる

元記事のデータ

記載日:2024/ 08/ 13
移行する際にわかりづらいなと感じる部分があったので一部加筆、修正しています。

https://www.notion.so/Copernicus-COP-8b03591d4a764d6a8d21f07461d5371d?pvs=4


本記事の内容は主にこちらのチュートリアルで紹介されている内容です。

環境

Houdini Indie 20.5.278

ジオメトリをCOPに読み込む

copernicusグラフ内でジオメトリを読み込む流れ

  1. Geometryノードを作成
  2. Geometry内でCOP Networkを作成(oldではない方)
COP(oldでは無い方)を作成
  1. COP内でSOP Importを作成し、ダブルクリックで中に入ってCOPネットワークを編集する
    (中に入らずに Use External SOPを有効にして外部のSOPにリンクする方法もある)
SOP Importを作成しダブルクリック、もしくはExternalSOPでジオメトリを読み込める
  1. 中で豚を作成
SOP Importの中はジオメトリが作成できるので豚を作成
  1. copに戻ってpreviewをするとcop内でジオメトリを読み込んでいることがわかる
COPに戻ると中のジオメトリがプレビューされる

ジオメトリからDepthマップを作成する

COP内でジオメトリからマップを作成する

  1. COPでRasterize Setupを作成し、SOP Importに接続する。

    ジオメトリの読み込み範囲を設定することでこの後のノードでテクスチャに変換できる。
    各軸を数値指定もできるが、Fit Depthを有効にするとZ軸の範囲以外を合わせてくれるので
    今回はそちらを有効にし、depthの範囲を-1~1の範囲で設定する

RasterizeSetupでジオメトリの読み込み範囲を指定する
  1. COPでRasterize Geometryを作成してRasterize Setupを接続 これでジオメトリをテクスチャに変換できる
RasterizeGeometryを接続するとRasterizeSetupで指定した範囲をテクスチャ化できる
  1. OutputTypeで出力チャンネルを指定、RasterizeGeometryのNameの項目で読み込み先のアトリビュートを指定できるのでOutputTypeをRGB、NameをPに設定 この出力のblue channelがジオメトリのdepthとなる
OutputTypeでジオメトリのアトリビュートを色に変換できる
  1. blue channelを利用したいので COP で channel splitを作成し、RasterizeGeometryを接続する 右下のプレビューするチャンネルをblueにするとdepthのプレビューも確認できる
Depthを読みたいので位置を色に変換したカラーからZ軸方向であるBlueチャンネルを抽出
  1. このdepthは-1の範囲を持つ0を中心とした画像になっているが、equarizeに接続すると0地点をグレーとする0~255の画像に変換できる
色をリマップ
  1. このまま画像として使いたい場合は右クリックから画像として出力できる
右クリックで画像に出力もできる
  1. Houdini内でマテリアルのプレビューとして利用したい場合、preview materialを作成し、heightに接続
    ※ビューポートをVulkanにしていないと正常にプレビューされません
     正常にプレビューされていない場合はこちらを参照してください
     https://www.procedural.jp/articles/5jqis1qwwx1
PreviewMaterialノードでDepthを確認できる

fish_ball

プロシージャル魚類