シンプルなアクションゲームを作ってみよう21-ライトのベイクをする-

記事内に広告が含まれています。

シンプルなアクションゲームを作ってみようの第21回です。

今回はライトをベイクしていきます。

前回はポーズ機能を作成しました。

シンプルなアクションゲームを作ってみよう20-ポーズ機能を作成する-
シンプルなアクションゲームにゲームをポーズする機能を作成していきます。

シンプルなアクションゲームを作ってみようの他の記事は

シンプルなアクションゲームを作ってみよう

シンプルなアクションゲームを作るのを通してUnityの使い方を学ぶカテゴリです。

から参照出来ます。

スポンサーリンク

ライトのベイクをする

今回はライトのベイクをして間接光をライトマップにベイクしていきます。

シーンビューを確認するとDirectional Light(太陽光にあたる)の直接の光がゲームオブジェクトに当たった光だけが反映されています。

直接光だけが反映されている

しかしリアルな世界では直接光がなにか物に当たって反射した光がまた別の物に当たるといった間接光もあります。

そんな直接光と間接光を計算するアルゴリズムのことをグローバルイルミネーションと言います。

グローバルイルミネーションにはベイクドグローバルイルミネーションとリアルタイムグローバルイルミネーションがありますがURPやHDRPではリアルタイムグローバルイルミネーションをサポートしていません。

リアルタイムグローバルイルミネーションの代替機能はまた別途出来るのかもしれませんが(出来ている?)、無視していきます。

今回のプロジェクトは組み込みのレンダラーを使用して作成したものなのでまだリアルタイムグローバルイルミネーションが使えますが、使いません。

ライトマップをベイクする

ベイクしたグローバルイルミネーションを使用する為に、ゲームに配置した舞台に当たった直接光と間接光をテクスチャにベイクし、利用出来るようにします。

ベイクしたテクスチャをライトマップと言います。

ライトの設定ファイルを作成する

ライトマップをベイクする前にライトの設定ファイルを作成します。

AssetsフォルダにSettingsというフォルダを作成します。

Assets/Settingsフォルダ内で右クリックからCreate→Lighting Settingsを選択します。

Lighting Settingファイルの作成

次にUnityメニューのWindowからRendering→Lightを選択しLightingウインドウを開きます。

LightingウインドウのSceneタブでLighting Settingsに今作成したLighting Settingsファイルをドラッグ&ドロップします。

LightingウインドウのLighting SettingsにLighting Settingsファイルをドラッグ&ドロップする

Sceneタブで各項目の設定が出来ます。

Realtime Global Illuminationのチェックが外れているのを確認したらGenerate Lightingボタンを押してライトマップのベイクをします。

LightingウインドウでRealtimeGlobalIlluminationのチェックを外しライトのベイクボタンを押す

ライトマップがベイクされるまで少し時間がかかります。

ライトマップがベイクされるとBaked Lightmapsタブでライトマップが反映されているのを確認出来ます。

ベイクされたライトマップを確認する

ライトマップはそのシーンのファイルがあるフォルダにそのシーン名のフォルダが作られ、その中にファイルが出来ます。

今回の場合はStage1シーンのライトマップを作成したので、Assets/Scenes/Stage1フォルダにファイルが作られます。

ライトマップファイルの保存先

ライトマップがベイクされるとStage1シーンのゲームの舞台が間接光でより明るく見えます。

間接光の影響でStage1シーンが明るくなった

終わりに

今回はライトのベイクを行いました。

次回はInputManagerを使った入力システムから新しい入力システムであるInputSystemに切り替えます。

タイトルとURLをコピーしました