private void HandleTextureLoaded(Ur.Filesystem.Loader loader, Texture asset) { lock (spriteDefsByTexture) { spriteDefsByTexture[asset] = new List <SpriteDefinition>(); var idkey = GetAssetIdentityKey(loader); textureIdentitiesLookup[asset] = idkey; spriteDefsByStringID.Add(idkey, asset); } }
private string GetAssetIdentityKey(Ur.Filesystem.Loader loader) { var raw = loader.Path.Substring(loader.BasePath.Length + 1); raw = raw.Replace('\\', '.').Replace('/', '.'); var extPos = raw.LastIndexOf('.'); raw = raw.Substring(0, extPos); return(raw); }
private void HandleFontLoaded(Ur.Filesystem.Loader loader, Font asset) { if (DefaultFont == null) { DefaultFont = asset; } var idkey = GetAssetIdentityKey(loader); fontsCachedByID.Add(idkey, asset); }
internal void HandleAssetLoaded(Ur.Filesystem.Loader loader, object asset) { if (asset is Texture t) { HandleTextureLoaded(loader, t); } else if (asset is Font f) { HandleFontLoaded(loader, f); } else if (asset is Shader s) { HandleShaderLoaded(loader, s); } }
private void HandleShaderLoaded(Ur.Filesystem.Loader loader, Shader asset) { var idkey = GetAssetIdentityKey(loader); shadersCachedByID.Add(idkey, asset); }