【Unity】環境光シェーダー


AmbientImage

環境

  • Unity 2021.2.11f1
  • Build-in Rendering Pipline

環境光とは

環境光とは、地面や他の物体にあたった光が跳ね返った光のことです。
ここでは、環境光は物体に対し一様にあたっていると考えます。

ShaderLabで環境光を使用する

fixed4 frag(v2f i) : SV_Target
{
   return UNITY_LIGHTMODEL_AMBIENT;
}

UNITY_LIGHTMODEL_AMBIENT
を使うと環境光の色を取得できます。その色をフラグメントシェーダーで返すことで冒頭の画像結果が得られます。

その他の環境光取得マクロ

  • unity_AmbientSky
  • unity_AmbientGround
  • UNITY_LIGHTMODEL_AMBIENT

https://docs.unity3d.com/ja/2018.4/Manual/SL-UnityShaderVariables.html

環境光の調整

Window -> Rendering -> Lighting から Lightingウィンドウを開きます。
Enviroment Lightingから Sourceを GradientColor に変更します。

Gradientの場合は、 SkyColor Colorの場合は、 Ambient Color

を変更することで UNITY_LIGHTMODEL_AMBIENT
から取得できるカラーも変更されます。

環境光の設定

Table of contents


©️ 2026 went5. blog icon by

icons8