我有许多png文件,我使用C#导入(在Unity 5.3.5中)并将它们设置为图像的精灵。但是,对于其中一些文件,当执行此代码时,Resources.Load会给我'null'。
Resources.Load<Sprite>(@"Instruction_Files/1");
作为一个具体的例子,我上传的第一张图片(7.png)在我打电话时给了我Sprite
Resources.Load<Sprite>(@"Instruction_Files/7");
相反,当我调用
时,我上传的第二张图片(10.png)会给我null Resources.Load<Sprite>(@"Instruction_Files/10");
将10.png重命名为7.png等,反之亦然不会改变事物(原始的10.png将为null,原始的7.png将不会)。
是否存在Sprite文件需要的特定格式(例如,平方,一定数量的kB)以供Resources.Load工作?有没有解决这个问题的潜在方法?感谢。
更新:重要的是,如果我复制7.png.meta文件中的所有信息并将其粘贴到10.png.meta文件中,则将10注册为精灵
答案 0 :(得分:2)
导入设置需要在Sprite/UI
here上设置(请参阅sprite / UI部分)。这些也是元文件中保存的设置。
这就是为什么当你将Unity中的文件从“10”重命名为“7”时它没有加载,因为元文件也被重命名并且导入数据被保留。但是当您从元数据中复制数据时,实际上是在更改导入设置。