タンジェントスペースのノーマルマップについて

1,190 views
Skip to first unread message

TKS

unread,
Sep 10, 2016, 4:38:53 AM9/10/16
to modo ディスカッショングループ
お世話になります。

modo上でタンジェントスペースのノーマルマップを適用したいのですが、上手く表示されません。

作業の流れは、まずZbrushで高精細モデルを作成し、


↓このモデル(サブディビジョンレベルは2)にxNormalでタンジェントスペースのノーマルマップをベイク。



ノーマルマップを適用するとシェーディングが全体的におかしく表示されます。(全体的に反射の向きが変わり、UVの切れ目でシェーディングが変わっています。)


このシェーディングはどういう状態なのでしょうか?(オブジェクトスペースの設定になっているのでしょうか?)


ちなみにMarmoset Toolbag2というリアルタイムシェーダーのソフトでノーマルマップを適用すると下記のようにうまく表示されます。
この状態をmodoでも再現したいと考えております。宜しくお願いいたします。




Yoshiaki Tazaki

unread,
Sep 11, 2016, 2:13:59 AM9/11/16
to modo-...@googlegroups.com

ちゃんと確認していないので情報が不確かなのですが、Modoでタンジェントベースの法線マップを使用するためには、Tangent Basisの頂点マップを作成する必要があったと思います。対象となるメッシュを選択した状態で、システムメニューのVertex Map > Tangent VectorsからTangent Basis作成メニューを選択します。Create Mikk Tangent Basisか、Create Source Tangent Basisを選択すると頂点マップリストのOhtersのタブの下にTangent Basisのマップが作成されます。

--
--
このメールは Google グループのグループ「modo ディスカッショングループ」の登録者に送られています。
このグループに投稿するには、modo-...@googlegroups.com にメールを送信してください。
このグループから退会するには、modo-japan+...@googlegroups.com にメールを送信してください。
詳細については、http://groups.google.com/group/modo-japan?hl=en からこのグループにアクセスしてください。

---
このメールは Google グループのグループ「modo ディスカッショングループ」に登録しているユーザーに送られています。
このグループから退会し、グループからのメールの配信を停止するには modo-japan+...@googlegroups.com にメールを送信してください。
その他のオプションについては https://groups.google.com/d/optout にアクセスしてください。

-- 
Yoshiaki Tazaki

takas...@gmail.com

unread,
Sep 11, 2016, 5:42:29 AM9/11/16
to modo ディスカッショングループ
taz様

ご返答ありがとうございます。

モデルに「Tangent Basis」(日本語では接線基底でしょうか??)を追加してみたのですが、特に変化がないようです。
なにか追加する順序やプロパティの設定等があるのでしょうか?



2016年9月11日日曜日 15時13分59秒 UTC+9 taz:

ちゃんと確認していないので情報が不確かなのですが、Modoでタンジェントベースの法線マップを使用するためには、Tangent Basisの頂点マップを作成する必要があったと思います。対象となるメッシュを選択した状態で、システムメニューのVertex Map > Tangent VectorsからTangent Basis作成メニューを選択します。Create Mikk Tangent Basisか、Create Source Tangent Basisを選択すると頂点マップリストのOhtersのタブの下にTangent Basisのマップが作成されます。


On 2016/09/10 17:38, TKS wrote:
お世話になります。

modo上でタンジェントスペースのノーマルマップを適用したいのですが、上手く表示されません。

作業の流れは、まずZbrushで高精細モデルを作成し、


↓このモデル(サブディビジョンレベルは2)にxNormalでタンジェントスペースのノーマルマップをベイク。



ノーマルマップを適用するとシェーディングが全体的におかしく表示されます。(全体的に反射の向きが変わり、UVの切れ目でシェーディングが変わっています。)


このシェーディングはどういう状態なのでしょうか?(オブジェクトスペースの設定になっているのでしょうか?)


ちなみにMarmoset Toolbag2というリアルタイムシェーダーのソフトでノーマルマップを適用すると下記のようにうまく表示されます。
この状態をmodoでも再現したいと考えております。宜しくお願いいたします。




--
--
このメールは Google グループのグループ「modo ディスカッショングループ」の登録者に送られています。
このグループに投稿するには、modo-...@googlegroups.com にメールを送信してください。
このグループから退会するには、modo-japan+unsub...@googlegroups.com にメールを送信してください。

詳細については、http://groups.google.com/group/modo-japan?hl=en からこのグループにアクセスしてください。

