【问题标题】:Unity3d Resources.LoadAll<Sprite> empty arrayUnity3d Resources.LoadAll<Sprite> 空数组
【发布时间】:2016-03-25 01:57:41
【问题描述】:

在我的资源文件夹结构中我有一个文件,现在在统一编辑器中这个文件是Texture Type Sprite (2D and UI),现在当我尝试在我的一个脚本中运行这个代码时

var icons = Resources.LoadAll&lt;Sprite&gt;("Images/BuffIcons");

我的图标变量是空的,现在如果我将上面的行更改为

var icons = Resources.LoadAll("Images/BuffIcons");

它返回一个数组,其中包含一个 Texture2D 和多个 Sprite 对象。现在为什么我不能将对象转换为Sprite

也仅供参考,Sprite (2D and UI) 是一个 Multiple 精灵,所以这个精灵总共有 42 个不同的精灵。在我看来,包含所有其他精灵的精灵被归类为Texture2D,然后Texture2D 内的所有精灵都是精灵。我怎样才能告诉 Resources.LoadAll 加载精灵?

【问题讨论】:

    标签: unity3d unity5 unity3d-2dtools


    【解决方案1】:

    所以这是一个非常愚蠢的答案,但是我不会删除这个问题,因为在网络上我已经在一个视图的地方看到了这个问题,所有的答案都对我不起作用。这是我的解决方法:D

    基本上我在 Assets/Resources/Images/BuffIcons 中有一个 Sprite (2D and UI) 文件,在我的代码中我有这一行

    BuffIconSprites = Resources.LoadAll<Sprite>("Images/BuffIcons");
    

    基本上我所要做的只是关闭 Unity 并重新打开它,似乎如果您创建包含多个精灵的精灵资产,您需要关闭并重新打开 Unity,我认为这与解决方案文件有关当 Unity 文件中的内容发生变化时,它会不断更新。

    附:如您所见,我提供的代码行没有改变。所以我 100% 确定这个问题与 Unity 解决方案有关

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-04
      • 2023-03-23
      • 1970-01-01
      • 2015-03-10
      • 1970-01-01
      相关资源
      最近更新 更多