一般项目中需要替换一些UI的图片时,每次都要打开源工程修改很麻烦,就想了一个动态加载外部图片资源替换打包好的exe或者webgl应用中图片的方法:
/// <summary>
/// 加载StreamingAssets下所有的Textures
/// </summary>
private void LoadTexture()
{
List<string> filePaths = new List<string>();
string texType = "*.PNG|*.JPG"; //图片格式
string[] TextureType = texType.Split('|');
int number = 0;
for (int i = 0; i < TextureType.Length; i++)
{
dirs = Directory.GetFiles(Application.streamingAssetsPath + "/Textures", TextureType[i]); //将每个图片路径存入到字典
for (int j = 0; j < dirs.Length; j++)
{
filePaths.Add(dirs[j]);
}
number += dirs.Length;
}
//加载所有图片
for (int i = 0; i < filePaths.Count; i++)
{
Texture2D t = new Texture2D(100, 100);
t.LoadImage(GetTextureByte(filePaths[i]));
allTex2D.Add(t);
}
}
private s

本文介绍了一种在Unity项目中动态加载外部图片资源的方法,通过遍历StreamingAssets文件夹下的Textures目录,读取所有PNG和JPG格式的图片,并将其加载到运行时的应用中。该方法适用于exe或webgl应用。
最低0.47元/天 解锁文章
742





