博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Unity的AssetDatabase路径格式
阅读量:5891 次
发布时间:2019-06-19

本文共 969 字,大约阅读时间需要 3 分钟。

开发环境

windows 7

Unity 5.3 及更高版本

 

前言

使用AssetDatabase.LoadAnimatorController.CreateAnimatorControllerAtPath等Unity内置Editor API进行文件操作时,经常碰到加载资源为null,或报路径不存在!

经过断点调试,发现绝大部分错误都是因为路径的分隔符存在两种:"/"和"\"。

我们使用 System.IO.Path 这个API得到的路径,其实也是以"\"分隔路径的。

我们在windows下打开资源管理器,某个目录或文件的路径为:e:\Code\GameFramework\ 或 

 

但是使用Unity的API,打印Application.dataPath 时,打印出:E:/xxx/client/trunk/Project/Assets,所以可知,它的路径和windows是反的,所以当我们使用的路径不符合Unity的规范时,经常会报资源加载失败。

比如某个FBX的路径为: ,而如果你的输入的路径或拼接的路径不符合规范,那么极有可能会加载文件失败。

 

规范化路径

提供一个方法,把路径格式成Unity可读取的路径格式:

///     /// 格式化路径成Asset的标准格式    ///     ///     /// 
public static string FormatAssetPath(string filePath) { var newFilePath1 = filePath.Replace("\\", "/"); var newFilePath2 = newFilePath1.Replace("//", "/").Trim(); newFilePath2 = newFilePath2.Replace("///", "/").Trim(); newFilePath2 = newFilePath2.Replace("\\\\", "/").Trim(); return newFilePath2; }
http://www.cnblogs.com/zhaoqingqing/p/6780212.html
你可能感兴趣的文章
日志服务器架构设计
查看>>
使用Unity开发Android的几种调试方法
查看>>
C++ 基础笔记(一)
查看>>
编译内核出错:invalid option `abi=aapcs-linux' 解决办法
查看>>
System.Func<>与System.Action<>
查看>>
[翻译] EnterTheMatrix
查看>>
asp.net开源CMS推荐
查看>>
我所思考的生活,致半年后的自己
查看>>
csharp skype send message in winform
查看>>
jQuery plugin: Tablesorter 2.0
查看>>
MMORPG 游戏服务器端设计--转载
查看>>
C#实现无标题栏窗体点击任务栏图标正常最小化或还原的解决方法
查看>>
《星辰傀儡线》人物续:“灭世者”、“疯狂者”、“叛逆者”三兄妹
查看>>
安装系统字体
查看>>
SILK 的 Tilt的意思
查看>>
Html学习笔记3
查看>>
批处理学习笔记8 - 深入学习For命令1
查看>>
ActiveX控件的安全初始化和脚本操作 和 数字签名SIGN
查看>>
Eclipse console文本换行
查看>>
微信支付开发(11) Native支付
查看>>