【发布时间】:2017-04-15 07:31:44
【问题描述】:
我想知道如何根据 2 个对象之间的距离制作平滑的颜色 lerp。颜色应该从绿色到红色再到绿色再到红色......远方 = 红色,近方 = 绿色。
我已经让一切正常了,但唯一认为不正常的是颜色不平滑。这就是它目前的样子。 https://i.gyazo.com/a85852e76d2418ab7d44c18e152647c0.mp4
我正在使用这个脚本来改变颜色:
FindClosestCube ();
float lerpProgress = 0f;
GameObject cubeChildTop = null;
GameObject closestCube = FindClosestCube ();
cubeChildTop = closestCube.transform.Find("Top").gameObject;
if (cubeDiffX >= 0.8f || cubeDiffX <= -0.8f)
{
lerpProgress = 0.5f;
}
if (cubeDiffX <= 0.8f || cubeDiffX <= -0.8f)
{
lerpProgress = 1f;
}
if (cubeDiffX >= 1.6f || cubeDiffX <= -1.6f)
{
lerpProgress = 0f;
}
if(closestCube != GameObject.Find("Cube (1)2"))
{
cubeChildTop.GetComponent<Renderer>().material.color = Color.Lerp(redColor, greenColor, lerpProgress);
}
那么...如何让它从红色变为绿色?
【问题讨论】:
-
很酷的游戏顺便说一句
-
@K Scandrett,非常感谢!每个级别都有自己的主题。