Unity 6.3
0 онлайн 2 гостей 3 в системе
Вход

DownloadHandlerAssetBundle

класс в UnityEngine.Networking

Наследуется от:Networking.DownloadHandler

Выполнено в:UnityEngine.UnityWebRequestAssetBundleModule

Описание

Подкласс DownloadHandler, специализирующийся на загрузке AssetBundles.

Этот подкласс передаёт загруженные данные в Unity's AssetBundle система декомпрессии и декодирования на рабочих потоках, обеспечивающая эффективную загрузку и обработку для AssetBundle объектов.

Преимуществом этого обработчика загрузки является то, что он может передавать данные по потоку на Unity's AssetBundle После того, как все данные были получены, AssetBundle доступен как AssetBundle объекта. Только одна копия объекта AssetBundle Это уменьшает распределение памяти во время выполнения и влияние на память загрузки объекта. AssetBundle. Он также позволяет AssetBundles чтобы частично использовать, пока не полностью загружен, так что вы можете потоковые ассеты.

Вся загрузка и декомпрессия происходит на рабочих потоках, за исключением веб-платформы.

Загружено AssetBundle данные обрабатываются DownloadHandlerAssetBundle объект, который имеет особое assetBundle свойства для извлечения AssetBundle объект.

В связи с тем, как AssetBundle система работает, все AssetBundles адрес, связанный с ними. Как правило, это номинальный адрес URL на котором они расположены (то есть URL почти во всех случаях, вы должны передавать в том же порядке, что и URL как вы прошли к UnityWebRequest. При использовании высокого уровня API (HLAPI), это сделано для вас. Дополнительные ресурсы: UnityWebRequestAssetBundle

using UnityEngine;
using UnityEngine.Networking;
using System.Collections;

public class MyBehaviour : MonoBehaviour { void Start() { StartCoroutine(GetAssetBundle()); }

IEnumerator GetAssetBundle() { UnityWebRequest www = new UnityWebRequest("https://www.my-server.com"); DownloadHandlerAssetBundle handler = new DownloadHandlerAssetBundle(www.url, 0); www.downloadHandler = handler; yield return www.SendWebRequest();

if (www.result != UnityWebRequest.Result.Success) { Debug.Log(www.error); } else { // Extracts AssetBundle AssetBundle bundle = handler.assetBundle; } } }

Свойства

Свойство Описание
assetBundleВозвращает загруженный AssetBundle или null. (Только чтение)
autoLoadAssetBundleЕсли true, то AssetBundle будет загружаться как часть процесса UnityWebRequest. Если false, то AssetBundle будет загружаться по требованию при доступе к свойству DownloadHandlerAssetBundle.assetBundle.
isDownloadCompleteВозвращает true, если часть операции, связанная с загрузкой данных, завершена.

Конструкторы

Конструктор Описание
DownloadHandlerAssetBundleСтандартный конструктор для некэшируемых пакетов ассетов.

Защищенные методы

Метод Описание
GetDataНе реализовано. Бросает NotSupportedException.
GetTextНе реализовано. Бросает NotSupportedException.

Статические методы

Метод Описание
GetContentВозвращает загруженный AssetBundle или null.
Унаследованные члены 3

Свойства

СвойствоОписание
dataВозвращает необработанные байтовые данные, загруженные с удаленного сервера, или null. (только для чтения)
errorСообщение об ошибке, описывающее сбой, который произошел внутри обработчика загрузки.
isDoneВозвращает true, если этот DownloadHandler был проинформирован родительским UnityWebRequest о том, что все данные были получены, и этот DownloadHandler завершил любую необходимую обработку после загрузки. (Только для чтения)
nativeDataОбеспечивает прямой доступ к загруженным данным.
textСвойство удобства. Возвращает байт из данных, интерпретированных как строка UTF8. (Только чтение)

Открытые методы

МетодОписание
DisposeСигнализирует, что DownloadHandler больше не используется и должен очистить все ресурсы, которые он использует.

Защищенные методы

МетодОписание
CompleteContentОбратный вызов, вызываемый, когда все данные были получены от удаленного сервера.
GetNativeDataОбеспечивает свободный доступ к загруженным данным в качестве NativeArray.
GetProgressОбратный вызов, вызываемый при доступе к UnityWebRequest.downloadProgress.
ReceiveContentLengthHeaderПолучен обратный вызов, вызванный с заголовком Content-Length.
ReceiveDataОбратный вызов, вызываемый при получении данных от удаленного сервера.