Unityでライトマップをベイクして、影をテクスチャに焼き付けることもできますが、Blenderでモデルを作った時点でAOなどの影をベイクすることもできます。ここではBlender2.8を使ってテクスチャに影をベイクする方法を紹介します。
レンダリングの設定をする
テクスチャをベイクするには、Belnder2.8から採用されたEeveeではなくCyclesというレンダーエンジンを使う必要があります。そこで、Sceneアイコンを選択してレンダーエンジンを「Cycles」に設定します。
アンビエントオクルージョンの影もベイクするためにワールドアイコンを選択して、アンビエントオクルージョンにチェックを入れます。
ベイクするテクスチャを作成する
まずはベイクするためのテクスチャを作成します。メニューバーから「UV Editing」を選択して2画面にします。UV展開画面の上にある「新規」ボタンをクリックしてベイクするテクスチャを作成します。
ここでは名前を「ao」、幅と高さは1024pxに設定しました。ベイクするテクスチャの大きさが大きくなるほど、ベイクにも時間がかかるので、最初は小さいテクスチャで実験したほうがいいかもしれません。
次にモデルをUV展開します。右のモデリング画面で、すべての頂点を選択した状態で「Uキー」→「スマートUV投影」を選択してUV展開します。
ベイクするマテリアルの設定
今作成したテクスチャをベイクするマテリアルに、指定します。画面左のエディター選択メニューから「シェーダーエディタ」を選択します。
「追加」→「テクスチャ」→「画像テクスチャ」を選択します。
追加された画像テクスチャノードのテクスチャに先程作成した「ao」を設定します。
ベイクする
Sceneアイコンからベイクを選択して、ベイクボタンを押してください。簡単なモデルであれば数秒でベイクが完了して、次のようなベイクテクスチャが表示されます。
画面上の画像ボタンから「保存」を選択してください。
Unityで表示する
作成したモデルとベイクしたテクスチャをUnityにインポートし、シーンビューでマテリアルをアタッチしてください。次のようにAOの効果がベイクされた状態のテクスチャが設定できます。