Unity 매뉴얼 스크립팅 API
개요
이 문서는 Unity의 스크립팅 API에 대한 간단한 설명과 주요 기능을 제공합니다. UnityWebRequest를 사용하여 HTTP 서버에서 데이터를 가져오는 방법에 대해 안내합니다.
UnityWebRequest 소개
UnityWebRequest는 Unity에서 네트워크 요청을 보내고 응답을 처리하는 데 사용하는 클래스입니다. 기본적으로 텍스처, 텍스트 및 바이너리 데이터를 가져오는 용도로 사용할 수 있으며, 특히 멀티플레이어 및 네트워킹 기능에서 중요합니다.
주요 기능
- HTTP 서버에서 텍스처 가져오기
- HTTP 서버에서 텍스트 또는 바이너리 데이터 가져오기
- HTTP 서버에서 에셋 번들 다운로드
텍스처 가져오기
UnityWebRequest.Texture 사용
UnityWebRequestTexture.GetTexture
메서드를 사용하면 HTTP 서버에서 텍스처 파일을 효율적으로 다운로드할 수 있습니다. 이 방법은 메모리 재할당을 줄여 성능을 향상시킵니다.
사용 예제
아래는 텍스처를 가져오는 코드 예제입니다.
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;
}
}
}
또는 헬퍼 메서드를 사용하여 간단하게 구현할 수 있습니다.
IEnumerator GetTexture() {
UnityWebRequest www = UnityWebRequestTexture.GetTexture("https://www.my-server.com/image.png");
yield return www.SendWebRequest();
Texture myTexture = DownloadHandlerTexture.GetContent(www);
}
기타 HTTP 요청
텍스트 또는 바이너리 데이터 가져오기
서버에서 텍스트 또는 바이너리 데이터를 가져오려면 UnityWebRequest.GET 메서드를 사용하십시오. 아래는 그 예입니다.
IEnumerator GetData() {
UnityWebRequest www = UnityWebRequest.Get("https://www.my-server.com/data.txt");
yield return www.SendWebRequest();
if (www.result != UnityWebRequest.Result.Success) {
Debug.Log(www.error);
}
else {
string resultText = www.downloadHandler.text;
}
}
에셋 번들 다운로드
에셋 번들을 다운로드하는 방법도 유사하게 사용할 수 있습니다.
IEnumerator DownloadAssetBundle() {
UnityWebRequest www = UnityWebRequestAssetBundle.GetAssetBundle("https://www.my-server.com/assetbundle");
yield return www.SendWebRequest();
if (www.result != UnityWebRequest.Result.Success) {
Debug.Log(www.error);
}
else {
AssetBundle myBundle = DownloadHandlerAssetBundle.GetContent(www);
}
}
결론
이 문서는 UnityWebRequest를 사용하여 다양한 데이터 유형을 서버에서 가져오는 방법을 간단히 설명했습니다. 텍스처, 텍스트 및 에셋 번들을 가져오는 예제를 통해 Unity에서의 네트워킹을 이해하는 데 도움이 되었길 바랍니다. 필요한 경우 Unity 공식 문서에서 더 많은 정보를 확인하시기 바랍니다.
기능 | 설명 |
---|---|
HTTP 요청 | 서버에 요청을 보내고 응답을 받습니다. |
텍스처 가져오기 | 서버에서 텍스처 이미지를 다운로드합니다. |
텍스트 데이터 가져오기 | 텍스트 파일을 서버로부터 다운로드합니다. |
에셋 번들 다운로드 | 에셋 번들을 서버에서 다운로드합니다. |