ここで、未使用データブロックとフェイクユーザについて説明しておきます。 簡単な3DCGの制作 > マテリアルで質感を表現する > マテリアルの作成とメッシュへの結びつけでも説明したように、Blenderでは未使用のマテリアルは保存されません。 ファイルの保存時に、未使用のマテリアルは保存されないようになっているためです。
正確には、マテリアルだけでなくアクションやブラシなどの他のデータも同様です。 Blenderでは、データは『データブロック』と呼ばれる単位で管理されていますが、未使用のデータブロックはファイルには保存されないようになっています。
つまり、Blenderでは未使用のデータブロックは簡単に消えてしまう、ということです。 Blenderには、それを防ぐための『フェイクユーザ』という仕組みがあります。 その名の通り、偽の利用者を作り使用中にしてしまう機能です。
フェイクユーザは、未使用のデータブロックが自動的にクリーニングされることを防ぐための仕組みです。 今は利用しないが将来的に利用するマテリアルなどはフェイクユーザで保護しましょう。
フェイクユーザを有効にする、つまり、未使用にも関わらず使用中にする手順は以下の通りです。 なお、マテリアルを例に説明しています。
上図のように対象のマテリアルを(1)のように選択し、マテリアル選択リストの右にある(2)の盾のアイコンの[Fake User]ボタンを押します。
上図のように[Fake User]ボタンが青色に変化します。 青色はフェイクユーザが有効になっていることを表しており、このマテリアルは未使用でもファイルに保存されるようになりました。
これで、このマテリアルに関しては消えてしまう心配はなくなりました。 なお、再度[Fake User]ボタン押すと、フェイクユーザはオフになり自動クリーニングの対象に戻ります。
画面右上にあるOutlinerで、未使用のデータブロックの確認と削除を行うことができます。 実際にやってみましょう。
上図のようにOutlinerのDisplay ModeをOrphan Dataに切り替えます。
上図のように未使用のデータブロックの種別の一覧が表示されます。 今回の例では、ブラシとマテリアルが表示されています。 なお、ブラシのアイコンに小さく描かれている 28 という数値はブラシの数を表しています。
では続いて、未使用のブラシの一覧を表示してみましょう。
上図のように"Brushes"の行の三角マークをマウスの左ボタン()でクリックします。
上図のように未使用のブラシの一覧が表示されます。 なお、名称の右には、数値 / 盾のアイコン という2つの項目が表示されています。
数値は参照数を表しており、0(ゼロ) が未使用の状態を表しています。 上の例では 1 となっていますが、未使用なのに参照数が 1 になっているのはフェイクユーザが有効になっているためです。
その隣りの盾のアイコンはフェイクユーザの有効/無効を示しています。 盾のアイコンにチェックが入っていればフェイクユーザが有効な状態です。
また、この盾のアイコンをクリックすることで、フェイクユーザの有効/無効を切り替えることができます。
ではここで、一番上のブラシ "Airbrush" のフェイクユーザを無効にしてみましょう。
上図のように対象のデータブロックの盾のアイコンをマウスの左ボタン()でクリックします。
上図のように表示が変化します。 名称の右の参照数が 1 から 0 になりました。 また、その隣りの盾のアイコンのチェックが外れました。
参照数が 0 になり、盾のアイコンのチェックが外れたのは、もちろんフェイクユーザが無効になっためです。 参照数が 0 になったということは、このデータブロックが保存対象ではなくなったことを意味しています。 つまり、保存時に自動クリーニングされるということです。
なお、一番上のブラシ "Airbrush" はまだ消えていません。 保存時に自動クリーニングされますが、今はまだ存在しています。 存在しているからこそ、Outlinerに表示されています。
最後に、即座にデータブロックを削除する手順について説明します。 ブラシ "Darken" を削除します。
上図のように削除したいデータブロックを(1)のようにマウスの右ボタン()でクリックし、表示されるメニューから(2)の "Delete" を実行します。
上図のようにデータブロックが即座に削除されます。 ブラシ "Darken" が消えました。
このように、Outlinerでは未使用のデータブロックを確認および即座に削除することができます。
Blenderでは、データは『データブロック』と呼ばれる単位で管理されます。 未使用のデータブロックはファイルには保存されないため、結果として自動的にクリーニングされることになります。 ただし、フェイクユーザをオンにすることで未使用のデータブロックが自動的にクリーニングされることを防ぐことができます。
なお、OutlinerのDisplay ModeをOrphan Dataに切り替えることで、未使用のデータブロックを一覧で確認することができます。 また、未使用のデータブロックを即座に削除することもできます。