我是统一引擎的新手
如何在立方体上添加颜色?
using UnityEngine;
using System.Collections;
public class cor_cube : MonoBehaviour {
public Color colorStart = Color.red;
public Color colorEnd = Color.green;
public float duration = 1.0F;
public Renderer rend;
void Start() {
rend = GetComponent<Renderer>();
}
void Update() {
float lerp = Mathf.PingPong(Time.time, duration) / duration;
rend.material.color = Color.Lerp(colorStart, colorEnd, lerp);
}
} (I don't want like that)
我想要一种固定的颜色。
答案 0 :(得分:6)
我想要一种固定的颜色。
看起来您不希望lerp
从一种颜色到另一种颜色。你只想设置颜色。
以下是改变颜色的方法:
方法1 :预定义颜色
void Start() {
rend = GetComponent<Renderer>();
rend.material.color = Color.blue;
}
还有许多其他预定义颜色,例如Color.blue
,Color.white
,Color.black
,Color.green
和Color.gray
。
方法2 :具有RGB或RGBA值的自定义颜色
您还可以创建未在Color
结构中定义的自定义颜色。
格式为RGBA(红色,绿色,蓝色,Alpha)。值为从 0.0 到 1.0 的浮点数。
全红色
rend.material.color = new Color(1,0,0,1);
全蓝色
rend.material.color = new Color(0,1,0,1);
全绿色
rend.material.color = new Color(0,0,1,1);
中途可见蓝色
rend.material.color = new Color(0,1,0,0.5f);
隐藏蓝色
rend.material.color = new Color(0,1,0,0);
方法3 :HSV颜色
rend.material.color = Color.HSVToRGB(0,0,0);
我不能继续下去,但这应该让你开始。确保在编辑器中创建材质并将其指定给多维数据集,以便不使用默认的材质。您只需创建一个并将其用于所有多维数据集。更改颜色时,将为您创建新材料。如果您不想这样做,请使用rend.sharedMaterial.color
代替rend.material.color
。
在Unity 5中,事情发生了变化。要更改alpha,您必须选择材质并将渲染模式从不透明(默认)更改为淡化或透明。因此,旧的教程可能无法正常工作。
答案 1 :(得分:0)
使用着色器Unlit / diffuse创建一个材质。将纹理设置为纯白色纹理,并设置材质的颜色。