---
このメールは Google グループのグループ「modo ディスカッショングループ」に登録しているユーザーに送られています。
このグループから退会し、グループからのメールの配信を停止するには modo-japan+...@googlegroups.com にメールを送信してください。
その他のオプションについては https://groups.google.com/d/optout にアクセスしてください。

-- 
Yoshiaki Tazaki

Yoshiaki Tazaki

unread,
Sep 11, 2016, 6:30:11 PM9/11/16
to modo-...@googlegroups.com

On 2016/09/11 18:42, takas...@gmail.com wrote:

taz様

ご返答ありがとうございます。

モデルに「Tangent Basis」(日本語では接線基底でしょうか??)を追加してみたのですが、特に変化がないようです。
なにか追加する順序やプロパティの設定等があるのでしょうか?

Tangent Basis(接線規定)の頂点マップは、ベイクの時に使われる情報だったみたいです。

テクスチャロケータの説明を見るとTangent Vector Typeの設定があります。この設定でdPdu, dPdvは、サーフェイス法線ベクトルを接線のU方向とV方向のベクトルで定義する物ですので、テクスチャロケータのTangent Vector TypeをdPdu, dPdvにすれば一致する気がするのですがどうでしょうか?dPdu Cross ProductはU方向とV方向のベクトルの外積ですのでサーフェイスからの法線方向へのベクトルとなります。

Tangent Vector Type - determines the tangent vector basis for an associated image map set as the surface normal, affecting both the baking and the display of normal maps. Normal maps are generally baked from high resolution geometry onto low resolution geometry to give the impression of higher resolution.
There are two options available: dPdu dPdv defines a tangent space normal, the dPdu Cross Product option defines a bi-tangent space normal that is compatible with many game engines. When baking image-based normal maps, you need to define the proper vector basis prior to actually baking the image out for the proper results.

https://help.thefoundry.co.uk/modo/#help/pages/shading_lighting/shader_items/texture_locator.html?Highlight=tangent%20basis

このグループから退会するには、modo-japan+...@googlegroups.com にメールを送信してください。

詳細については、http://groups.google.com/group/modo-japan?hl=en からこのグループにアクセスしてください。

---
このメールは Google グループのグループ「modo ディスカッショングループ」に登録しているユーザーに送られています。
このグループから退会し、グループからのメールの配信を停止するには modo-japan+...@googlegroups.com にメールを送信してください。
その他のオプションについては https://groups.google.com/d/optout にアクセスしてください。

-- 
Yoshiaki Tazaki

takas...@gmail.com

unread,
Sep 12, 2016, 10:41:59 AM9/12/16
to modo ディスカッショングループ
taz様

ご返答ありがとうございます。

Tangent Vector Type(日本語では接線ベクトルタイプ)を「dpdu、外積」に切り替えてみたのですが、特に変化がありませんでした。。




2016年9月12日月曜日 7時30分11秒 UTC+9 taz:

TKS

unread,
Sep 14, 2016, 9:33:18 AM9/14/16
to modo ディスカッショングループ, takas...@gmail.com
すみません、dpdu、dpdvでしたね。。
ただ、接線ベクトルタイプはデフォルトでdpdu、dpdvになっているようです。
また接線ベクトルタイプを切り替えてもノーマルマップは特に変化が見られないようです。


2016年9月12日月曜日 23時41分59秒 UTC+9 takas...@gmail.com:

TKS

unread,
Sep 17, 2016, 11:43:29 PM9/17/16
to modo ディスカッショングループ
解決しました。

原因はノーマルマップが「sRGB」になっていたからで、カラースペースを「リニア」または「(なし)」に変更すると正しく表示されました。
Modoのデフォルト設定では画像は「sRGB」で読み込むようで、ノーマルマップに対しては手動で切り替える必要があるようです。
ノーマルマップは法線を制御するマップなので、画像の調整を行ってはいけないタイプのテクスチャでした(ということはバンプマップやディスプレースメントマップも??)。




Modoの初期設定のカラーマネジメントでは読み込む画像を自動的に「sRGB」にする設定があるようで、
ここで読み込む画像のデフォルトの状態を制御できるようです。(まだあまり理解していませんが。。)





2016年9月12日月曜日 7時30分11秒 UTC+9 taz:

On 2016/09/11 18:42, takas...@gmail.com wrote:

Reply all
Reply to author
Forward
0 new messages