この記事について

箱に模様を貼ったら、正面では正方形なのに横の面では細長く見える。そんなときは、画像のどこをメッシュの各面へ貼るかを決める「UV」を確認します。UV展開は、立体の表面を平面へ開いて、画像との対応を作る作業です。

この記事では横長の箱を6枚の面に分けてUV展開し、Blender内で作れるUV Grid画像で模様の伸びを確認します。外部のテクスチャ素材は使いません。格子の確認には、軽量なSolid表示のTexture設定を使います。使用環境はBlender 4.3.2、Linux、英語表示、標準キーマップです。実画面に付けた赤枠の数字は、基本手順の番号に対応しています。

この記事でわかること

  • SeamでUVの切れ目を指定する方法
  • Unwrapで箱を6個のUV島に分ける方法
  • UV Grid画像をマテリアルへ接続し、伸びを見つける方法

基本手順

File → New → Generalで新しいファイルを開き、Cubeを選びます。作業中のファイルがあれば先に保存してください。ショートカットは、操作したいエディターの上へマウスポインターを置いて実行します。

手順1 横長の箱を作りスケールを適用する

Object ModeでS、X、2、Enterと押して箱を横へ伸ばします。Ctrl+AのApplyメニューからScaleを選びます。NキーでItemを開き、ScaleがX・Y・Zとも1、DimensionsがX=4、Y=2、Z=2になったことを確認します。

スケールを適用してから展開すると、実際の面の縦横比を基準にできます。Scale欄へ直接1を入力する操作では、箱が元の幅へ戻ってしまうので注意してください。

手順1。Scaleは1・1・1、Dimensionsは4・2・2です。画面はView → Frame Selectedで箱を拡大しています。
手順1。Scaleは1・1・1、Dimensionsは4・2・2です。画面はView → Frame Selectedで箱を拡大しています。

手順2 すべての辺をUVの切れ目にする

上部のUV Editingワークスペースへ切り替えます。右側の3D ViewportをEdit Modeにし、上段の2キーで辺選択に切り替えます。Aですべての辺を選び、F3で「Mark Seam」を検索して実行します。

今回は箱の12本の辺をすべて切れ目にします。6面が1枚ずつ別のUV島になるので、最初の練習でも展開結果を読み取りやすくなります。UVだけの切れ目なので、箱のメッシュ自体はばらばらになりません。Alt+Aで選択を解除すると、Seamの辺が赤く表示されます。確認したらAですべてを選び直してください。

手順2。すべての辺を選んでMark Seamを実行します。
手順2。すべての辺を選んでMark Seamを実行します。
手順2。選択を解除するとSeamの辺が赤く見えます。確認したらAで全体を選び直します。
手順2。選択を解除するとSeamの辺が赤く見えます。確認したらAで全体を選び直します。

手順3 Unwrapで6枚の面を展開する

右側の3D Viewportで、すべての面を含む状態のままUキーを押し、Unwrap → Angle Basedを選びます。左側のUV Editorに6個の四角いUV島が並びます。見えにくいときは左側へマウスを移し、Homeキーで全体を表示します。

この箱には2対1の長方形が4面と、正方形が2面あります。UVにもその比率が反映されていれば、各面の模様を同じ密度で貼れます。UV島の向きや並び順が画面と違っても、それだけで失敗ではありません。

手順3。U → Unwrap → Angle Basedを選びます。
手順3。U → Unwrap → Angle Basedを選びます。
手順3。長方形4枚と正方形2枚のUV島です。向きや配置が違っていても、縦横比を確認してください。
手順3。長方形4枚と正方形2枚のUV島です。向きや配置が違っていても、縦横比を確認してください。

手順4 確認用のUV Grid画像を作る

左側のUV EditorでImage → Newを選びます。NameをBox_Checker、WidthとHeightをそれぞれ1024にし、Generated TypeをUV Gridへ変更して画像を作成します。白黒の格子と小さな色付きの印が表示されます。

UV Editorに画像を表示しただけでは、3Dの箱にはまだ貼られません。次の手順で、この画像をマテリアルの色へ接続します。

手順4。画像名はBox_Checker、サイズは1024×1024、Generated TypeはUV Gridです。
手順4。画像名はBox_Checker、サイズは1024×1024、Generated TypeはUV Gridです。
手順4。UV EditorでAを押してUV全体を選び、Homeで画像全体を表示しています。
手順4。UV EditorでAを押してUV全体を選び、Homeで画像全体を表示しています。

手順5 Image Textureをマテリアルへ接続する

右側でTabを押してObject Modeへ戻り、上部のLayoutワークスペースを開きます。画面下のTimelineとの境界を上へドラッグして、下側の領域を広げます。下側の左上にあるエディターの種類のボタンを押し、Shader Editorを選びます。これで上に3D Viewport、下にShader Editorが並びます。

箱が選ばれていることを確認します。下側にPrincipled BSDFがなければ、Newを押してマテリアルを作ります。ノードが小さければ、Shader Editor上でマウスホイールを上へ回して拡大してください。

Shader EditorでF3を押し、「Image Texture」を検索して追加します。Shift+A → Texture → Image Textureからも追加できます。ノードを空いている場所へ置きます。Image Textureの画像選択メニューからBox_Checkerを選びます。黄色いColor出力をPrincipled BSDFのBase Color入力へドラッグしてつなぎます。Principled BSDFからMaterial Outputへの接続は残してください。

