Unity加载本地资源

本文详细介绍了在新版Unity中使用UnityWebRequest替代WWW加载本地及网络资源的方法,包括文本、音视频和图片等各类资源的加载流程及注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

之前加载本地电脑文件都是通过www加载,但是新版Unity已经不支持这个API了。看了一下提醒,说是让用UnityWebRequest代替。命名空间同样是NetWorking,整理了一下加载常用资源的方式。

1.加载本地文档

 IEnumerator LoadFile()
    {
        UnityWebRequest request = UnityWebRequest.Get(@"E:\UnityProjects\TestFile\TestFile.txt");
        yield return request.SendWebRequest();
        if (request.isHttpError||request.isNetworkError)
        {
            Debug.Log(request.error);
        }
        else
        {
            ShowText.text = request.downloadHandler.text;
        }
    }

downloadhandler.text 返回文本内容。

2.加载音视频图片文件

 IEnumerator LoadFile()
    {
        UnityWebRequest request = UnityWebRequestMultimedia.GetAudioClip(@"E:\UnityProjects\TestFile\TestMusic.ogg", AudioType.OGGVORBIS);
        yield return request.SendWebRequest();
        if (request.isHttpError||request.isNetworkError)
        {
            Debug.Log(request.error);
        }
        else
        {
            AudioClip audio = DownloadHandlerAudioClip.GetContent(request);
            this.GetComponent<AudioSource>().clip = audio;
            GetComponent<AudioSource>().Play();
        }
        
    }

这里测试音频为ogg格式,MP3格式会报错,提示不支持MPEG。

3.加载视频......本来以为DownloadHandlerMovieTexture,还能用,谁知道又过时了,使用VideoPlayer代替。

VideoPlayer超级简单粗暴

可以直接拖工程里面的视频进去,也可以通过传入一个URL链接来加载使用。通过RendTexture 来显示出来

4.加载本地图片

 IEnumerator LoadFile()
    {
        UnityWebRequest request = UnityWebRequestTexture.GetTexture(@"E:\UnityProjects\TestFile\TestImage.jpg");
        yield return request.SendWebRequest();
        if (request.isHttpError || request.isNetworkError)
        {
            Debug.Log(request.error);
        }
        else
        {
            Texture tt = DownloadHandlerTexture.GetContent(request);
            GetComponent<RawImage>().texture = tt;
        }

    }

总体感觉UnityWebRequest 这个类和之前的WWW类是一样的,加载各种资源。

评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值