private static void LoadTextures(AssetImporterGltfMeshContext context) { if (context.Model.Textures == null) { return; } for (int t = 0; t < context.Model.Textures.Length; t++) { glTFLoader.Schema.Texture tex = context.Model.Textures[t]; if (tex.Source == null) { continue; } int imageIndex = tex.Source.Value; Image img = context.Model.Images[imageIndex]; using (Stream str = glTFLoader.Interface.OpenImageFile(context.Model, imageIndex, context.FullFilename)) { string surfaceAssetName = GetImageAssetName(img, imageIndex, context.FullFilename); AssetImporterSurface2D.Import(str, surfaceAssetName, context.PackageToSaveIn.PackageName, context.FullFilename, out Surface2D surface); if (surface != null) { context.ImportedAssets.Add(surface); } } } }
private static List <Surface2D> LoadTextures(Package packageToSaveIn, Gltf model, string fullFilename) { List <Surface2D> resultList = new List <Surface2D>(); if (model.Textures == null) { return(resultList); } for (int t = 0; t < model.Textures.Length; t++) { Texture tex = model.Textures[t]; if (tex.Source == null) { continue; } int imageIndex = tex.Source.Value; Image img = model.Images[imageIndex]; using (Stream str = glTFLoader.Interface.OpenImageFile(model, imageIndex, fullFilename)) { string surfaceAssetName = GetImageAssetName(img, imageIndex, fullFilename); AssetImporterSurface2D.Import(str, surfaceAssetName, packageToSaveIn.PackageName, fullFilename, out Surface2D surface); if (surface != null) { resultList.Add(surface); } } } return(resultList); }