Image Textureのタイトル部分をクリックし、このノードをアクティブにしておきます。次の手順のSolid表示では、アクティブなImage Textureを使います。Vector入力を空欄にした、この作例のマテリアルも箱のアクティブなUVマップを使います。

手順5。下側のShader EditorでImage Textureを追加します。
手順5。下側のShader EditorでImage Textureを追加します。
手順5。Box_CheckerのColorからPrincipled BSDFのBase Colorへ接続します。画像はShader Editor部分を切り出しています。
手順5。Box_CheckerのColorからPrincipled BSDFのBase Colorへ接続します。画像はShader Editor部分を切り出しています。

手順6 格子を表示して正面と側面の伸びを確認する

上側の3D ViewportはSolid表示のままにします。右上の表示モードの丸いアイコン群の右端にある下向き矢印を押し、Viewport Shadingを開きます。ColorでTextureを選ぶと、箱に格子が表示されます。

これはUVと画像の貼られ方を軽く確認するための表示です。Solidはマテリアルのシェーダー全体を計算する表示ではありません。照明や質感まで確認したい場合は、保存後にMaterial Previewへ切り替えてください。

3D Viewportでテンキー1のFront、テンキー3のRight、テンキー7のTopへ順に切り替え、各面を正面から見ます。テンキーがなければView → Viewpointから切り替えられます。左上の表示がPerspectiveならテンキー5を押してOrthographic(平行投影)へ切り替えます。斜めから見ると角度で格子がつぶれて見えるため、面へ正対して比べます。面ごとにズーム倍率を変えなければ、格子の大きさも比べやすくなります。

どの面でも格子がほぼ正方形で、1マスの大きさがそろっていれば成功です。横長の面では、横方向に並ぶマスの数が正方形の面より多くなります。箱の各面に同じ画像全体を1枚ずつ貼る設定ではありません。

展開前のUVを使ったり、UV島だけを一方向へ縮めたりすると、格子が引き伸ばされます。形を作り直した場合は、スケールとSeamを確認し、対象の面をすべて選んでUnwrapをやり直します。再展開すると既存のUV配置が変わるので、仕上げ途中のモデルでは別名保存してから試してください。

手順6。Solid表示のColorをTextureにします。この画面はMaterial Previewではありません。
手順6。Solid表示のColorをTextureにします。この画面はMaterial Previewではありません。
手順6。正面から見た格子です。平行投影で正方形のマスを確認します。
手順6。正面から見た格子です。平行投影で正方形のマスを確認します。
手順6。同じズーム倍率で右側を見たところです。横長の面よりマスの数が少なく、マス自体の大きさはそろっています。
手順6。同じズーム倍率で右側を見たところです。横長の面よりマスの数が少なく、マス自体の大きさはそろっています。

手順7 画像を含めて保存し開き直す

File → Save Asでuv_box.blendなどの名前を付けて保存します。今回作ったUV GridはBlenderの生成画像なので、.blendに生成設定が保存されます。外部の画像ファイルへ置き換えた場合は、File → External Data → Pack Resourcesで画像をまとめてから保存すると、別の環境へ移すときの参照切れを防げます。

保存した.blendをFile → Openで開き直し、手順6と同じSolidのTexture表示で格子が残っているか確認します。UV EditingではBox_Checkerと6個のUV島を確認してください。

手順7。uv_box.blendという名前で保存します。画像はファイル名とSave Asボタンの部分です。
手順7。uv_box.blendという名前で保存します。画像はファイル名とSave Asボタンの部分です。
手順7。保存したファイルを開き直しても、生成画像とノードの接続が残り、SolidのTexture表示で格子を確認できます。
手順7。保存したファイルを開き直しても、生成画像とノードの接続が残り、SolidのTexture表示で格子を確認できます。

うまくいかないときの確認箇所

箱が白いままで画像が見えない

SolidのViewport ShadingでColorがTextureになっているか確認します。続けて箱のマテリアルにImage Textureがあり、Box_Checkerが選ばれていて、このノードがアクティブになっているか確認します。Material Previewを使う場合は、ColorとBase Colorの接続も確認してください。UV Editorに画像を出す操作と、マテリアルへ画像を貼る操作は別です。

UVが見えない または一面しか出ない

右側がEdit Modeになっているか確認し、Aですべてのメッシュを選びます。UV Editorに表示される範囲は、メッシュの選択状態やUV Sync Selectionの設定に影響されます。今回の手順では全体を選択した状態で進めます。

切れ目で模様がつながらない

今回はすべての辺をSeamにしているため、各面で模様が途切れます。連続した柄を貼る場合は、つなげたい辺のSeamを解除して展開し直します。最初は6面の縦横比と格子の大きさをそろえるところまで確認できれば十分です。

まとめ

箱のUV展開は、形とスケールを整え、Seamで切れ目を付け、Unwrapする順に進めます。生成したUV GridをImage TextureからBase Colorへつなぎ、各面を正面から見て格子を確認しましょう。保存後に開き直すところまで行うと、UVだけでなく画像の保存漏れも見つけられます。

参考:Blender 4.3 Manual UV Operators、Viewport Shading、画像の設定