This repository has been archived on 2023-09-13. You can view files and clone it, but cannot push or open issues or pull requests.
station_obscurum_unity/Assets/Scripts/Legacy/Enviornment/EmissiveLightMatching.cs
MarcoHampel f8590432ba Assemblies Made and Refactored Code Folders
Created assemblies for the new design code. Relocated legacy scripts into a legacy folder and made a "new_design" folder for new design.
2023-09-11 19:39:27 -04:00

36 lines
942 B
C#

using System.Collections.Generic;
using UnityEngine;
public class EmissiveLightMatching : MonoBehaviour
{
[SerializeField] private List<int> indexes;
[SerializeField] private Light reference;
private readonly List<Color> colors = new();
private float initIntensity;
private void Awake()
{
initIntensity = reference.intensity;
}
// Start is called before the first frame update
private void Start()
{
foreach (var index in indexes)
colors.Add(gameObject.GetComponent<MeshRenderer>().materials[index].GetColor("_EmissiveColor"));
}
// Update is called once per frame
private void Update()
{
var x = 0;
foreach (var i in indexes)
{
gameObject.GetComponent<MeshRenderer>().materials[i].SetColor("_EmissiveColor",
colors[x] * (10 * reference.intensity / initIntensity));
x++;
}
}
}