//得到所有可渲染的子物体
Renderer[] rds = transform.GetComponentsInChildren<Renderer>();
//逐一遍历他的子物体中的Renderer
foreach (Renderer render in rds)
{
//逐一遍历子物体的子材质(renderer中的material)
foreach (Material material in render.materials)
{
var r = material.color.r;
var g = material.color.g;
var b = material.color.b;
material.color = new Color(r, g, b, _Alpha);
}
}
//单个物体的材质球控制
var render = transform.GetComponent<Renderer>();
if (render != null)
{
foreach (Material material in render.materials)
{
var r = material.color.r;
var g = material.color.g;
var b = material.color.b;
material.color = new Color(r, g, b, _Alpha);
}
}
遍历所有子物体中renderer(渲染器)中的material(材质)
于 2017-07-05 11:31:00 首次发布
本文介绍如何使用C#脚本在Unity中批量调整场景内物体及其子物体的材质颜色,并展示了如何针对单个物体进行材质颜色修改的方法。
537

被折叠的 条评论
为什么被折叠?



