第一回 blenderのcollectionの挙動について
さてnote第一回目はblender2.8でのcollectionの挙動について解説していきます。
御存知の通りblender2.8では2.79の頃のView LayerとObject Groupが統合してcollectionという一つの機能にまとめられました。
この結果、従来に比べて3DLayerの枚数制限がなくなり、またcollectionに名前をつけられるので管理がぐっと楽になりました。
詳しいことはリリースノートを見たほうが早いのでこちらをご参照下さい。
https://wiki.blender.jp/Dev:JA/Ref/Release_Notes/2.80/Layers
現状ではレイヤー把握する時若干見難いかなー…という気はしますが。
ここからが本題です。あまり説明しているところが無いのですがblender2.8ではScene複製時の挙動が2.79の挙動と異なっていて、2.79ではObject単位でリンクしていたのに対して2.8ではcollection単位でリンクしているようです。
以下に実際に動作の違いを示した動画を用意しました。
まずは2.79の挙動です。
Scene複製はlink objectのほうを選択します(ちなみにlink object detaのほうは、メッシュ形状のみlinkのようで、位置や大きさ、回転等が反映しません)
2.79でのlink objectでSceneを複製した場合の挙動 pic.twitter.com/m2ck4f8bqC
— ハンバーグたべたい (@dovnzui) October 17, 2019
ご覧の通り2.79でリンクしたSceneをコピーした場合はObject単位でリンクしているため移動やモディファイアの追加などは反映しますが、片方のSceneでObjectを削除してももう片方ではオブジェクトは残っています。
また新規に追加してももう一方には反映せず反映させるにはlink object to Sceneを適用する必要があります。
2.79であるSceneに新規オブジェクトを追加して、それも別のSceneにリンクさせる pic.twitter.com/ntecahBYlG
— ハンバーグたべたい (@dovnzui) October 17, 2019
続いて2.8での挙動です。
2.8でのlinked copyした場合の挙動 pic.twitter.com/ihg5TC0Jvm
— ハンバーグたべたい (@dovnzui) October 17, 2019
こちらではオブジェクトを消したらもう一方でも消えています。
また新規に追加すればそれも反映しています。
2.8で新規にオブジェクトを追加した場合、同じcollection内であれば別Sceneでもそれは反映する pic.twitter.com/uFPuOOVNBP
— ハンバーグたべたい (@dovnzui) October 17, 2019
もう一点、Sceneをまるごとコピーした場合オブジェクトインスタンスやグループをコピーしてしまうと
複数のSceneにまたがったグループをひとまとめにして表示してしまうため思いがけない結果(オブジェクトが重なってレンダリングされる、消したはずのオブジェクトグループが残ってるように見える等)になることがありましたが2.8ではこの仕組のおかげで、このトラブルも起きなくなっています。
これのおかげでコピーした複数のSceneを取り扱う場合の調整は2.79に比べてぐっと楽に、ほぼレイヤーを切り替えるのと同じ感覚くらいで使うことが可能になりました。
今までに比べれば例えばEEVEEにcyclesの結果を合成する方法がずっと楽に出来ます。
次回はもう少しそこについて具体的に説明してまいります。
※仕組みを考えるとcollectionを異なるSceneに複製する機能があるはずなのですが見つかりません…これがないと片方で新規にcollectionを作ったあと別のSceneに反映させるということが出来ないので調整で困る…まだ未搭載なのかそれとも見落としてるのか分からないのですが、理解ったらそこについても説明していきます
※訂正 教えてもらいました!
Outlinerの表示する情報のタイプをSceneにして新規に追加したコピーしたいCollectionをコピー先のSceneCollectionまでドラッグしてCtrlでリンクコピー可能です。
またアクティブなSceneを(つまり新規に作ったCollectionが無いScene)を開いてコピーしたいCollectionを右クリック→link to Sceneでもコピー可能です
@tana_G3
— どぶごんずい (@dovnzui) October 19, 2019
さんより教えてもらった異なるSceneにリンクしたcollectionを持ってく方法outlinerでドラッグしながらctrlで任意のScenecollectionに持っていけば良い。もう一つアクティブなSceneを開いた状態でコピーしたいcollectionを選択して右クリック→link to Sceneでもコピー出来る pic.twitter.com/MqPRvKC2Oy
もう一つ追記です。blender2.8ではSceneCollection直下にもオブジェクト配置可能ですがその状態でlinked copyで複製したオブジェクトは2.79と同じ方法で複製されます。つまり片方で削除してももう片方には残ります。
予期しない結果になる場合もあるのでsenseCollection直下にはオブジェクトはおかないようにしたほうが現状無難だと思います
ここまで読んでいただきありがとうございました。
次回も読んでいただければ嬉しいです
この記事が気に入ったらサポートをしてみませんか?