7
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

はじめてのSolaris その2

7
Last updated at Posted at 2025-12-10

Houdini Apprentice Advent Calendar 2025、11日目の記事です。

Houdini solaris1年生🔰が贈る、USDやSolarisに興味がある人向けの
宇宙一👽緩い記事の2回目です。

(一回目はこちら https://qiita.com/hajimeCG/items/1d1981071c75d03aea55)

今日はBlenderのサンプルシーンをSolarisでライティングしてみようと思います。
Mayaユーザーでもわかるように書くのでよろしくです👍
(というか筆者はMaya歴長いのでMaya寄りな説明です)

まず、Houdini Apprenticeのインストールだけは自力でお願いします🙏
無料です!🥴

準備🐣

サンプルはこれを選びました。
https://download.blender.org/archive/gallery/blender-splash-screens/blender-2-81/

ポストエフェクトとか無く、ポリゴンにシンプルなマテリアルをアサインしただけの構成だったので。

Blender5.0.0で開きます。

背景をエクスポート🏠

キャラクターをすべて隠し、背景モデルをすべて選択して
File>Export>Universal Scene Discription(USD)

ちなみにMayaの人は
File>Export Selection> USD Export

image.png

[v]Selection Only
 選択物のみ出力。

[v]Convert Orientation
 Z-upからY-upにします。やらないと90度回った状態になります

Object TypesはMeshesだけにしました。余計なものは要らない!

Materials
これが一番悩ましいです。MaterialXはマテリアル版のUSDで、どのソフトでも使えるソフトに依存しないマテリアルなのですが・・・今回はとりあえずMaterialX NetworkはOFFのまま。

USDという名前でフォルダを作って、その中に出すとよいかと思います。

Mayaとマテリアル出力の話🙈 さて、Mayaの方はさらに悩ましいです。実は

Arnold>Shaders>Export Selected Shaders

から、MaterialXUSD で出力できます。
しかも全部中身が違う・・・。

一番まともに動くやつをベースに手直ししていく感じになるかと思います😣

がんばれ!Mayaユーザーはいつもスクリプト書いて解決してるでしょ!😭

Houdiniで開く🧙‍♂️

Houdini21を立ち上げたら、まずシーンを保存しよう。

Houdiniはテクスチャなどのファイルパスを、今のシーンファイルからの
相対パスで書くのが基本なので
とにかく保存しないとパスが設定しにくい。

次にココをSolarisに。Solarisに最適なUIになります。MayaとかBlenderと同じです。
image.png

Solarisにすると、ここがstageになります。Solarisはここで作業します。
初心者のうちはここにへばりついてましょう。
image.png

ここをNetwork Viewというらしいです。ノードエディタですね。

USDファイルをリファレンスしてみる🎁

NukeみたいにTabキーを押して、refとタイプしてください。

image.png

これがReferenceノード。Mayaでいうリファレンスするやつです。

Referenceノードのパラメータが表示されるので
File patternに先ほど出力した背景のusdを選択します。

(ちなみに.usdcはバイナリです。Mayaの.ma、.mbみたいですね。
メモ帳で読みたい時は.usdaで保存してください📘)

image.png

更にちなみに、$HIPはシーンファイル.hipncの保存場所です。

お尻です!🤪

File Patternと書かれた場所を中ボタンクリックで実際のパスが見れるよ。

さて。Scene viewに既にテクスチャ付きで表示されてますね!びっくり!
image.png

他のソフトで出したオブジェクトをマテリアル付きで
リファレンスできるってやばくないですか?❤️‍🔥

Diffuse/Specular/Normal/Roughnessあたりはそのまま来てそうです。

勝ち確定です!

ビューポート操作📽

Mayaみたいに Alt か、Space を押しながらドラックでぐりぐり回せます。 
そのまま 右クリックズーム真ん中クリックパン します。

Space+F で選択オブジェクトに ズーム です。

Scene Viewの右上の [persp] をクリックして、Karma CPUKarma XPU を選びましょう。
Karma(カルマ) は Houdiniの レンダラー です。

カルマを背負ってCGしましょう!🪬

CPUはCPUだけ、XPUはCPUとビデオカードを使ってレンダリングします。Eeveeみたい。

image.png

Viewportでレンダリングできました。ライトが無いとそんなに変わらない?
image.png

ライトを置く🔦

先ほどのNetwork viewでtabを押し、domeLight を作ります。
先ほどのreferenceと繋ぎます。
image.png

domelightの右端をクリックして 青く しましょう。
これでdomelightがSceneviewに反映します。
image.png

だいぶ見た目に変化がありましたね。
image.png

Dome LightのTextureの横のボタンを選択します。
Houdiniに付属のHDRIが選べるので、一番下のを選びます。
(HDRIHaven_skylit_garage_2k.rat)

image.png

まったり。
image.png

つぎに distant Light(平行灯) を置いてみます。
おなじみなハンドルで角度も好きに変えてください。
ハンドル上で 右クリック>Aligh HandleAxis も変えれます。

image.png

この青なんですが、distancelight1まで考慮されてますよ!ということです。
image.png

これだとdomelight1までが見れます。distancelight1は無視されます。
(Nukeを触ったことあるとわかると思うのですが・・・)
image.png

colorやexposureをいじったり、ポイントライトやエリアライトを置きました。楽しい!🥰
image.png

キャラとカメラもリファレンス👥

他のロボット、女の子もリファレンスしました。

カメラだけBlenderで、Object Typesを カメラ だけにしてexport。

Scene Viewの右上でカメラを選択すると、blenderと同じカメラになりました。
dofまで効いてますね!
image.png

ちなみにmergeノードで並列につないでもよいです。
(yを押しながらドラックするとハサミでワイヤーを切れます✂)
image.png

レンダリング設定🎛

Karma Render Settingsをつなぎます。
出力パス、どのカメラを使うか、解像度、サンプル数を設定できます。
AOVもボタンポチッで出来ます。

image.png

最近付いた Outlines でアニメみたいな輪郭線が入ります。
(Karma XPUは対応してないからKarma CPUに切り替えてね)
image.png

そして USB Render ROP、これを繋いで [Render to Disk] を押せば
実際にレンダリングしてディスクにファイルを書き出しできます。

image.png

おつかれさまでした、簡単でしょ?!🥳

これでBlenderファイルをSolarisでレンダリングしてみることができました!

あんま初心者向けじゃない部分

一応髪の毛直したけど興味ある人だけ

結構ややこしいのでささっと紹介です。
トラブルはこんな感じで処理していくよ~っていう雰囲気だけ見てください👨‍🔧

髪の毛は持ってこれないの?

普段はFurとかはHoudiniでやった方が色々できるので持ってきませんが、試しに戦ってみましょう。

まず、Blenderの髪の毛がどんな仕組みはわからないですがCurveとHairも入れてUSDを出力してみます。
image.png

女の子をReloadしてみます。リロードボタンで済むのがいいですよね。
image.png

おおう・・・🤯

image.png

SceneGraphを見てみましょう。本当はシーングラフはものすごい重要なんですが、初心者向けということで思いっきり端折りました。ごめんなさい🙇‍♂️
image.png

目のアイコンをクリックすると、一時的にViewから消せます。これが髪の毛らしいです。BasisCurvesなのでカーブで出来てるみたいですね。そしてこれが持ってるパラメーター群。widthsが空なのが怪しい・・・。幅を見つけられず爆発してるのでは?と目星をつけます。

AttributeWrangleを繋ぎます。
これは初心者は避けていいですが、スクリプトを使えるノードです。
見た感じ8200個のポイントで構成されてるみたいなので、
widthsを8200個、0.15で埋めてみます。
というスクリプトを書きます。
image.png

上書きできたっぽい。
image.png

ちょっと違うけどこれで勘弁してくれ。
image.png

...。

ふはは!スクリプトから逃れられると思ったか!😈

Houdiniも細かいところはガンガンスクリプト頼みです!

顔色直したけど興味ある人だけ

なんか顔色も悪いよね

マテリアルを見てみましょう。Edit Materialを繋ぎます。
Faceに使われてるマテリアルをpathに入れ、loadを押します。
編集できるように、このノードの中にマテリアルを構築してくれます。
image.png

edit Materialをダブルクリックしてください。

更に中に入ります。
image.png

ノードネットワークができてます。Hypershadeでおなじみですね。
image.png

SSS用のテクスチャがdiffuseに・・・妙だな。
image.png

Blenderで同じマテリアルを見てみましょう。diffuse回りを端折ってるのがわかります。
image.png

Solarisで繋ぎなおしてもいいんですが、一か八かMaterialXオプションを入れて再度exportしてみます。

頼むぞ・・・!
image.png

あ、直った。

image.png

Edit Materialノードをみてみると
先ほどのPreviewだけでなくmtlx_surfaceというのができています。

image.png

更に潜ってみると🥽

image.png

うーん、めんどくさい!😩

ネットワークを読んでみると、diffuseとsssで同じものを使っていたり、そのままBlenderと同じじゃないみたいです。
この辺はBlender側のusd(MtrlX)出力の仕様だし、バージョンアップ毎に結構変わるのでどうにもならないですね。

ただ、必要な情報は出ているのでスクリプトで直すことはできますし、一度直せば次回からは自動化できます。
マテリアルファイルは軽いので、usdaで出せばテキストなのでpythonで直すこともできます。
Pythonが使えるなら、自力でMaterial Exporterだって書けると思います。
これがFBXなどとは違う点のひとつですね。

Blender->Solarisのマテリアル修正はココもご参照ください。
https://www.notion.so/Blender-Solaris-11f9ec72b1578035bfceef175f53b437?source=copy_link

まとめ

image.png

🧡usdを出力してSolarisでライティング、レンダリングする雰囲気はつかめたかと思います。

💛ポリゴンは割と持ってくれるけど、マテリアルは発展途上、でも未来は明るいのもわかっていただけたかと。

💙まあ色々面倒なのでマテリアルはSolarisで組みなおす人も多い。

💚アニメーションは省略したけど、rigじゃなくてキャッシュする感じで持ってこれます。Alembicも読めます。

さらにこの先

⭐マテリアルの作り方、いじり方 ( Blender/Mayaと変わらない😏 )
⭐レンダーレイヤーはどうやるの? ( ←最高に簡単で楽しい🥰 )
⭐ライトリンクのやり方 ( まあまあだけどいいやり方ある )
⭐Substanceみたいにテクスチャをディテールアップ ( やばいぜ😼 )
⭐レンダリングしたあとmovieファイルにしたい。( これもやばいぜ🤯 )
⭐マルチショット!複数シーンもまとめてライティング!( 生産性爆上げ!🤩 )
ここに逆引き時点を置いておきますのでご参照ください。

現在は書きなぐり状態ですが、年末年始で追記したり読みやすくします🙇‍♂️

それでは。Houdiniコミュニティに恩返しできてると願って。メリクリ~!🎄

7
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?