Amazonで商品を見るセール会場へ

Unity│リニアワークフローの基本と設定方法

リニアワークフロー(LWF)は、物理的に正確な光の計算とライティングを実現するための仕組みです。

ディスプレイのガンマ特性に合わせた規格の名残から、色の扱いや設定がやや複雑になっています。

本記事では、UnityとMayaでリニアワークフローを設定する手順を解説します。

リニアワークフローの基本と設定方法を解説する記事の導入イメージ。
目次

リニアワークフローとは

光の計算を物理特性に沿ったリニア空間で行い、モニター表示時にガンマ補正をかけて正しい階調で出力する仕組みです。

より詳細な仕様は以下の記事が参考になります。

検証環境の準備

以下の構成でシーンを作成して検証します。

  • オブジェクト:SphereとPlane
  • カメラ:位置を調整
  • ライト:Directional Lightの色を白に設定
  • マテリアル:Legacy Shaders/Diffuseを使用(床と球にアサイン)
  • ライト設定:Window → Lighting → Ambient Sourceを「Color」に、Reflection Sourceを「Custom」に設定

リニア設定(Unity)

カラースペースの切り替え

Edit → Project Settings → Player → Other Settings → Color Spaceを「Linear」に変更します。

値の補正について

本検証の環境では、入力値にガンマ補正(1/2.2乗)を適用して値を調整します。

ライトの強度

Intensityを4にしたい場合の計算式は以下の通りです。

4^(1/2.2) = 1.878

計算結果に基づき、Intensityに「1.878」を入力します。

マテリアルのカラー

Diffuseを0.1にしたい場合の計算式は以下の通りです。

(0.1^(1/2.2)) × 255 = 89.5

Main Colorに「90」を入力します。

ディフューズの計算式に基づいてメインカラーに数値を入力する設定画面の様子。

結果の確認

一番明るい部分のモニター上での出力値は以下の通りです。

(強度 × ディフューズ)^(1/2.2)
(4 × 0.1)^(1/2.2) = 0.66 (168/255)

リニア設定(Maya)

ライト

Directional LightのIntensityを「4」に設定します。

マテリアル

LambertのColorをRGB(0.1, 0.1, 0.1)に、Diffuseを「1」に設定します。

カラースペースはRendering Space(デフォルト)のまま進めます。

レンダリング

通常通りレンダリングを実行し、「Save Color-Managed Image」で保存します。

Unityと同様に、一番明るい部分は0.66(168/255)になります。

レンダリングを実行しカラーマネージド画像として保存した出力結果。

ガンマ設定(比較用)

リニア環境との表示差を確認するため、従来のガンマ設定による手順も記載します。

Unity(ガンマ設定)

  • Color Spaceを「Gamma」に設定(デフォルト)
  • Directional LightのIntensityを「4」に設定
  • 一番明るい場所を0.66(168/255)にするためのマテリアル値
((168/255) / 4) × 255 = 42

Main Colorに「42」を入力します。

ガンマ設定時に一番明るい場所の出力を合わせるためメインカラーに数値を入力する様子。

Maya(ガンマ設定)

  • Directional LightのIntensityを「4」に設定
  • 一番明るい場所を0.66にするためのマテリアル値
(168/255) / 4 = 0.164

LambertのColorをRGB(0.164, 0.164, 0.164)に設定し、Rendering Spaceのチェックを外します。

マテリアルのカラー設定を行いレンダリングスペースのチェックを外した設定画面の様子。

リニアとガンマの設定比較

項目リニア(Unity)ガンマ(Unity)
Color SpaceLinearGamma
Light Intensity1.878(補正後)4
Material Color90(補正後)42
最終出力168/255168/255
リニアとガンマの各カラースペースにおける光の強さやマテリアルカラー、最終出力の比較。

Unityに関するほかの記事は、まとめからご覧いただけます。

環境設定の記事は、ほかにもあります。

まとめ

  • Mayaはリニアワークフローの設定が比較的シンプル
  • 本検証のUnity環境では、目的の出力値に合わせて補正値を計算・入力する必要がある
  • 手動補正を行う際は「入力したい値^(1/2.2)」の計算式が有効
  • リニア設定により、物理的に正確なライティング結果が得られる

リニアワークフローは色の扱いに注意が必要ですが、正確なライティングを実現するための重要な基盤です。

プロジェクトの仕様やパイプラインに応じて適切に設定してください。

次に学ぶ・作業環境を選ぶ

学習を続けたい方や、作業環境を整えたい方は、目的に合うガイドをご覧ください。

Unityのおすすめ書籍

開発PCの選び方

周辺機器の優先度

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次