一、常见的一种需求,如查找骨骼点、查找UI、查找特效挂载点
- Unity 内置的API查找子物体 transform(路径),必须是已知路径然后层级多了特别的恶心
- 解决方案递归查找物体
- 代码
public class TransformHelper
{
/// <summary>
/// 查找子物体
/// </summary>
/// <param name="current">当前变换组件</param>
/// <param name="childName">查找的物体名称</param>
/// <returns></returns>
public static Transform FindChildByName(Transform current,string childName)
{
//在子物体中查找
Transform childTf = current.Find(childName);
if (childTf != null) return childTf;
for (int i = 0; i < current.childCount; i++)
{
//将任务移交给子物体
childTf = FindChildByName(current.GetChild(i), childName);
if (childTf != null) return childTf;
}
return null;
}
}