Version: Unity 6.0 (6000.0)
言語 : 日本語
キューブマップの概要
キューブマップ配列を作成する

キューブマップの作成

テクスチャからキューブマップを作成する

キューブマップを作成する最も簡単な方法は、特別にレイアウトされた テクスチャ からそれらをインポートすることです。Project ウィンドウでテクスチャを選択し、Inspector ウィンドウで Import Settings を表示します。Import Settings で、Texture TypeDefaultNormal MapSingle Channel のいずれかに設定します。そして、Texture ShapeCube を選択します。すると、Unity は自動的にテクスチャをキューブマップに設定します。

キューブマップテクスチャのインポートの種類
キューブマップテクスチャのインポートの種類

いくつかのよく使用されるキューブマップレイアウトがサポートされています (大抵、Unity は自動的にそれらを検出します)。

垂直方向と水平方向のクロスレイアウトに加え、キューブマップ面が行状と列状になった形式も使用可能です。

LatLong (緯度経度、Cylindrical) レイアウトも頻繁に使用されます。パノラマ画像では、このレイアウトがよく使用されます。

SphereMap (球状の環境マップ) 画像も使用可能です。

デフォルトでは、Unity がインポートされたテクスチャのアスペクト比を判定し、上記の中からもっとも適切なレイアウトを選びます。インポートが行われるとキューブマップが作成され、それをスカイボックスや反射に使用することができます。

Glossy Reflection は、リフレクションプローブ によって使用されるキューブマップテクスチャに便利です。キューブマップのミップマップレベルを特殊な方法 (鏡面反射コンボリューション) で処理し、滑らかさの異なるいろいろな面からの反射をシミュレートするのにも使用できます。

滑らかさの異なる面のリフレクションプローブに使用されたキューブマップ
滑らかさの異なる面のリフレクションプローブに使用されたキューブマップ

その他のテクニック

この他に、スクリプトを使用して Unity のシーンのコンテンツからキューブマップを生成する方法もあります。関数 Camera.RenderToCubemap は、シーン内の好きな位置から 6 面の画像を記録することができます。この関数のスクリプトリファレンスにあるサンプルコードを使用すれば、メニューコマンドを追加できるので、タスクをより簡単にすることができます。

古いキューブマップアセット

Unity では、6つの個々の テクスチャ からキューブマップを作成することもできます。メニューから Assets > Create > Legacy > Cubemap を選択し、インスペクターの空のスロットに 6 つのテクスチャをドラッグしてください。

古いキューブマップのインスペクター
古いキューブマップのインスペクター
プロパティ: 機能:
Right..Back Slots 各キューブマップ面のテクスチャ
Face Size キューブマップの各面の幅と高さ (ピクセル単位)。このサイズに合うようにテクスチャのスケールが自動的に調節されます。
Mipmap ミップマップを作成するかどうか
Linear キューブマップがリニアカラーを使用するかどうか
Readable スクリプトがピクセルデータにアクセスできるようにキューブマップを設定するかどうか

キューブマップを作成するには、キューブマップテクスチャのインポートタイプ (上を参照) を使用することが望ましいと言えます。そのように設定すると、キューブマップのテクスチャデータが圧縮され、端の処理や光沢リフレクションのコンボリューションが実行でき、HDR キューブマップもサポートされます。

キューブマップの概要
キューブマップ配列を作成する