已经建立好的汽车模型porsche 现在想通过点击按钮的形式将汽车颜色材质从原来的mtl5换成按钮对应的颜色,本人新手,查查写写磕磕绊绊有了下面的代码 但是最后报错很多无法运行。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ColorChange : MonoBehaviour
{
var car:GameObject;
var carMaterial:Material;
void Start()
{
car = GameObject.Find("porsche");
carMaterial = GameObject.Find("porsche").Find("Mtl5").renderer.material;
}
void Update()
{
car.transform.Rotate(Vector3(0.0, 0.5, 0.0));
}
void ChangeColor(color:String)
{
var Mtl5:String = carMaterial.name;
var rds = car.transform.GetComponentsInChildren.< Renderer > ();
for (var r:Renderer in rds)
{
for (var m:Material in r.materials)
{
if (m.name.Equals(Mtl5))
{
print(m.name);
switch (color)
{
case "red":
m.color = Color.red;
break;
case "Yellow":
m.color = Color.yellow;
break;
case "black":
m.color = Color.black;
break;
case "white":
m.color = Color.white;
break;
}
}
}
}
}
function OnGUI()
{
if (GUI.Button(Rect(10, 50, 60, 30), "Yellow"))
{
ChangeColor("yellow");
}
if (GUI.Button(Rect(10, 50, 60, 30), "Red"))
{
ChangeColor("red");
}
if (GUI.Button(Rect(10, 50, 60, 30), "Black"))
{
ChangeColor("black");
}
if (GUI.Button(Rect(10, 50, 60, 30), "White"))
{
ChangeColor("white");
}
}
}
求大神帮忙修改下!谢谢!
Unity 中汽车模型颜色材质切换的问题~~~急用!!!
答案:2 悬赏:0 手机版
解决时间 2021-01-29 18:45
- 提问者网友:不爱我么
- 2021-01-28 17:52
最佳答案
- 五星知识达人网友:老鼠爱大米
- 2021-01-28 19:15
用js方法来实现,代码为:document.getElementById(;t;).style.color=;red;; 说明:上面的;t;可以根据自己需要修改,具体代码参考: 登陆通行证 function chcolor(){ document.getElementById(;t;).style.color=;red;; }
全部回答
- 1楼网友:我住北渡口
- 2021-01-28 20:31
如果地面是平的,直接限制刚体的两个轴,如果地面不平,在update里限制角度
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