このサイトはダイキン工業が運営するCG業界ニュースサイトです。
お問い合わせ

オンラインセミナー『ShaderFXを使った画像表現セミナー』(1)

 

2018年1月30日、オンラインセミナー『ShaderFXを使った画像表現セミナー』が開催された。講師はSuite UsersNotesでおなじみ株式会社ヘキサドライブのテクニカル・アーティストRitaro氏だ。
ShaderFXはノードベースで構築できるリアルタイムシェーダー。『Maya 2015』、『3ds Max 2015』以降のビューポートで使用できるため、本セミナーも両ソフト対応という形で行なわれた。なお、ドキュメントについては、以下の場所で閲覧可能だ。

Maya
https://knowledge.autodesk.com/ja/support/maya/learn-explore/caas/CloudHelp/cloudhelp/2016/JPN/Maya/files/GUID-EBC6DF48-857D-4230-9D3C-0B04DAF58403-htm.html

3ds Max
https://knowledge.autodesk.com/ja/support/3ds-max/learn-explore/caas/CloudHelp/cloudhelp/2017/JPN/3DSMax/files/GUID-D7F76613-E3E3-473E-A26D-717BB135BD17-htm.html

ShaderFXの利点

ShaderFXの良い点は、デザイナーにとってシェーダーコードを書くより視覚的に分かりやすいところだ。描画結果がビューポートを使ってリアルタイムに変化するので、試行錯誤もしやすい。また、HLSL_5(.fx)などへの書き出しにも対応している。

ただし、好きなように組めるため煩雑になりやすい。共同作業を行なう場合は、ルール作りが必要となるかもしれない。また、処理負荷やバージョンアップ時の仕様変更も考慮したほうがよいだろう。

ShaderFXを作成する

Mayaでは、最初にプラグインが適用されているか確認しておく。プラグインマネージャで『dx11Shader.mll』と『shaderFXPlugin.mll』がロードされているかチェックしよう。また、ビューポートに表示させるにはプリファレンスで「ディスプレイ」→「ビューポート2.0」の「レンダリングエンジン」が「DirectX 11」になっていなければならない。OpenGLからの切り替えでは、再起動が必要だ。

 

準備ができたら、SphereにShaderFXを適用していく。まず、ハイパーシェードでshaderfx Shaderを作成しアトリビュートエディタでOpenShaderFXが追加されていることを確かめる。なお、ShaderFXのウィンドウでは、「Settings」→「Toggle Advanced Mode」と「Show Property Panel」がオンになっていることを確認しておこう。
「すべてをスムーズシェード」を選択、「ハードウェアテクスチャリング」をオンにすることで、ビューポートにシェーダーが反映される。

3ds Maxは、標準でビューポートに表示が行なわれる。「Customize」→「Preference」で「Viewports」の「Display Drivers」が「Direct X」になっているかを確認しておけばよい。

Sphereを作成したら、Material EditorでMaterial/Map Browserを開いて「DirectX Shader」を設定する。プルダウンメニューから「ShaderFX」を選択し設定を反映させておく。
設定後「Open ShaderFX」をクリックして、ShaderFXのウィンドウを開く。この操作によって、3ds MaxでもMayaと同じ画面を開ける。
こちらも「Settings」の「Toggle Advanced Mode」と「Show Property Panel」をオンにしておこう。

ウィンドウ内の操作はMaya、3ds Maxどちらも同じだ。Mayaで作ったShaderFXのファイルを3ds Maxで読み込むことも可能となっている。

操作例:Lambert.sfxの読み込み

 

オンラインセミナー『ShaderFXを使った画像表現セミナー』(2)に続く)