Blenderで背景が透明なPNGを作るには、背景を透過してレンダリングする設定と、透明度を保存できる画像形式の設定が必要です。FilmのTransparentを有効にし、保存形式をPNG、カラーをRGBAにします。
画面で背景が市松模様になっていても、RGBで保存すると透明度が残りません。また、背景用の平面などがカメラに映っている場合は、ワールドを透過にしてもそのオブジェクトは表示されます。
まず背景を透明にレンダリングする
- レンダリングするカメラとオブジェクトを確認します。
- レンダープロパティのFilmを開きます。
- Transparentを有効にします。
- Render Imageで静止画をレンダリングします。
- 背景が透明として表示されるか確認します。
Filmの項目の位置や表記は、レンダーエンジンやBlenderのバージョンで異なる場合があります。Cyclesの設定は公式マニュアルのFilmにあります。ここで透明にするのは背景の扱いで、モデルのマテリアルを透明にする設定とは別です。
PNGのRGBAで保存する
レンダリング結果をImageメニューから保存するとき、ファイル形式をPNG、カラーをRGBAにします。Aはアルファチャンネルで、透明度を持たせるための情報です。
| 設定 | 役割 |
|---|---|
| Film:Transparent | 背景を透明としてレンダリングする |
| File Format:PNG | 透明度を保存できる形式を選ぶ |
| Color:RGBA | 色情報とアルファを保存する |
| 保存先と名前 | 確認する出力ファイルを特定する |
出力形式とカラーの説明はOutputの公式マニュアルを参照してください。JPEGにはアルファを保存できないため、今回のような透過素材の保存形式には使いません。
出力プロパティへ保存先を設定しただけで、静止画のレンダリング結果が必ず保存されるとは限りません。使用している版の自動保存設定を確認し、手動で保存した場合も実際のPNGファイルがあることを確かめます。
保存した画像を別の背景へ重ねて確認する
画像ビューアーが透明部分を白や黒で表示する場合があります。白く見えるから失敗したと判断せず、画像編集ソフトで色の付いた背景へ重ねます。
たとえば赤と青の背景をそれぞれ用意し、モデルの周囲から両方の色が見えれば、背景部分のアルファを確認できます。縁の半透明部分が自然か、白や黒の輪郭が残っていないかも見ます。
背景が透明にならないときの確認順
- 古いレンダリング結果を保存していないか確認する。
- FilmのTransparentを有効にしてから再レンダリングする。
- 保存画面がPNG・RGBAになっているか確認する。
- 背景用の平面や画像オブジェクトが映っていないか確認する。
- コンポジターで背景を合成し直していないか確認する。
床や背景板があるシーンでは、カメラの奥にワールドが見えていなくても不思議ではありません。オブジェクトを消す前に、作業用コピーで背景板のレンダー表示を切り替え、何が映っているかを確かめましょう。
HDRIの照明と背景表示は分けて考える
背景を透過にしても、環境がライティングや反射に関わることがあります。背景を消したいからとワールドの照明まで外すと、モデルの明るさや金属の映り込みが変わってしまいます。
まずTransparentだけを切り替えて同じ条件で比較し、モデルの質感を保ったまま背景を抜けるか確認します。環境のパスの扱いはRender Passesの公式説明にも記載されています。
透明なガラスと背景透過は同じではない
ガラス越しの背景を後から自由に差し替えたい場合、PNGのアルファだけで実際の屈折や背景の映り込みを完全に再現できるわけではありません。レンダリング時に計算された背景との関係が見た目へ含まれるためです。
不透明な小物の切り抜きと、ガラスや半透明素材の合成は難しさが違います。まず単純な不透明モデルで出力経路を確認し、透明素材は最終的に合成する背景でも見た目を確かめます。
アニメーションなら透過PNG連番で確認する
動く素材を透過のまま渡す場合は、PNG連番などアルファを保てる方法を選びます。一般的なH.264のMP4へ保存すると、同じように透明度を保持できません。
全フレームを出す前に、数フレームだけ書き出して合成先へ読み込みます。先頭と最後のフレーム、解像度、fps、透明な縁を確認し、問題がなければ全体を出力します。保存形式だけでなく、合成先でアルファが正しく解釈されることまで確認すると、受け渡し時のやり直しを減らせます。
