C# 更改渲染器颜色
我是unity engine的新手 如何在立方体上着色C# 更改渲染器颜色,c#,unity3d,C#,Unity3d,我是unity engine的新手 如何在立方体上着色 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 Star
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)
使用UnityEngine;
使用系统集合;
公共类cor_cube:单行为{
公共颜色colorStart=Color.red;
公共颜色colorEnd=Color.green;
公共浮动持续时间=1.0F;
公开渲染;
void Start(){
rend=GetComponent();
}
无效更新(){
float lerp=数学乒乓球(时间、持续时间)/持续时间;
rend.material.color=color.Lerp(colorStart、colorEnd、Lerp);
}
}(我不想那样)
我想要一个固定的颜色。创建一个材质,材质上的着色器不亮/漫反射。将纹理设置为纯白色纹理并设置材质的颜色。创建材质,材质上的着色器为“未亮/漫反射”。将纹理设置为纯白色纹理并设置材质的颜色 我想要固定的颜色 看起来你不想从一种颜色到另一种颜色。您只需要设置颜色 以下是更改颜色的方法: 方法1:预定义颜色
void Start() {
rend = GetComponent<Renderer>();
rend.material.color = Color.blue;
}
全绿色
rend.material.color = new Color(0,0,1,1);
半可见蓝色
rend.material.color = new Color(0,1,0,1);
rend.material.color = new Color(0,1,0,0.5f);
rend.material.color = new Color(0,1,0,0);
隐藏蓝色
rend.material.color = new Color(0,1,0,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:预定义颜色
void Start() {
rend = GetComponent<Renderer>();
rend.material.color = Color.blue;
}
全绿色
rend.material.color = new Color(0,0,1,1);
半可见蓝色
rend.material.color = new Color(0,1,0,1);
rend.material.color = new Color(0,1,0,0.5f);
rend.material.color = new Color(0,1,0,0);
隐藏蓝色
rend.material.color = new Color(0,1,0,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,必须选择材质并将渲染模式从不透明(默认)更改为淡入淡出或透明。因此,旧教程可能会因此而无法使用。我有31个立方体,我必须创建31个材质?不,在运行时每个立方体将获得自己的材质实例。我有31个立方体,我必须创建31个材质?不,在运行时每个立方体将获得自己的材质实例