본문 바로가기
개발/Unity

Unity) URL 이미지 로드 하기 (UnityWebReuqestTexture)

by 테샤르 2022. 11. 18.

 URL 이미지 로드 하기 (UnityWebReuqestTexture)

 

UnityWebReuqest에서 URL이미지를 가져와서 처리할수있도록 지원하는 UnityWebReuqestTexture라는게 존재한다.

단순히 WebRequest 로 Byte Stream을 읽어서 이미지를 만들수도 있지만 Unity에서 지원하는것을 사용하도록 하자

 

 

  • 이 함수는 DownloadHandlerTexture 오브젝트를 UnityWebRequest에 연결합니다. DownloadHandlerTexture는 Unity 엔진에서 텍스처로 사용할 이미지를 저장하는 데 최적화된 특수 다운로드 핸들러입니다.
  • 이 클래스를 사용하면 원시 바이트를 다운로드하여 스크립트에서 텍스처를 수동으로 생성하는 방법에 비해 메모리 재할당이 크게 감소합니다.

 

사용방법은 다음과 같다.

using UnityEngine;
using System.Collections;
using UnityEngine.Networking;
 
public class MyBehaviour : MonoBehaviour {
    void Start() {
        StartCoroutine(GetTexture());
    }
 
    IEnumerator GetTexture() {
        UnityWebRequest www = UnityWebRequestTexture.GetTexture("https://www.my-server.com/image.png");
        yield return www.SendWebRequest();

        if (www.result != UnityWebRequest.Result.Success) {
            Debug.Log(www.error);
        }
        else {
            Texture myTexture = ((DownloadHandlerTexture)www.downloadHandler).texture;
        }
    }
}

 

반응형

 

테스트해보면 다음과 같다.

 

 

 

 

 

Unity HTTP 서버에서 텍스쳐를 검색해서 가져오기(GET) : [링크]

 

HTTP 서버에서 텍스처를 검색해서 가져오기(GET) - Unity 매뉴얼

원격 서버에서 텍스처 파일을 검색해서 가져오기 위해 UnityWebRequest.Texture를 사용할 수 있습니다. 이 함수는 UnityWebRequest.GET과 매우 유사하지만 텍스처를 효율적으로 다운로드하고 저장하는 데 최

docs.unity.cn

 

 

★☆☆☆☆

 

반응형

댓글