在 Unity 中的运行时从文件中动态加载带有 Texture2D 的纹理列表

发布于 2024-10-16 03:51:18 字数 673 浏览 2 评论 0原文

我有要从列表字符串加载的 Texture2D 元素路径的字符串,该列表字符串是从 XML 文件动态填充到列表纹理中的。

公共列表命令; 公共列表图标 = new List(); 无效唤醒() { 整数 i = 0; foreach(命令中的字符串元素) { Icons.Insert(i,icons[i].Resources.Load(元素,Texture2D)); //错误行 我++; 这

我到目前为止所得到的,但我在 Unity 中生成了以下编译器错误:

错误CS1061:类型UnityEngine.Texture'不包含定义 对于“资源”且没有扩展方法的资源类型 `UnityEngine.Texture 可以找到(您是否缺少使用 指令还是程序集引用?)

错误CS1502:最佳重载方法匹配 `System.Collections.Generic.List.Insert(int, UnityEngine.Texture)' 有一些无效参数

错误CS1503:参数#2'无法将对象'表达式转换为类型 `UnityEngine.Texture'

看来我不能像我试图做的那样直接使用 Resources.Load 与图标元素,但我不知道还能怎么做。

I have strings for the path to the Texture2D element I want to load from the List string that is filled dynamically from an XML file into the List Texture.

public List commands;
public List icons = new List();
void Awake()
{
int i = 0;
foreach (string element in commands)
{
icons.Insert(i, icons[i].Resources.Load(element, Texture2D)); //error line
i++;
}

}

Here is what I have so far but I'm generating the following compiler errors in Unity:

error CS1061: Type UnityEngine.Texture' does not contain a definition
for Resources' and no extension method Resources of type
`UnityEngine.Texture could be found (are you missing a using
directive or an assembly reference?)

error CS1502: The best overloaded method match for
`System.Collections.Generic.List.Insert(int,
UnityEngine.Texture)' has some invalid arguments

error CS1503: Argument #2' cannot convert object' expression to type
`UnityEngine.Texture'

It seems I cannot use Resources.Load directly with the icons elements as I am attempting to do but I'm at a loss for how else to go about it.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

ˉ厌 2024-10-23 03:51:18
foreach (string element in commands)
        {
         tex = (Texture2D) Resources.Load(element);
         icons.Add(tex);
        }

所以我想通了;以上修改为改动内容。

foreach (string element in commands)
        {
         tex = (Texture2D) Resources.Load(element);
         icons.Add(tex);
        }

So I figured it out; above modifications are the changes.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文