Files
UmaViewer/Assets/Scripts/UmaViewerGlobalShader.cs
T
2022-09-09 03:31:47 +08:00

126 lines
4.5 KiB
C#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class UmaViewerGlobalShader : MonoBehaviour
{
//仅用于设置游戏开局shader全局变量的初始值,若想即时调整请使用Editor内部工具
public float _Global_MaxDensity = 1.0f;
public float _Global_MaxHeight = 10.0f;
public float _GlobalOutlineOffest = 0.0f;
public float _GlobalOutlineWidth = 1.0f;
public float _GlobalCameraFov = 0.0f;
public float _CylinderBlend = 0.0f;
public Color _GlobalToonColor = new Color(1, 1, 1, 0);
public Color _Global_FogColor;
public Color _GlobalDirtRimSpecularColor;
public Color _GlobalDirtToonColor;
public Color _GlobalRimColor = new Color(1, 1, 1, 0);
public Color _GlobalDirtColor;
public Color _RimColor2;
List<Vector4> _MainParam = new List<Vector4>();
public Vector4 _MainParam_0;
public Vector4 _MainParam_1;
List<Vector4> _HighParam1 = new List<Vector4>();
public Vector4 _HighParam1_0 = new Vector4(0, 0, 0, 1);
public Vector4 _HighParam1_1 = new Vector4(0, 0, 0, 1);
public Vector4 _HighParam1_2;
List<Vector4> _HighParam2 = new List<Vector4>();
public Vector4 _HighParam2_0 = new Vector4(0, 0, 0, 1);
public Vector4 _HighParam2_1 = new Vector4(0, 0, 0, 1);
List<Vector4> _ColorArray = new List<Vector4>();
public Color _ColorArray_0;
public Color _ColorArray_1;
public Color _ColorArray_2;
public Color _ColorArray_3;
public Color _ColorArray_4;
public Color _ColorArray_5;
public Color _ColorArray_6;
public Color _ColorArray_7;
public Color _ColorArray_8;
public Color _ColorArray_9;
List<float> _DirtRate = new List<float>();
public float _DirtRate_0;
public float _DirtRate_1;
public float _DirtRate_2;
public Vector4 _Global_FogMinDistance;
public Vector4 _Global_FogLength;
public float _RimHorizonOffset;
public Color _AmbientColor;
public Vector2 scrollPosition = Vector2.zero;
void setGlobal()
{
//Color
Shader.SetGlobalColor("_GlobalToonColor", _GlobalToonColor);
Shader.SetGlobalColor("_Global_FogColor", _Global_FogColor);
Shader.SetGlobalColor("_GlobalDirtRimSpecularColor", _GlobalDirtRimSpecularColor);
Shader.SetGlobalColor("_GlobalDirtToonColor", _GlobalDirtToonColor);
Shader.SetGlobalColor("_GlobalRimColor", _GlobalRimColor);
Shader.SetGlobalColor("_GlobalDirtColor", _GlobalDirtColor);
Shader.SetGlobalColor("_RimColor2", _RimColor2);
//Float
Shader.SetGlobalFloat("_Global_MaxDensity", _Global_MaxDensity);
Shader.SetGlobalFloat("_Global_MaxHeight", _Global_MaxHeight);
Shader.SetGlobalFloat("_GlobalOutlineOffest", _GlobalOutlineOffest);
Shader.SetGlobalFloat("_GlobalOutlineWidth", _GlobalOutlineWidth);
Shader.SetGlobalFloat("_GlobalCameraFov", _GlobalCameraFov);
Shader.SetGlobalFloat("_CylinderBlend", _CylinderBlend);
Shader.SetGlobalFloat("_RimHorizonOffset", _RimHorizonOffset);
//Vector Array
_MainParam.Clear();
_MainParam.Add(_MainParam_0);
_MainParam.Add(_MainParam_1);
Shader.SetGlobalVectorArray("_MainParam", _MainParam);
_HighParam1.Clear();
_HighParam1.Add(_HighParam1_0);
_HighParam1.Add(_HighParam1_1);
_HighParam1.Add(_HighParam1_2);
Shader.SetGlobalVectorArray("_HighParam1", _HighParam1);
_HighParam2.Clear();
_HighParam2.Add(_HighParam2_0);
_HighParam2.Add(_HighParam2_1);
Shader.SetGlobalVectorArray("_HighParam2", _HighParam2);
_ColorArray.Clear();
_ColorArray.Add(_ColorArray_0);
_ColorArray.Add(_ColorArray_1);
_ColorArray.Add(_ColorArray_2);
_ColorArray.Add(_ColorArray_3);
_ColorArray.Add(_ColorArray_4);
_ColorArray.Add(_ColorArray_5);
_ColorArray.Add(_ColorArray_6);
_ColorArray.Add(_ColorArray_7);
_ColorArray.Add(_ColorArray_8);
_ColorArray.Add(_ColorArray_9);
Shader.SetGlobalVectorArray("_ColorArray", _ColorArray);
Shader.SetGlobalVector("_Global_FogMinDistance", _Global_FogMinDistance);
Shader.SetGlobalVector("_Global_FogLength", _Global_FogLength);
_DirtRate.Clear();
_DirtRate.Add(_DirtRate_0);
_DirtRate.Add(_DirtRate_1);
_DirtRate.Add(_DirtRate_2);
Shader.SetGlobalFloatArray("_DirtRate", _DirtRate);
Shader.SetGlobalColor("_AmbientColor", _AmbientColor);
}
// Start is called before the first frame update
void Start()
{
setGlobal();
}
}