private async UniTask Import(string browserUrl) { lastImportedTexture = null; lastImportedMaterial = null; Debug.Assert(!loading); loading = true; // TODO: support other sources Debug.Log($"Importing asset: {browserUrl}"); var id = HdriHavenApi.GetIdFromUrl(browserUrl); var textureUrl = await HdriHavenApi.GetTextureUrlAsync(id, settings.resolution); await DownloadAndImportTexture(textureUrl, id); }
private async UniTask LoadPreviews() { loading = true; var metaData = await HdriHavenApi.GetMetaDataAsync(); var previews = metaData.assets .Select(asset => asset.Key) .Select(id => (id: id, download: HdriHavenApi.GetAssetPreviewTexture(id))) .Take(previewsPerPage) .ToArray(); var textures = await UniTask.WhenAll(previews.Select(p => p.download)); for (var i = 0; i < previewsPerPage; ++i) { previewTextures[i] = textures[i]; previewIds[i] = previews[i].id; } loading = false; }
private async UniTask DownloadAndImportHdriHavenTexture(string id) { var textureUrl = await HdriHavenApi.GetTextureUrlAsync(id, settings.resolution); await DownloadAndImportTexture(textureUrl, id); }