アウトライナーのアイコンで非表示調整をする
v2.79以前の非表示オブジェクトが表示できなくなった?
互換性が保証されてないとはいえ、v2.79の .blend ファイルを使いたい。ところが、非表示にしていたオブジェクトを再表示する方法がわからない。そんなツイートを見かけた。確かに、非表示にする「目」のアイコンはオンになっている。
結論から言うと、v2.80では「非表示」の状態が2つあって、標準では、v2.79相当の「隠す機能」が「隠れている」(ややこしい)。というわけで、まずはそれを表示する。アウトライナーにあるフィルタのアイコン(漏斗の形)を押して、つら~と並んでいるアイコンを全て色付きにしていく。
もちろん、必要なのだけでもよいけども今回は全部オンにした。旧バージョンのオブジェクトが表示されていなかった場合、おそらく左から4番目のアイコン(モニタマーク)が無効になっていたはず。オンにすれば表示される。
オブジェクトの表示から効果まで有効・無効を切り替える
アイコンは7個ある。
それぞれを見ていく。
(1). Selectable(カーソルのアイコン)
選択可能・不可能を切り替える。下手に動かさないようにしたい場合などはオフにしておけば、直接選択も、範囲選択の対象からもはずれロックされたようになる。
(2). Hide in Viewport(目のアイコン)
(3). Disable in Viewport(モニタのアイコン)
どちらもビューポートからオブジェクトを非表示にする。アイコンを押しただけでは挙動が同じなので違いが分かりづらい。
Hide
は「一時的に隠す」、Disable
は「グローバルで隠す」と補足説明では表示されている。よくわからない。そこで、物理演算を試してみたところ、違いがあった。Hide
は単に表示上見えないようになっており、Disable
は「存在しない」状態となっていた。
箱とサルに布をぱさっとかけてみる。
これを、サルを Hide
の状態で試す。
サルのオブジェクトはそこにあるように布は空中に浮いている。次にサルをDisable
にして同じようにぱさっとかけてみる。
「サルはそこにない」状態で、箱に布がかかった。そういうことらしい。
Hide
は、他のオブジェクトなどを見るときに邪魔なものを一時的に非表示にするために使い、Disable
はオブジェクトとして不要(だけど消したくない)な時に使うものということか。
(4). Disable in Renders(カメラのアイコン)
レンダーしない。たまに、ビューポートの表示とレンダーの結果が違っていて、なんでやねん!ってなる事がある。これが原因。
(5). Holdout(日の丸みたいなアイコン)
最初、何だコレ?と思っていたのだけど、どうやら v2.79 でいうところのマスクレイヤーの機能らしい。気をつけることが2つある。
- コレクションにしか適用できない(オブジェクトには使えない)
Eevee では現状使えない(v2.81で対応したようです!)
現状、Cyclesでしかこれは機能せず、Eeveeでは使えないのはちょっと痛い。マスク(非表示)にしたいオブジェクトを特定のコレクションにして、そのコレクションにHoldoutを設定することで、(Cyclesで)レンダリングした時に、そのコレクションに含まれるオブジェクトで結果がマスクされる。
(6). Indirect Only(折れた矢印のアイコン)
間接効果だけを反映するオプション。これも、Eeveeに対応していない。まだまだだな、v2.80!
たとえば、箱の隣に光るサルを置いてみる。
サルが含まれるコレクション(Collection 2)にIndirect Only
のオプションを有効にしてレンダリングしてみると...
箱に映る緑の反射光だけがレンダリングされた。影などを調整する場合に使えそうかな。
(7). Extrude from View Layer(チェックボックスアイコン)
これだけ、オブジェクト名の右ではなく左にチェックボックスとして表示される。対象はコレクションのみ。 コレクションごとに有効・無効を切り替えることができる。v2.80ではレンダレイヤがビューレイヤと名前を変えたらしいけど、そのビューレイヤごとにコレクションのオン・オフの状態を変えられる。
レンダリングを複数に分けるために使えるようだけど、まだそこまでの高度な使い方はよくわかってない。単純に、コレクション単位での表示・非表示としても使いやすいので、チェックボックス自体は有効にしておいて問題ないと思う。
アイコンを表示させておく
アイコンを表示させておかなくても、右クリックメニューのVisibility
などから、各アイコンの状態を選んだりすることはできる。けど、コレクションのチェックボックス、隠す設定(Hide)、レンダーON/OFF、マスク(Holdout)ぐらいは常に表示しておいてもよいのではないかな。