夜風のMixedReality

xRと出会って変わった人生と出会った技術を書き残すためのGeekなHoloRangerの居場所

Blender GPUでレンダリングを行う。

本日はBlenderモデリング枠です。

筆者はUnityで、もっと言うとHoloLensで3Dモデルを使用するためにBlenderを使用することが多くBlender自体で絵を描く(レンダリング)ことはほとんどなかったのですが、最近Blenderでの絵作りを少しづつ勉強しています。

Blenderでのレンダリング

21年、Blenderバージョン2.9時点で主に二種類のレンダリングエンジンが実装されています。

●Eevee

レンダリング速度が速く、かつきれいなレンダリングエンジンです。

ラスタライズ法と呼ばれる処理が用いられており、これは光の計算など一部を省略することで素早く処理を行います。

EeveeはBlender2.8で実装されています。

●Cycles

 Cyclesは古くから実装されているレンダリングエンジンで[パストレーシング]と呼ばれるカメラから光源への経路を通りレンダリングを行う手法を用いているようです。

 この手法では光源の中でカメラに入る光のみを計算するためすべての光を描画するより高速に描画できるようです。

 こちらの記事を参考にさせていただいています。

light11.hatenadiary.com

 一般的にEeveeのほうがCyclesよりも高速に描画できます。

このレンダリング方法は[レンダープロパティ]タブから選択できます。

f:id:Holomoto-Sumire:20210630205523j:plain

GPUで描画を行う。

デフォルトではCPUでレンダリングを行います。

 使用しているPCにGPUが搭載されている場合GPU処理を行うことで非常に高速にレンダリングを行うことができます。

①上部Blenderワールドタブから[プリレファレンス]を開きます。

f:id:Holomoto-Sumire:20210630204449j:plain

②[システム]タブから[レンダーデバイス]を選択します。

f:id:Holomoto-Sumire:20210630205847j:plain

筆者環境ではNVIDIA GoForce RTX 3080を使用しているため[CUDA]タブを選択します。

③[レンダープロパティ]タブの[バイス]を[GPU演算]に変更します。

f:id:Holomoto-Sumire:20210630210110j:plain

これでレンダリング時にGPUが使用されるようになりました。

f:id:Holomoto-Sumire:20210630210431j:plain

f:id:Holomoto-Sumire:20210630221755p:plain