以下unity3d的C#代码是什么意思?

voidStartEditor(){if(!matLoaded){back.renderer.sharedMaterial=newMaterial(back.render... void StartEditor()
{
if (!matLoaded)
{
back.renderer.sharedMaterial = new Material(back.renderer.sharedMaterial);
lines.renderer.sharedMaterial = new Material(lines.renderer.sharedMaterial);
matLoaded = true;
}
}
展开
 我来答
腹黑的艾莉嘉
推荐于2016-11-26 · TA获得超过177个赞
知道答主
回答量:109
采纳率:0%
帮助的人:110万
展开全部
back.renderer.sharedMaterial = new Material(back.renderer.sharedMaterial);

根据Material的构造函数来说, new Material(back.renderer.sharedMaterial)是复制了自己原来的材质的shader而新建一个材质,这样做的目的恐怕是在后面的操作中需要更改这个back中的材质,而这个材质是共用的改变了其他共用这个材质的物体也会改变,而新建一个可以获得一个样的材质,而且更改了不会改变其他的材质。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
C胸是个坎
2014-10-30 · TA获得超过441个赞
知道答主
回答量:498
采纳率:0%
帮助的人:248万
展开全部
给 back 和 lines绑定一个材质包
追问
back.renderer.sharedMaterial = new Material(back.renderer.sharedMaterial);

这前后相当,为什么还要写出来呢?作用是什么?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式