3ds max 2014、V-rayを使用しています。
既存の3dシーンファイルに、別のマテリアルをインポートしようとしています。マテリアルは元々のテクスチャを変更 (色の変更) し保存してあるものです。
マテリアルを3ds maxで開くと、テクスチャの変更は反映されており、問題ありません。
しかし、上記別のファイルにインポートすると、変更が反映されていない、元々のテクスチャになっています。
テクスチャ以外は正常にインポートされています。
よろしくお願いします。
解決済! 解決策の投稿を見る。
回答者: nagaimo. 解決策の投稿を見る。
マテリアルをインポートとありますが、オブジェクトごと合成した場合でしょうか?
それともマテリアルライブラリなどで読み込んできた場合でしょうか?
憶測ですが、可能性としてはマテリアルの名前が重複しているとか
テクスチャのパスが相対パスだったりするとかではないでしょうか。
たとえば、オブジェクトに割り当てられているマテリアルのテクスチャを別テクスチャに変更して
シーンを別名保存した後、変更する前のシーンを読み込みなおして色違いのものを合成した場合
マテリアル名を変更していないと、名前が重複するのでダイアログがでますが、そのときシーンのマテリアルを使用する選択をすると、
今あるシーン上の同名マテリアルに置き換わって読み込まれますので、変更前のマテリアルに変わってしまうと思います。
もしくは、テクスチャが相対パスで記録していて、別フォルダに色違いテクスチャを同名で保存していた場合
オブジェクトを合成したりマテリアルをライブラリで読み込んだ場合にテクスチャを見失うので、現在のプロジェクトフォルダや
設定されている外部ファイルのユーザーパスから探してきます。
その場合変更前のテクスチャが同名でプロジェクトフォルダに存在していたらそれを読み込んできてしまいます。
とりあえず、考えられる状況はこんな感じでしょうか
マテリアルをインポートとありますが、オブジェクトごと合成した場合でしょうか?
それともマテリアルライブラリなどで読み込んできた場合でしょうか
合成した場合です。
外部ユーザーパスのテクスチャ名が重複していたため、使用しないフォルダを削除し再度インポートしたところ、色の変更をしたマテリアルがうまく表示されました。
しかしレンダリングをすると、マテリアルが白くなってしまいます。
外部ユーザパスの設定を変えただけはいけないのでしょうか。
実際に読み込まれているテクスチャのファイルパスは現状どうなってるんでしょう?
左上のMaxメニュー>参照>アセットトラッキング
から現在のシーンのテクスチャの実際に記録されているパスが見れると思います。
読み込みたいファイルが実際に存在している場所とそこのパスは絶対パスで一致していますでしょうか?
所でたぶん色違いテクスチャは同一のファイル名なんですよね?
Maxはたしか、相対パスで記録されている場合は現在のプロジェクトフォルダからの相対パス
絶対パスで記録されている場合はその絶対パス、見つからない場合はシーンファイルの直下、
次に外部ファイルのユーザーパスの順に探してきたと思います。
ですので、もし、同一のファイル名で内容が違うテクスチャが複数存在する場合は
パスの設定しだいで読んでくる場所が変わってしまいトラブルの元になるので、あまりお勧めできないです。
特殊な事情(ゲームとかで色違いアセットの量産で仕様上同一ファイル名にしないといけないとか)でなければ
違う内容のテクスチャは、名前を変えた方がいいです。
ただ、マテリアルエディタ上に表示されていれば、読み込まれてはいると思うので
もしかしたら、レンダリングすると白くなるというのは、また、何か別の理由があるのかもしれません。