Unity3D中,如何把图像文件保存为数组并通过输入键盘信息调用?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity3D中,如何把图像文件保存为数组并通过输入键盘信息调用?相关的知识,希望对你有一定的参考价值。

有两个plane,各自有1000个贴图(贴图名称有编号),要求把贴图按顺序保存为数组,当从gui中输入序号时,两个plane的贴图同时更新成数组编号相应的贴图

在unity工程的Assets目录下创建Resources目录,将图片按照一定的格式命名放在该目录下,比如说plane1的贴图名称为1_0001,1_0002等
然后写一个更新贴图的脚本
public class ChangeTex:MonoBehivour

private string m_id = "";
internal void OnGUI()

GUILayout.Label("ID");
m_id = GUILayout.TextField(m_id);
if (GUILayout.Button("Change"))

renderer.material.mainTexture = (Texture2D)Resources.Load(m_id);



将该脚本拖到plane1上面即可看到gui,输入对应的贴图名称,点击Change按钮就可以变化贴图了,当然,这个首先要保证这个plane已经有一个空白材质球,以上代码只是思路,不一定能够成功运行,请适当修改
参考技术A Texture2d[ ] pics;
然后拖进去就可以了追问

主要是拖文件的问题……所有文件的命名为 字符串+数字序列+字符串,其中数字序列是555~1000连续递增,有没有什么简便的函数能一次性将所有文件拖到数组里?

追答

代码添加

追问

一般是用什么函数添加?能不能给点具体的?

追答

Texture2d[ ] pics;

pics.add

参考技术B 要求把贴图按顺序保存为数组追问

能不能给一些代码?例如如何导入图片到数组

如何在 React 的本地文件夹中保存图像并返回路径

【中文标题】如何在 React 的本地文件夹中保存图像并返回路径【英文标题】:How to Save Image in local Folder in React And Return Path 【发布时间】:2020-06-25 06:50:11 【问题描述】:

我有一个反应应用程序,我从 API 获取项目数据。 我有图像上传器,可以将图像保存为字节数组并将其发送到后端。但是我想将图像保存在任何本地文件夹(例如资产)和返回路径中,然后我将路径发送到后端,请指导我该怎么做?

//#region onChangeMainImage
    onChangeMainImage(e) 
        const file = e.target.files[0];
        return new Promise((resolve, reject) => 
            const reader = new FileReader();
            reader.onload = (event) => 
                resolve(event.target.result);
                this.setState( MainImage: event.target.result.split(',')[1] )
                var type = event.target.result.split('/')[1];

                this.setState( filetype: type.split(';')[0] )
                //this.setState(file:event.target.result)
            ;
            reader.onerror = (err) => 
                reject(err);
            ;
            reader.readAsDataURL(file);
        );

    ;
    //#endregion
   <FormGroup title="MainImage" >

                                            <input
                                                name="Avatar"
                                                id="img"
                                                type="file"
                                                class="form-control"
                                                onChange=e => this.onChangeMainImage(e)
                                            ></input>

                                        </FormGroup>

【问题讨论】:

【参考方案1】:

无法在网络中写入本地

我想将图像保存在任何本地文件夹中

如果网站可以使用 JS 写入您的本地设备,那么这将是一个巨大的安全风险,因此在节点环境之外是不可能的。

但是如果你是用electron什么的做桌面应用,就得使用node环境和node库“文件系统”fs,来保存文件。

【讨论】:

以上是关于Unity3D中,如何把图像文件保存为数组并通过输入键盘信息调用?的主要内容,如果未能解决你的问题,请参考以下文章

将图像数组转换为 JSON 文件并在 C# 之后对其进行解码

C#怎样将数组作为文件流保存起来

如何在 React 的本地文件夹中保存图像并返回路径

如何通过matlab把AVI格式的视频提取出随意的一帧,并保存为图像,希望能给出完整的代码!

我的一个网页上保存着我以前输的密码!现在忘了,怎么知道?

如何保存从python中的图像转换的数组? [复制]