46 lines
944 B
C#
46 lines
944 B
C#
|
using System;
|
|||
|
using System.Timers;
|
|||
|
using UnityEngine;
|
|||
|
|
|||
|
public class LookupTexture : MonoBehaviour
|
|||
|
{
|
|||
|
[SerializeField] private int length_ = 100;
|
|||
|
public Texture2D texture_;
|
|||
|
|
|||
|
private float input_;
|
|||
|
private int index_;
|
|||
|
|
|||
|
private void Start()
|
|||
|
{
|
|||
|
texture_ = new Texture2D(1, length_, TextureFormat.R8, false);
|
|||
|
|
|||
|
var pixels = texture_.GetPixels();
|
|||
|
for (var i = 0; i < pixels.Length; i++)
|
|||
|
pixels[i] = Color.black;
|
|||
|
texture_.SetPixels(pixels);
|
|||
|
texture_.Apply();
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
public void OnValueChanged (float value)
|
|||
|
{
|
|||
|
input_ = value/100;
|
|||
|
}
|
|||
|
|
|||
|
private void Update()
|
|||
|
{
|
|||
|
for (int i = 0; i < length_; i++)
|
|||
|
{
|
|||
|
texture_.SetPixel(i, index_, new Color(input_, 0f, 0f));
|
|||
|
}
|
|||
|
|
|||
|
texture_.Apply();
|
|||
|
|
|||
|
index_++;
|
|||
|
index_ %= length_;
|
|||
|
}
|
|||
|
|
|||
|
public Texture2D Texture => texture_;
|
|||
|
public int Index => index_;
|
|||
|
}
|