找回密码
 立即注册
查看: 240|回复: 0

Unity 加载本地图片

[复制链接]
发表于 2023-1-3 22:16 | 显示全部楼层 |阅读模式
一、使用File读取

void LocalBtyeToImage(Image image, string url) {        if (!File.Exists(url))            return;           byte[] readBtye = File.ReadAllBytes(url);        int width = Screen.width;        int height = Screen.height;        Texture2D texture = new Texture2D(width, height);        texture.LoadImage(readBtye);        Sprite sprite = Sprite.Create(texture,            new Rect(0, 0, width, height),            new Vector2(0.5f, 0.5f));        image.sprite = sprite;    }二、使用UnityWebRequest获取

IEnumerator FetchLocalPicture(Image image, string url) {        if (!File.Exists(url))             yield break;        var uri = new System.Uri(Path.Combine(url));        using (UnityWebRequest uwr = UnityWebRequest.Get(uri)) {            DownloadHandlerTexture downloadHandlerTexture = new DownloadHandlerTexture(true);            uwr.downloadHandler = downloadHandlerTexture;            yield return uwr.SendWebRequest();            if (uwr.result == UnityWebRequest.Result.Success)            {                int width = Screen.width;                int height = Screen.height;                Texture2D texture = new Texture2D(width, height);                texture = downloadHandlerTexture.texture;                Sprite sprite = Sprite.Create(texture,                    new Rect(0, 0, width, height),                    new Vector2(0.5f, 0.5f));                image.sprite = sprite;                Resources.UnloadUnusedAssets();            }        }    }
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-11-16 02:29 , Processed in 0.091050 second(s), 25 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表