大家好,我是橙子,今天为大家带来的是Unity场景切换进度条的教程。
★,♫◦★,♫◦★,♫◦★,--------------------华丽的分割线--------------------♫◦★,♫◦★,♫◦★,♫◦★,♫◦
最近有一些新手小伙伴,来咨询橙子,利用transform.Find或者GameObject.Find查询Hierarchy窗口中的物体,报空指针,小伙伴们都很疑惑,明明写的没错,为什么报错了呢?
经过几番查询,原来是发现,查询的路径,拼错了一个字母,我就想着 有时间写一个物体路径查询工具,方便大家使用,也让新手小白,避免低级错误,提高学习或工作效率。
提示:以下是本篇文章正文内容,下面案例可供参考
在Unity中新建Editor文件夹,这里可能有小伙伴疑问?为什么要新建Editor文件夹?
下面是对Editor文件夹的一些介绍:
Edilor文件夹可以在根目录下,也可以在子目录里,只要名字叫Editor就可以。比如目录:hox.sooEditor和/Editor是一样的,无论多少个叫Editor的文件夹都可以。Edlior下面放的所有资源文件或者脚本文件都不会被打进发布包中,并且脚本也只能在编辑时使用。一般呢会把一些工具类的脚本放在这里,或者是一些编辑时用的DLL。比如我们现在要做类似技能编辑器,那么编辑器的代码放在这里是再好不过了,因为实际运行时我们只需要编辑器生成的文件,而不需要编辑器的核心代码。
我的理解就是,文件夹中的脚本只在Unity编辑器中运行,不会被打到包里,也不能在包里使用。
代码如下:记得新建脚本的脚本名 要和我的保持一致哦!
using UnityEditor;
using UnityEngine;
public class ObjPathCopyTool : ScriptableObject
{
[MenuItem("Custom/复制选中物体的路径 %Q")]//自定义快捷键
static void CopyPath()
{
Object[] objs = Selection.objects;
if (objs.Length < 1)
return;
GameObject obj = objs[0] as GameObject;
if (!obj)
return;
string path = obj.name;
Transform parent = obj.transform.parent;
while (parent)
{
path = string.Format("{0}/{1}", parent.name, path);
parent = parent.parent;
}
Debug.Log(path);
CopyString(path);
}
//将字符串赋值到剪切板
static void CopyString(string str)
{
TextEditor te = new TextEditor();
te.text = str;
te.SelectAll();
te.Copy();
}
}
放入完成之后,等待Unity加载完毕。
这个时候,看菜单栏就会多了一个Custom
在Hierarchy窗口中,随便选择一个物体。
我选了一个层级比较多的物体。
然后按Ctrl+Q或者你去菜单栏点击Custom下的按钮也可以。
系统就会自动把路径打印出来,然后复制路径去查找即可
如果嫌麻烦,可以去连接下载 https://download.csdn.net/download/weixin_45375968/85168252
到这里就结束啦,以上就是今天橙子要讲的全部内容,本文仅仅简单介绍了Editor文件夹是什么,利用小工具,快速获取到Hierarchy窗口中物体的路径,让我们更迅速的找到物体名字,从而提高学习或工作效率。
不及硅步,无以至千里。
不积小流,无以成江海。
每天进步一点点 谢谢您的观看。
觉得对自己有帮助,欢迎关注、收藏、转发!我们下期再见