ACCESS

東京本社
東京都港区六本木7-2-29 VORT乃木坂I-3F
岡山オフィス
岡山県岡山市北区磨屋町10-20 磨屋町ビル 6-B

SURPR!SE

サプライズ

2015.09.03

PBR for the Web. Part II: Marmoset Toolbag 2

While developing our own Physically Based Rendering (PBR) solution for the web, we got our hands on the Marmoset Toolbag 2 solution which is from our point of view the actual reference in terms of quality and expectation we can hope from a WebGL based viewer. In a way to benchmark and compare some result we decided to align one of our previous work with a Marmoset sample demo: the “Lens” by Joe Wilson. The purpose between the two modeling is somewhat different, while both are in a quest of hyper-realism, the sample file is targeting game industry asset and touch’n’feel while our perspective is product visualization. Game asset often rely on time erosion to add realism whereas in our case we have to deal with clean and neat surfaces.
MTB2_15Our Marmoset Toolbag test model
MTB2_14The Joe Wilson Reference. © Joe Wilson © Marmoset LLC
The Marmoset Toolbag 2 is a PBR renderer for 3DCG work showcase mainly designed for the CG artist of the game industry. Our interest in this product is the very accurate WebGL export function it provides and which is so far a reference in PBR-like rendering within a WebGL context. Note that the exported viewport can be also played as it is in modern smart-phone and tablet. Then an optional view is included in the viewer and let a break-down of the shader appears separately in a decomposed view. The Toolbag software also allows efficient glass material refraction.
The remaining part of this post deals with low-polygon texturing techniques we tried while implementing our test with this solution. We tried the Quixel Normal plug-in for photoshop and the Nvidia Normal Map generator. We also compared Ambient Occlusion map baked using Mental Ray. Here are the details about texturing and Lighting.
Please refers to our preview post to read more about the modeling:
https://sky-link.co.jp/surprise/cggraphics/cad-to-low-polygon-topology-tesselation/
MTB2_01ズームリングの凹凸はジオメトリでの表現にコストがかかるので、ノーマルマップで表現します。イラストレーターでheight mapを書いていきます。
作ったheight mapをphotoshopでnormal mapに変換します。ここではQuixel Suiteの試用版を使ってみました。変換ボタンを押すとガチャガチャとアクションが走って変換されました。
MTB2_02Normal mapを実際のモデルに当てて見ます。512*512の解像度ですと、荒いようです。
解像度は512のままで、テクスチャのタイリングを変えてみました。これで凹凸がきれいに見えるようになりました。
MTB2_03アンビエントオクルージョンを追加。
MTB2_04レンズフードのheihgt mapをnVIDIA texture toolsを使ってnormal mapに変換してみます。こちらは単にフィルタなので、アクションで待たされる、undoしづらいということはありません。
右がnVIDIA texture toolで変換したもの。
MTB2_05レンズフードのAOも作っていきます。今回はmental rayでAOの計算をしました。文字の周りなどはphotoshopで足します。
AOとnormal mapをフードに追加しました。(右側)
MTB2_06表面にザラザラ感を出したいので、gloss、specularにノイズを足してみます。
MTB2_07前面も動揺に作っていきます。右がnormalとAO mapが入った感じです。ここの細かい段差もnormalで表現します。
MTB2_08左側Normal mapのエッジ部分が変な映り込みをしています。
これはメッシュのtangent spaceに3dsmaxを選ぶことで直りました。(右側)
MTB2_09
ボディとの接続部分、右側はgloss、specular mapを入れた状態です。
Glossが高いとピカピカ、低いとザラザラに。Specluarは反射の強さを制御する感じでしょうか。
MTB2_10後ろのメタル部分は1つのモデルで作ったので凹凸部分のnormal mapの解像度が足りていません。(左側)
UVを凹凸部分の面積が大きく取れるよう調整、mapも調整しました。(右側)
MTB2_11文字や数字、合わせ用の点などディティールを追加しました。Local reflectionをonにしているので、オレンジの丸が自己反射しています。残念ながらwebGLには反映されないようです・・
MTB2_12Viewerに書き出してブラウザから確認してみましたが、Gloss mapがキレイに書き出せていないようです。(左側)
Marmosetの仕様を見てみると、gloss mapはinvertにチェックが入っていると書き出せるよとの事・・・
チェックを入れてmapを調整してみました。(右側)
MTB2_13反射のhorizon occlusionで、どこまで周囲を反射するかを調整して完成としました。
Here is a link to our real-time demo.

CONTACT

お問い合わせ

WEBサイト制作や、システム・APP開発など、
制作案件に関するお問い合わせは
下記よりお願いいたします。

案件のご相談・お問い合わせ

パートナー企業募集

スカイリンクでは一緒にものづくりをしていけるパートナーを募集しております。

  • ・受発注問わず相互に協力関係を築けるパートナー企業
  • ・業務委託等、個人で活躍されているクリエイターの方

また、お仕事でなくても気軽に情報交換できるようなお付き合いも大歓迎です。

お問い合わせ

採用情報

時間や場所に縛られない。
リモート業務を実施しているスカイリンクでは
東京だけではなく、岡山をはじめとした県外各所から積極的に採用中です。
「新鮮な驚き」を一緒に考えてくれる仲間を求めてます。

採用サイト