本日はUnrealEngineでもっと早く知りたかった
「マテリアルが伸びたりつぶれたりする件」の簡単な調整方法を解説します。
調整済の右の部屋に比べて左は壁や床のマテリアルサイズ感が変ですね
一般的にはメッシュを作り直すか、マテリアルにUVタイリング調整するパラメタを追加して、マテリアルインスタンスで調整する結構めんどくさい方法しか見つからないかと思います。
モデリングモードのUV Mapで解決
モデリングモードに切り替えて、UVs/Project UVs (UVの投影)機能を使います
ここのDimensionsで、マテリアルを貼られるメッシュ側のスケールを調整できます
(貼り付けるマテリアル側のタイリングではなく、貼られる側の調整なのがポイント)
このときProjection TypeがPlaneになっていると
どこかの面が変になるので、面ごとにマテリアルが貼ってある場合は別として、Boxの場合はProjection TypeもBoxにしましょう
承諾ボタンを押すとメッシュ自体に反映されます
ちなみにMegascansのテクスチャなどには、2m x 2m などのスケール情報が書いてあるので
その100倍で㎝単位(UnrealEngine的にはuuというアンリアルユニット単位)にするとスキャン時と同じサイズ感にできるそうです
ハマりポイント
レベル上で複製した場合の挙動もみてみましょう
この2枚の壁は同じスタティックメッシュをレベル上で複製した状態で、奥側のスケールを大きくして縦長にしたものです。
これで奥側の長いほうでさきほどの技を使ってみます。
承諾すると奥は調整したとおりになりましたが、手前がクシュっとつぶれてしまいました。
同じメッシュを参照しているので、片方に合わせると逆が合わなくなるという問題です。
この場合は、あきらめてマテリアルインスタンス、、、ではなく
おなじモデリングモードで、XForm/Duplicate(複製)機能でメッシュ側を独立させるとよいかなと思います。ファイルが別ものになりつつ、レベル上の状態そのままなので置きなおしやサイズ調整がなくて楽です。
その状態で今回紹介した技でそれぞれマテリアル投影を調整できます。
この場合はメッシュは独立で、マテリアルが共通の状態なので、マテリアル側で共通の変更を加えることもできますね
おわりに
お疲れさまでした。
コメント