HTTP 서버에서 텍스트 또는 바이너리 데이터 가져오기(GET)(Retrieving text or binary data from an HTTP Server (GET))
HTTP 서버에서 에셋 번들 다운로드(GET)(Downloading an AssetBundle from an HTTP server (GET))

HTTP 서버에서 텍스처 가져오기(GET)(Retrieving a Texture from an HTTP Server (GET))

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

이 함수는 단일 문자열을 인수로 사용합니다. 문자열은 텍스처로 사용하기 위한 이미지 파일을 다운로드할 URL을 지정합니다.

세부 정보

  • 이 함수는 UnityWebRequest를 생성하며, 타겟 URL을 문자열 인수로 설정합니다. 다른 커스텀 플래그나 헤더는 설정하지 않습니다.
  • 이 함수는 DownloadHandlerTexture 오브젝트를 UnityWebRequest에 연결합니다. DownloadHandlerTexture는 특별한 다운로드 핸들러로서 Unity 엔진에서 텍스처로 사용할 이미지를 저장하는 데 최적화되어 있습니다. 이 클래스를 사용하면 원시 바이트를 다운로드하여 스크립트에서 텍스처를 수동으로 생성하는 데 비해 메모리 재할당을 크게 줄일 수 있습니다.
  • 기본적으로 이 함수는 업로드 핸들러에 연결됩니다. 원할 경우 수동으로 추가할 수 있습니다.

예제

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

        if(www.isError) {
            Debug.Log(www.error);
        }
        else {
            Texture myTexture = ((DownloadHandlerTexture)www.downloadHandler).texture;
        }
    }
}

또는 헬퍼 게터를 사용하여 GetTexture를 구현할 수 있습니다.

    IEnumerator GetTexture() {
            UnityWebRequest www = UnityWebRequest.GetTexture("http://www.my-server.com/image.png");
            yield return www.Send();

            Texture myTexture = DownloadHandlerTexture.GetContent(www);
        }
HTTP 서버에서 텍스트 또는 바이너리 데이터 가져오기(GET)(Retrieving text or binary data from an HTTP Server (GET))
HTTP 서버에서 에셋 번들 다운로드(GET)(Downloading an AssetBundle from an HTTP server (GET))