#author("2023-07-14T18:52:44+09:00;2022-01-27T12:07:09+09:00","default:inoue.ko","inoue.ko") #author("2023-07-14T18:53:19+09:00;2022-01-27T12:07:09+09:00","default:inoue.ko","inoue.ko") *Scenes & Objects Blender Tutorial ~ 3DCGでは、仮想空間の中にモデル(被写体)・照明・カメラといった ''Object'' を配置してシーンをつくります。上面・正面・側面からそれぞれの位置関係を調節して、最終的なイメージ、つまりカメラから見た映像を最適化します。 ~ ~ **座標系について シーンは3次元空間なので、Object の位置決めや、カメラの回転などについては、X,Y, Z の3つの軸を意識する必要があります。 3次元座標には、''右手系''と''左手系''の違いがあること、また、シーン全体を基準とした''グローバル座標''と、各Objectを基準とした''ローカル座標''の違いがあることをはじめに確認しておきましょう。以下、概説します。 __[[&color(red){''&fontawesome(fas fa-film); 解説動画''};>https://youtu.be/ggqridgawT8]]__ ~ ***Blender は右手系 #image(Blender/xyz.jpg,right,20%) Blender は [[OpenGL>Google:OpenGL]] ベースの''右手系''アプリケーションで、''直角に広げた右手親指・人差し指・中指を順に X, Y, Z 軸とする''イメージで以下のように定義されています。 親指の向き:X軸の+向き 人差し指の向き:Y軸の+向き 中指の向き:Z軸の+向き ''参考'':他の3DCGツールの座標系 右手系:Maya, 3dsMax, Houdini, Shade3D, AutoCAD, Vectorworks 左手系:Cinema 4D, LightWave3D, ZBrush ~ ***グローバル座標系 グローバル座標とは、3次元の仮想空間全体に基準を置くもので、Blender のシーンは正面から見ると以下のようになります。 正面ビューの左右方向:X軸(右の方が+) 正面ビューの奥行方向:Y軸(奥の方が+) 正面ビューの高さ方向:Z軸(上の方が+) ~ ***ローカル座標系 ローカル座標とは、個々の Object に基準を置くもので、Blender の Object は正面から見ると以下のようになります。 Object の左右方向:X軸(右の方が+) Object の奥行方向:Y軸(奥の方が+) Object の高さ方向:Z軸(上の方が+) ~ ***グローバルとローカルの切り替えについて 操作を行う座標系を明示的に変更するには、以下の2つの方法があります。 Orientation PieMenu:[ , ] 3D Viewport の Header にある Transform プルダウンメニュー &small(PieMenu というのは、パイのように円形に広がるメニューのことです。); なお Blender では、ホットキーの操作のみでグローバル座標での操作とローカル座標での操作が区別できるようになっています(詳細後述)。 グローバル X 軸回りに回転:[R] + [X] + [MouseMove] ローカル X 軸回りに回転:[R] + [X] + [X] + [MouseMove] &small(つまり、座標キー1回ならグローバル座標、2回ならローカル座標での操作になります。); //以後の説明では、移動・回転・スケーリング(拡大・縮小)に関して、必要に応じてグローバル座標の話か、ローカル座標の話かを明記します。 ~ ~ **Scene ***視点の切り替え __[[&color(red){''&fontawesome(fas fa-film); 解説動画''};>https://youtu.be/IA8UUyFEwZc]]__ シーン内に Object を配置するには、必要に応じて作業視点を変更することが必要になります。視点の切り替えは Viewport Gizmos の X , Y , Z , カメラアイコンでも変更可能ですが、以下のようにテンキーを使う方が効率的です。 カメラビュー:[0] 正面ビュー :[1] 側面ビュー :[3] 上面ビュー :[7] 透視投影 / 平行投影:[5] &scale(75){注1)マウスの中ボタン(MMB)とは、スクロールホイールのことです。}; &scale(75){注2)キーボードにテンキーがない場合は、通常の数字キーで操作できるように環境を変えることでもできます。> __[[Blender/InstallAndSettings]]__のページで「テンキーがない方へ」の項をご覧ください。}; ~ ***透視投影と並行投影 3次元シーンの表示(投影法)には、遠近感のある透視投影(Perspective View) と、遠近感のない平行投影(Orthographic View)があります。投影法の切り替えは Viewport Gizmos の グリッドアイコンのクリックでも変更可能ですが、以下のようにテンキーを使う方が効率的です。 Perspective / Orthographic:[5] ~ ***視野の移動とズーム シーンに Object をレイアウトしていくためには、シーン全体を回転・平行移動したり、ズームしながら全体を眺めることが必要になります。 これらの操作は Viewport Gizmos の手のひらアイコンやズームアイコンでも可能ですが、以下のようにマウスを使う方が効率的です。 回転移動:[MMB Drag] 平行移動:[SHIFT] + [MMB Drag] ズーム :[Wheel] ~ ***シェーディングモード 作業中のシーンの陰影表現は、Header 右に配置されている Viewport Shading のアイコンで切り替えることができます。 Wire:ワイヤーフレーム Solid:ソリッド(固体)モード Material:マテリアル(質感)モード Render:レンダリング(最終出力)モード この切り替えは、以下の操作でも可能です。 シェーディングモードの切り替え:[Z] > パイメニュー ~ ~ **Objects ***オブジェクトとは モデル、照明、カメラは、 Objectと Object Data (ObData)の2つの部分から構成されます。各Objectには、関連する Object Data へのリンクがあり、1つのObject Data は複数の Object で共有できる仕組みになっています。 -Object:特定の要素の位置、回転、サイズに関する情報を保持 -Object Data:種類別に詳細な情報を保持。例えば・・ --Meshes(モデル):オメトリ、マテリアルリスト、頂点グループなど --Cameras:焦点距離、被写界深度、センサーサイズなど ~ ***様々なオブジェクト Blender には、シーンの構成要素として様々な Object が用意されています。 -''Mesh'':ポリゴン(多角形)の集合体 --Plane:平面 --Cube:立方体 --Sphere:球体 --Cone:円錐 --Cylinder:円柱 --Torus:トーラス(輪環体、円環体) -''Curve'':曲線(ベジエ曲線、NURBS曲線) -''Surface'':曲面 -''Light'':レンダリングでシーンを照らすための空のオブジェクト -''Camera'':レンダリング用の仮想カメラ -Metaball:メタボール(濃度球) -Text:文字(列) -Volume:煙・炎・流体等 -Grease Pencil:ストロークペイントによって作成されたオブジェクト -Armature:仮枠(彫刻用語)> スケルトン(骨組み)と同義 -Lattice:他のオブジェクトを変形するため空の格子状オブジェクト -Empty:他のオブジェクトを制御するための空の視覚変換ノード -Image:3D Viewportに画像を表示する空のオブジェクト((これらの画像は、モデリングやアニメーション作成する際の補助として使用できます。)) -Speaker:シーンに音源をもたらす空のオブジェクトです。 -Force Field:シーンに外力(重力など)を与える制御オブジェクト ~ ***オブジェクトの追加・削除 __[[&color(red){''&fontawesome(fas fa-film); 解説動画''};>https://youtu.be/Qne4WESBQoQ]]__ 3次元のシーンは、様々な Object を追加配置しながら作っていきます(ライトやカメラも複数追加可能)。メニュー操作では、3D Viewport の Header >Add > オブジェクトの種類を選択しますが、以下のようなキー操作を推奨します。 追加:[SHIFT] + [A] > Select Object Type 削除:[Delete] or [X] ~ ***オブジェクトの追加直後の設定 __[[&color(red){''&fontawesome(fas fa-film); 解説動画''};>https://youtu.be/4eSlz-YQ_MM]]__ #image(Blender/PrimitiveSettings.jpg,right,20%) オブジェクトを追加した直後は、プリミティブとしての設定(例えば、Sphere の場合は緯度・経度方向の分割数などの設定)が可能です。配置を確定した後は、Editモードでの形状編集が前提になるので(もはや Sphereプリミティブである必要はないので)、設定パネルは出なくなります。初期オブジェクトのメッシュの分割数の設定は、追加直後に行なってください。 ~ ***オブジェクトの選択 __[[&color(red){''&fontawesome(fas fa-film); 解説動画''};>https://youtu.be/PgR7QTezoa8]]__ オブジェクトを操作するには、はじめにシーンの中から対象となるオブジェクトを選択する必要があります。オブジェクトの選択は、以下のように行います。追加選択は[SHIFT]+、全選択 / 矩形選択 / ペイント選択は、キーボードの[A] / [B] / [C]の順で、わかりやすい仕様になっています。 選択:[LMB] 追加選択:[SHIFT] + [LMB] 全選択 / 解除:[A] / [ALT] + [A] 矩形選択:[B] + [Drag] サークル選択:[C] + [Drag] 選択メソッドの切り替え:[W] [W] は領域選択方法の切り替えで、通常選択 / 矩形選択 / サークル選択 / 投げ縄 の3種類があります。選択領域は 3D Viewport Headerのアイコンで、和・差・積の切り替えができます。 #image(Blender/SelectMethod.jpg,right,20%) 和:既存の選択領域に新たな選択領域を追加 差:既存の選択領域から新たな選択領域を除外 積:既存の選択領域と新たな選択領域の交差 注)Blenderは、従来 [RMB] で選択・・というのが標準仕様でしたが、現在は他のアプリケーションと同様に [LMB]で選択する仕様になっています。 ~ ***移動・回転・拡大縮小|ツール __[[&color(red){''&fontawesome(fas fa-film); 解説動画''};>https://youtu.be/OC5_ZF2X2JQ]]__ Object の移動・回転・スケーリングは、3D Viewポート左に表示されるツールと Object Gizmos で操作することができます。初心者のうちはこちらの方が良いかもしれませんが、後述の HotKey を使うことを推奨します。 ~ ***移動・回転・拡大縮小|HotKey __[[&color(red){''&fontawesome(fas fa-film); 解説動画''};>https://youtu.be/SmCwONxLcGw]]__ Object の移動・回転・スケーリングは、HotKeyを使うと効率的に作業できます。 移動:[G] + [Mouse Move](LMB Drag でも移動します) 回転:[R] + [Mouse Move] 拡縮:[S] + [Mouse Move] グローバル座標軸に沿った移動・回転・拡大縮小を行う場合は、以下のように [X] [Y] [Z] のキーを組み合わせます(以下 X軸の場合)。 移動:[G] + [X] + [Mouse Move] 回転:[R] + [X] + [Mouse Move] 拡縮:[S] + [X] + [Mouse Move] ローカル座標軸に沿った移動・回転・拡大縮小を行う場合は、以下のように [X] [Y] [Z] のキーを2回連続してタイプします(以下 X軸の場合)。 移動:[G] + [X] + [X] + [Mouse Move] 回転:[R] + [X] + [X] + [Mouse Move] 拡縮:[S] + [X] + [X] + [Mouse Move] キー入力のみで操作を行うことも可能です。以下のように、操作>軸>値 の順にキー入力を行います。 例1) ワールドの Z軸方向に2倍に拡大: [S]>[Z]>[2] > [ENTER](確定) 例2) カメラを 15度ティルトアップ(ローカルX軸で15度回転): [R]>[X][X]>[15] > [ENTER](確定) [CTRL] キーを押しながらマウス操作を行うとグリッド単位の移動、5度単位の回転など、変量を制御することができます。 ~ ***オブジェクトの操作に関わるピボットについて __[[&color(red){''&fontawesome(fas fa-film); 解説動画''};>https://youtu.be/2NbozwcNhRU]]__ 回転やスケーリングでは「どこを中心にするか」によって動きが変わります。 以下の操作で、中心を変更することができます。 Pivot Point PieMenu:[ . ](テンキーではなく、メインキーの [ . ]) 3D Viewport の Header にある Transform Pivot Point アイコン ~ ***オブジェクトの整列 __[[&color(red){''&fontawesome(fas fa-film); 解説動画''};>https://youtu.be/CmpaHHMNlWU]]__ オブジェクトを整列したい場合は、Transform パネルで行います。 整列対象となるオブジェクトをすべて選択 オブジェクトメニュー Transform > Align Objects > 画面左下に Transform パネル が出現します。 Align Mode と Relative To の項目で基準を選択 [X] [Y] [Z] のいずれかのボタンで軸方向に整列 ~ ***オブジェクトの複製 __[[&color(red){''&fontawesome(fas fa-film); 解説動画''};>https://youtu.be/5mVsppHTMIY]]__ Copy&Paste:[Command]+[C] > [Command]+[V] (マテリアル等は独立) 複製:[SHIFT] + [D](マテリアル等は共有) リンク複製:[ALT] + [D]( Editモードでの編集が複製先にも反映します) 直前の操作を繰り返すこともできます。複製・移動の後に行うと、連続的な追加配置ができます(Illustrator の ⌘D と同じ)。 操作の繰り返し:[SHIFT] + [R] ~ ***オブジェクトの結合と親子化 __[[&color(red){''&fontawesome(fas fa-film); 解説動画''};>https://youtu.be/Iym10ghl23w]]__ -複数のオブジェクトを選択して結合すると1つのオブジェクトになります。 結合:[CTRL] + [J] &aname(shading); -複数のオブジェクトを選択して親子化すると、最後に選択したもの(色が強調されているもの)を親とした親子関係が成立します。 親子化:[CTRL] + [P] 解除:[ALT] + [P] --親を動かすと子も追随します。 --子に対する操作は親には影響しません。 ~ ***オブジェクトのシェーディング方法 __[[&color(red){''&fontawesome(fas fa-film); 解説動画''};>https://youtu.be/spsrm_sCaJ0]]__ メッシュオブジェクトには、レンダリング時の陰影付けの方法について、二つの選択肢があります。ひとつはポリゴンの形・境界が見えるようにするフラットシェーディングで、もうひとつは隣り合うポリゴンの法線を補完して境界部分の陰影を滑らかにするスムーズシェーディングです。以下いずれかのメニューを使って設定します。 Header > Object オブジェクトの上で右クリック > コンテクストメニュー -Shade Smooth:スムーズシェーディング -Shade Auto Smooth:スムーズシェーディング(スムーズ/フラット自動選別) -Shade Flat:フラットシェーディング ''AutoSmooth について'' 例えば「Cylinder(円筒)」は、側面部分のみをスムーズにして、側面と上面・底面に関しては、90度の角度を維持したいのが普通です。単純に Shade Smooth を適用しただけでは違和感のある見た目になるので、このような形状の場合は、例えば「30度以内の緩やかな傾斜部分のみスムーズにする」といった処理が必要になります。この場合、以下のようにして AutoSmooth を適用して下さい。 PropertyEditor > オブジェクトデータプロパティ(▽)> Normals AutoSmooth にチェック(角度は自由に変更可能です。デフォルト30度) ~ ***その他 選択対象以外を非表示にしたい場合(ローカルモードといいます)は・・ ローカルモード:[/] 選択したオブジェクトの表示 / 非表示 対象を非表示:[H] 対象以外を非表示:[SHIFT] + [H] 解除:[ALT] + [H] ~ ~ **付記 ***カメラと照明 オブジェクトには、他に Camera Object と Light Object がありますが、これらは、レンダリングに関わる設定でもあるので、以下、その操作・設定に関わる解説を、以下のページに独立させました。 -__[[Blender/Rendering_Cameras]]__ -__[[Blender/Rendering_Lights]]__ ~ ***面の表裏と法線ベクトル 三次元の「面」には、表と裏があって、面の表方向に垂直になるベクトルを''法線ベクトル''といいます。カメラから見える物体表面は「表」になっている必要がありますが、エディットモードの編集中に表裏が反転するような操作をしてしまうと、その後の編集やレンダリングでエラーが発生する可能性があるので、随時確認することが必要です。 __[[&color(red){''&fontawesome(fas fa-film); 解説動画''};>https://youtu.be/3JCEe68KGBQ]]__ ~ 面の表裏および法線ベクトルは、ビューポートオーバーレイの設定で、3Dビューポート上で表示・確認することが可能です。 #image(Blender/FaceOrientation.jpg,right,20%) -オブジェクトモードでは、ビューポートオーバーレイの Face Orientation にチェック を入れることで、面の表(青)と裏(赤)の確認ができます。 #clear #image(Blender/Normals.jpg,right,20%) -エディットモードでは、ビューポートオーバーレイの Normals の部分で、法線を表示させる設定が可能です。 #clear ~ ~ ~