English (by Google Translate)
NVIDIA Hair Works の Unity インテグレーションです。 MAYA や 3ds Max でオーサリングした Hair データを Unity で表示させることができます。
Unity 5.2 以降、かつ Windows & D3D11 専用です。
使用には少々面倒な前準備が必要です。
Hair Works SDK は再配布が認められていないため、各自個別に NVIDIA の開発者サイトから入手してプロジェクトへインポートする必要があります。
以下に手順を記します。現状 SDK はバージョン 1.1.1 を前提としています。
シェーダをカスタマイズしたい場合、hair には Unity のシェーダは使えないので独自に HLSL を書いてコンパイルする必要があります。
シェーダやプラグイン本体をビルドしたい場合、HairWorks-r1_1_1-62/HairWorks ディレクトリをまるごと Plugin/Externals の中にコピーしてから Plugin/HairWorksIntegration.sln をビルドします。
ちなみにスクリーンショットの虫は SDK 付属のサンプルで、media/Mite にあります。
前提として、現状 hair 関連のデータ (.apx, .cso ファイル) は、Assets/StreamingAssets 以下に置く必要があります。
モデルの座標の単位に注意が必要です。
現状 hair はスケールをかけると結果が正しくなくなってしまいます。
Unity ではモデルはインポート時に File Scale によるスケールがかかりますが、
.apx のデータはこのスケールがかかる前の座標系になっています。
面倒なことに File Scale は 0.01 になっていることがよくあり、
こういう場合 .apx の座標系と Unity の座標系を一致させる必要があります。
DCC ツール側で File Scale が 1 になるように変更するか、
Unity 側で Scale Factor * File Scale が 1 になるように調整してスケーリングをキャンセルします。
後者の場合超でかくなってしまうので、前者による解決が望ましいでしょう。
参考: Import settings
Hair をライティングするにはこのコンポーネントが必要です。通常の Light オブジェクトに追加します。
大体見たまんまです。copy_light_params をチェックすると Light コンポーネントのパラメータをコピーして使うようになります。
Hair Works を含む NVIDIA GameWorks SDK は、使用する場合 NVIDIA のロゴの表示義務が生じます。
これは本プラグインを使用する場合にも適用されます。使用の際はこちらをよく確認してそれに従ってください。
GameWorks SDK EULA
大雑把にまとめると、ゲームの開始画面、マニュアル、プレスリリースなどに NVIDIA Game Works のロゴの表示義務が生じ、加えて商用利用の場合は NVIDIA へその旨を報告する必要がある、といったものです。ライセンス料の類は特にないようです。