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 | Обратный вызов, вызываемый при получении данных от удаленного сервера. |