Exemple #1
0
        public override async Task <bool> Load(
            string url,
            IDownloadProvider downloadProvider   = null,
            IDeferAgent deferAgent               = null,
            IMaterialGenerator materialGenerator = null,
            ICodeLogger logger = null
            )
        {
            logger = logger ?? new ConsoleLogger();
            var success = await base.Load(url, downloadProvider, deferAgent, materialGenerator, logger);

            if (success)
            {
                if (deferAgent != null)
                {
                    await deferAgent.BreakPoint();
                }
                // Auto-Instantiate
                if (sceneId >= 0)
                {
                    InstantiateScene(sceneId, logger);
                }
                else
                {
                    Instantiate(logger);
                }
            }
            return(success);
        }
 public async Task ApplyOnMeshAndDispose(Mesh mesh)
 {
     for (var index = 0; index < contexts.Length; index++)
     {
         var context = contexts[index];
         context.AddToMesh(mesh, meshTargetNames?[index] ?? index.ToString());
         context.Dispose();
         await deferAgent.BreakPoint();
     }
     contexts = null;
 }
Exemple #3
0
        public override async Task <bool> Load(string url, IDownloadProvider downloadProvider = null, IDeferAgent deferAgent = null, IMaterialGenerator materialGenerator = null)
        {
            var success = await base.Load(url, downloadProvider, deferAgent, materialGenerator);

            if (success)
            {
                if (deferAgent != null)
                {
                    await deferAgent.BreakPoint();
                }
                // Auto-Instantiate
                gLTFastInstance.InstantiateGltf(transform);
            }
            return(success);
        }