Example #1
0
        public IObjLoader Create(IAsyncMaterialStreamProvider asyncMaterialStreamProvider)
        {
            var dataStore = new DataStore();

            var faceParser = new FaceParser(dataStore);
            var groupParser = new GroupParser(dataStore);
            var normalParser = new NormalParser(dataStore);
            var textureParser = new TextureParser(dataStore);
            var vertexParser = new VertexParser(dataStore);

            var materialLibraryLoader = new MaterialLibraryLoader(dataStore);
            var materialLibraryLoaderFacade = new MaterialLibraryLoaderFacade(materialLibraryLoader, asyncMaterialStreamProvider);
            var materialLibraryParser = new MaterialLibraryParser(materialLibraryLoaderFacade);
            var useMaterialParser = new UseMaterialParser(dataStore);

            return new ObjLoader(dataStore, faceParser, groupParser, normalParser, textureParser, vertexParser, materialLibraryParser, useMaterialParser);
        }
 public MaterialLibraryLoaderFacade(IMaterialLibraryLoader loader, IAsyncMaterialStreamProvider asyncMaterialStreamProvider)
 {
     _loader = loader;
     _asyncMaterialStreamProvider = asyncMaterialStreamProvider;
 }