var renders = transParent.GetComponentsInChildren<Renderer>(true);
for (int i = 0; i < renders.Length; i++)
{
var originMats = renders[i].sharedMaterials;
if (dicOriginMats.ContainsKey(renders[i].transform)) continue;
dicOriginMats.Add(renders[i].transform, originMats);
}
修改材质
for (int i = 0; i < renders.Length; i++)
{
Material[] materials = renders[i].sharedMaterials;
for (int j = 0; j < materials.Length; j++)
{
materials[j] = matTrans;
}
renders[i].materials = materials;
}
还原材质球
foreach (var item in dicOriginMats)
{
var renderer = item.Key.GetComponent<Renderer>();
renderer.materials = item.Value;
}