【Blender】別のUVマップでベイクする

投稿者: | 2021-11-07

テクスチャをベイクするときにレンダリングとは別のUVマップを使ってみました。

2つ目のUVマップを作る

デフォルトのCubeは初めから綺麗にUV展開されています。

違いがわかりやすいようにこのUVを拡大しました。

オブジェクトデータプロパティのUV Mapsパネルの+ボタンで新しいUVマップを作り、カメラのマークをクリックしてこのUVマップをアクティブにします。

この状態で初めのUVマップとは別の方法でアンラップしました。

UVを切り替える

次にカラーグリッドを表示しました。マテリアルプロパティのBase Colorの横のボタンから「Image Texture」を選択します。

これで画像を表示できるようになったので、「New」ボタンから新規画像を作ります。Generated Typeを「Color Grid」にして「OK」を押します。

3Dビューポートの右上でマテリアルプレビューを選択するとカラーグリッドが表示されます。

UV Mapsパネルのカメラのマークでレンダリングに使うUVを切り替えられます。拡大した初めのUVでは模様がより小さく表示されています。

別のUVを指定する

このカメラのマークが点灯している方がベイク元のUVマップです。

シェーダーエディタのUVマップノードでも選べます。

ベイク先のUVマップはカメラのマーク以外の部分を左クリックして、グレーにハイライトすることで指定できます。

これは編集モードでUVエディタの右上でも選択できます。

テクスチャをベイクする

テクスチャをベイクするには、まずシェーダーエディタでテクスチャが設定された「Image Texture」ノードが選択された状態にします。

そして、オブジェクトモードでこのCubeを選択し、レンダープロパティでRender Engineを「Cycles」にします。

その下のBakeパネルでBake Typeを「Diffuse」にし、Contributionsで「Color」だけにチェックをいれて「Bake」ボタンをクリックするとベイクされます。

すると、2つ目のUVに合わせて模様の小さいカラーグリッドがベイクされました。

この方法でキャラクターの顔のテクスチャをベイクしてみました。このキャラクターの顔の部分では前方から投影するようにUV展開されていて、顔写真の画像が表示されています。

また、ミラーモディファイアが使われていて、顔写真の片側だけが使われています。モディファイアを適用してもUVは重なった状態です。

UVマップを新規作成して別の方法でアンラップし、同様にベイクしました。

ベイクしたテクスチャのColorをBase Colorに接続してみます。

2つ目のUVをアクティブにすると、顔テクスチャが正しく表示されました。

コメントを残す

メールアドレスが公開されることはありません。