CG関係最新記事
2016年12月28日
substanceを始めよう その3 substancePainterでマテリアルを割り当てる
substancePainterを使ってどのようにしてマテリアルをオブジェクトに割り当て調整するかを簡単に説明します。細かいところは全部省いていきますので、大まかなところを見てください。ソフトが起動したらOpen/Newで新規ファイルを作成。下の画面がでてきます。
Templateはmetallic?specularタイプ?てなsubstanceDesighnerでもある鏡面反射の考え方の違いなどのテクスチャ、マテリアルの下地をどれにするか?という問いです。自分が使うレンダラなどに即したTemplateにするのが考え方的にはいいでしょう。pbr/metal/raughもしくはpbr/specular/glossが一般的です。
次にその下のselectとかかれているボタン。こいつを押すとどのmeshをimportするかを決められます。とりあえずこのボタン押してmeshを読み込まない限りは作業が始められないのでここからmeshをimportするのが大事なfirstStepになります。あとはDocumentResolutionで解像度を決めてあげてください。これはあとからでも変えられます。
meshが読めたら次にやることはそのmeshに対してのcurvatureやAmbientOcclusion,worldspacenormalなどの情報をtexureとしてbakeします。substancePainterではgeneratorを使って様々なマスクやfilterを作ることができるのですが、それはすべてこのbakeされたAdditionalMapから生成されています。それゆえこのmeshの情報を格納したadditionalMapを作ることは必須の作業となります。
TextureSet settingsタブの下にあるAddtionalMapsのBakeTexuresというボタンを押します。windowが現れ複雑なUIが現れますがとりあえず解像度だけ決めてあげて出力してください。(ここではHighResメッシュのnormalをLowResに写せたりできるみたいです。)
これで下準備は整いました。こっからはマテリアルをアサインしていきます。
shelfにある前回ダウンロードしてきたお気に入りのmaterialもしくはsmartMaterialを探してドラッグ&ドロップでレイヤーのところに持ってきてください。簡単にviewport上のmeshにそのmaterialがアサインされたはず。このレイヤーはphotoshopと同じ構造で上のレイヤーのものが優先される構造になっています。さらにもう一つのmaterialを先ほどいれたmaterialの上にいれてみてください。新しくいれたmaterialが優先的に表示されるはずです。
現在、2つのmaterialがレイヤー上に並んでいると思いますが上のレイヤー上で右クリックを押してAddblackMaskを選択。すると下のレイヤーのマテリアルが表示されます。これは上のレイヤーがマスク処理されたことを意味します。そして今度はこのマスクに対して右クリックでAdd generatorを押して下のpropertyタブから好きなgeneratorを選びます。(AO,worldPosition,normalやcurvatureを使ってエッジ部分や上面を向いている部分を検出します)するとこのgeneratorで生成されたマスクで上と下のmaterialがブレンドされます。
いくつかの質感を組み合わせてレイヤー上にのせていく。それがsubstancePainterの基本理念です。現実の世界でも下地の上にペイントを塗ってそこに錆や汚れなどが付着していきますよね。それと同じことをsubstanceでシミュレーションすればおのずとリアルな質感が表現できるでしょう。作業手順的にはこうやって大まかに質感を決めた後仕上げで細かく手作業のペイントをするという感じです。ペイントのほうもかなり自由度がありおそらくこのソフトでできないことはないでしょう。
Templateはmetallic?specularタイプ?てなsubstanceDesighnerでもある鏡面反射の考え方の違いなどのテクスチャ、マテリアルの下地をどれにするか?という問いです。自分が使うレンダラなどに即したTemplateにするのが考え方的にはいいでしょう。pbr/metal/raughもしくはpbr/specular/glossが一般的です。
次にその下のselectとかかれているボタン。こいつを押すとどのmeshをimportするかを決められます。とりあえずこのボタン押してmeshを読み込まない限りは作業が始められないのでここからmeshをimportするのが大事なfirstStepになります。あとはDocumentResolutionで解像度を決めてあげてください。これはあとからでも変えられます。
meshが読めたら次にやることはそのmeshに対してのcurvatureやAmbientOcclusion,worldspacenormalなどの情報をtexureとしてbakeします。substancePainterではgeneratorを使って様々なマスクやfilterを作ることができるのですが、それはすべてこのbakeされたAdditionalMapから生成されています。それゆえこのmeshの情報を格納したadditionalMapを作ることは必須の作業となります。
TextureSet settingsタブの下にあるAddtionalMapsのBakeTexuresというボタンを押します。windowが現れ複雑なUIが現れますがとりあえず解像度だけ決めてあげて出力してください。(ここではHighResメッシュのnormalをLowResに写せたりできるみたいです。)
これで下準備は整いました。こっからはマテリアルをアサインしていきます。
shelfにある前回ダウンロードしてきたお気に入りのmaterialもしくはsmartMaterialを探してドラッグ&ドロップでレイヤーのところに持ってきてください。簡単にviewport上のmeshにそのmaterialがアサインされたはず。このレイヤーはphotoshopと同じ構造で上のレイヤーのものが優先される構造になっています。さらにもう一つのmaterialを先ほどいれたmaterialの上にいれてみてください。新しくいれたmaterialが優先的に表示されるはずです。
現在、2つのmaterialがレイヤー上に並んでいると思いますが上のレイヤー上で右クリックを押してAddblackMaskを選択。すると下のレイヤーのマテリアルが表示されます。これは上のレイヤーがマスク処理されたことを意味します。そして今度はこのマスクに対して右クリックでAdd generatorを押して下のpropertyタブから好きなgeneratorを選びます。(AO,worldPosition,normalやcurvatureを使ってエッジ部分や上面を向いている部分を検出します)するとこのgeneratorで生成されたマスクで上と下のmaterialがブレンドされます。
いくつかの質感を組み合わせてレイヤー上にのせていく。それがsubstancePainterの基本理念です。現実の世界でも下地の上にペイントを塗ってそこに錆や汚れなどが付着していきますよね。それと同じことをsubstanceでシミュレーションすればおのずとリアルな質感が表現できるでしょう。作業手順的にはこうやって大まかに質感を決めた後仕上げで細かく手作業のペイントをするという感じです。ペイントのほうもかなり自由度がありおそらくこのソフトでできないことはないでしょう。
この記事へのコメント
コメントを書く
この記事へのトラックバックURL
https://fanblogs.jp/tb/5739868
※ブログオーナーが承認したトラックバックのみ表示されます。
この記事へのトラックバック