-
放在资源文件夹下的图片(本地文件)
Texture tex = (Texture)Resources.Load("XXX/XXX");
该方法读取的图片只能是在项目路径下的Resources文件夹下的,如果需要读取其他地址下的图片则需要使用如下两种方式
-
通过WWW方法读取
本地及网络文件,本地文件需要加file://前缀
private IEnumerator GetImage(string path)
{
WWW www = new WWW("file://" + path);
yield return www;
if (www != null && string.IsNullOrEmpty(www.error))
{
Texture2D texture = new Texture2D(www.texture.width, www.texture.height);
texture.SetPixels(www.texture.GetPixels());
texture.Apply(true);
texture.filterMode = FilterMode.Trilinear;
}
}
WWW方法必须放在协程中执行
-
C# IO方法(本地文件)
通过C#将文件读取为Byte[]数据,再使用texture.LoadImage进行装填,缺陷在创建Texture时无法获知图片的宽高
Texture2D tx = new Texture2D(100, 100);
tx.LoadImage(getImageByte(filePath);
private static byte[] getImageByte(string imagePath)
{
FileStream files = new FileStream(imagePath, FileMode.Open);
byte[] imgByte = new byte[files.Length];
files.Read(imgByte, 0, imgByte.Length);
files.Close();
return imgByte;
}
Unity 读取图片方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity 读取图片方法相关的知识,希望对你有一定的参考价值。
以上是关于Unity 读取图片方法的主要内容,如果未能解决你的问题,请参考以下文章