28 lines
1.1 KiB
C#
28 lines
1.1 KiB
C#
using UnityEngine;
|
|
|
|
[ExecuteAlways]
|
|
public class GlobalShaderVariableSetting : MonoBehaviour
|
|
{
|
|
[Range(0, 1)]
|
|
public float nightColorControl;
|
|
public Color ambientDayColor;
|
|
public Color dirLtColorDayColor;
|
|
public Color ambientNightColor;
|
|
public Color dirLtColorNightColor;
|
|
int AmbientDayColorHash = Shader.PropertyToID("_AmbientDayColor");
|
|
int DirLtColorDayColorHash = Shader.PropertyToID("_DirLtColorDayColor");
|
|
int AmbientNightColorHash = Shader.PropertyToID("_AmbientNightColor");
|
|
int DirLtColorNightColorHash = Shader.PropertyToID("_DirLtColorNightColor");
|
|
int NightColorControlHash = Shader.PropertyToID("_NightColorControl");
|
|
|
|
// Update is called once per frame
|
|
void Update()
|
|
{
|
|
Shader.SetGlobalColor(AmbientDayColorHash, ambientDayColor);
|
|
Shader.SetGlobalColor(DirLtColorDayColorHash, dirLtColorDayColor);
|
|
Shader.SetGlobalColor(AmbientNightColorHash, ambientNightColor);
|
|
Shader.SetGlobalColor(DirLtColorNightColorHash, dirLtColorNightColor);
|
|
Shader.SetGlobalFloat(NightColorControlHash, nightColorControl);
|
|
}
|
|
}
|