| | 1 | | using Cysharp.Threading.Tasks; |
| | 2 | | using MainScripts.DCL.AssetsEmbedment.Runtime; |
| | 3 | | using System.Threading; |
| | 4 | | using UnityEngine; |
| | 5 | |
|
| | 6 | | namespace DCL |
| | 7 | | { |
| | 8 | | /// <summary> |
| | 9 | | /// Provides textures from "Resources" |
| | 10 | | /// </summary> |
| | 11 | | public class EmbeddedTextureProvider : ITextureAssetProvider |
| | 12 | | { |
| | 13 | | public async UniTask<Texture2D> GetTextureAsync(string url, CancellationToken cancellationToken = default) |
| | 14 | | { |
| 0 | 15 | | var lastSlash = url.LastIndexOf('/'); |
| 0 | 16 | | var hash = lastSlash > -1 ? url.Remove(0, lastSlash + 1) : url; |
| 0 | 17 | | var result = await Resources.LoadAsync<Texture2D>(EmbeddedTextureResourcesPath.VALUE + "/" + hash).WithCance |
| 0 | 18 | | return (Texture2D)result; |
| 0 | 19 | | } |
| | 20 | | } |
| | 21 | | } |