Unity image 加载本地图片
时间: 2023-10-08 15:06:33 浏览: 212
要在Unity中加载本地图片,可以使用以下代码:
```csharp
using UnityEngine;
using UnityEngine.UI;
using System.IO;
public class LoadLocalImage : MonoBehaviour
{
public string imagePath; // 图片路径
public Image image; // UI Image组件
void Start()
{
// 读取本地图片,转换成Texture2D
Texture2D texture = LoadTexture(imagePath);
// 将Texture2D转换成Sprite,赋值给Image组件显示
Sprite sprite = Sprite.Create(texture, new Rect(0, 0, texture.width, texture.height), new Vector2(0.5f, 0.5f));
image.sprite = sprite;
}
// 读取本地图片,返回Texture2D
Texture2D LoadTexture(string path)
{
Texture2D texture = null;
byte[] bytes = null;
// 读取本地文件
if (File.Exists(path))
{
bytes = File.ReadAllBytes(path);
texture = new Texture2D(2, 2);
texture.LoadImage(bytes);
}
return texture;
}
}
```
使用时,将脚本挂载到场景中的一个GameObject上,将要加载的本地图片路径赋值给imagePath变量,将要显示图片的Image组件赋值给image变量即可。注意,在Unity的编辑器中,图片路径应该使用相对路径,例如:Assets/Resources/xxx.png。如果是在Android或iOS平台上运行,需要使用绝对路径。
阅读全文