我有一个整数从0到599更新,我正在尝试规范化并传递给另一个变量。我的第一个整数值只是一个int。它不在列表或任何内容中。
我要做的是根据整数值的长度绑定颜色lerp时间长度。此整数值正在迭代要显示的网格列表。它看起来像这样:
int meshNum;
public void AnimateMesh()
{
if(playAnim)
{
meshToChange.GetComponent<MeshFilter>().mesh = fluidMesh[meshNum];
if(meshNum < 599)
meshNum++;
else
meshNum = 0;
}
else
{
meshNum = 0;
}
}
我的颜色代码是:
diffuse_Material.color = Color.Lerp(Color.blue, Color.red, speedCount);
我想在我的lerp方法中将speedCount更改为与动画长度匹配的变量。我的lerp并不总是在屏幕上,但动画是,当我想要出现lerp时,无论动画当前出现在哪里,我都希望它每次出现都是一样的。
答案 0 :(得分:2)
Color.Lerp
需要0 .. 1
的参数。最简单的方法是简单地给它(float)meshNum / 599f
。
答案 1 :(得分:1)
float number = (float)randomizedNumber / 599.0f;
因为你的最大值是599,无论如何这个颜色差异都不会被注意到或者事件会被舍入,因为RGB只有256个eash基色值。