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

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

2024-05-01 11:32:08

在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已经有一个空白材质球,以上代码只是思路,不一定能够成功运行,请适当修改
紫珺婳浅

2024-05-01 04:18:02

Texture2d[ ] pics;
然后拖进去就可以了
追问
主要是拖文件的问题……所有文件的命名为 字符串+数字序列+字符串,其中数字序列是555~1000连续递增,有没有什么简便的函数能一次性将所有文件拖到数组里?
追答
代码添加
追问
一般是用什么函数添加?能不能给点具体的?
追答
Texture2d[ ] pics; 

pics.add
劫后余生

2024-05-01 10:22:29

要求把贴图按顺序保存为数组
追问
能不能给一些代码?例如如何导入图片到数组