Esempio n. 1
0
        public void ExportModel(string fileName, DAE.ExportSettings settings)
        {
            List <STGenericMaterial> Materials = new List <STGenericMaterial>();

            foreach (var mesh in Renderer.Meshes)
            {
                if (mesh.GetMaterial() != null)
                {
                    Materials.Add(mesh.GetMaterial());
                }
            }

            var textures = new List <STGenericTexture>();

            foreach (var tex in PluginRuntime.stikersTextures)
            {
                textures.Add(tex);
            }

            var model = new STGenericModel();

            model.Materials = Materials;
            model.Objects   = Renderer.Meshes;

            STSkeleton skeleton = null;

            if (DrawableContainer.Drawables.Count > 1)
            {
                skeleton = (STSkeleton)DrawableContainer.Drawables[1];
            }

            DAE.Export(fileName, settings, model, textures, skeleton);
        }
Esempio n. 2
0
        public void ExportModel(string folderPath, DAE.ExportSettings settings)
        {
            foreach (LM3_Model mdl in Nodes)
            {
                List <STGenericMaterial> Materials = new List <STGenericMaterial>();
                foreach (STGenericObject mesh in mdl.RenderedMeshes)
                {
                    if (mesh.GetMaterial() != null)
                    {
                        Materials.Add(mesh.GetMaterial());
                    }
                }

                if (!mdl.loaded)
                {
                    mdl.UpdateVertexData();
                }

                var model = new STGenericModel();
                model.Materials = Materials;
                model.Objects   = mdl.RenderedMeshes;

                settings.SuppressConfirmDialog = true;

                DAE.Export($"{folderPath}/{mdl.Text}.dae", settings, model, new List <STGenericTexture>());
            }

            System.Windows.Forms.MessageBox.Show($"Exported models Successfuly!");
        }
Esempio n. 3
0
        static void ExportModel(MDL model)
        {
            IFileFormat fileFormat = (IFileFormat)model;
            string      daePath    = fileFormat.FileInfo.FileName.Replace(".mdl", ".dae");
            string      folder     = Path.GetFileNameWithoutExtension(fileFormat.FileInfo.FileName);
            string      folderDir  = Path.Combine(Path.GetDirectoryName(fileFormat.FileInfo.FilePath), folder);

            if (!Directory.Exists($"{folder}"))
            {
                Directory.CreateDirectory($"{folder}");
            }

            var materials    = model.Header.Materials;
            var drawElements = model.Header.DrawElements;

            //Export by draw element to export shape flags
            for (int i = 0; i < drawElements.Length; i++)
            {
                File.WriteAllText($"{folder}/Mesh{i}.json",
                                  model.ExportMaterial(drawElements[i]));
            }

            File.WriteAllText($"{folder}/SamplerList.json", model.ExportSamplers());

            var settings = new DAE.ExportSettings();

            settings.ImageFolder = folder;
            DAE.Export(Path.Combine(folderDir, daePath), settings, model);

            Console.WriteLine($"Exported model {model.FileInfo.FileName}!");
        }
Esempio n. 4
0
        public void ExportModel(string fileName, DAE.ExportSettings settings)
        {
            var model = new STGenericModel();

            model.Materials = new List <STGenericMaterial>();
            model.Objects   = Renderer.Meshes;

            DAE.Export(fileName, settings, model, new List <STGenericTexture>(), new STSkeleton());
        }
Esempio n. 5
0
        public void ExportModel(string fileName, DAE.ExportSettings settings)
        {
            var model = new STGenericModel();

            model.Materials = Materials;
            model.Objects   = Shapes;

            DAE.Export(fileName, settings, model, BcresParent.GetTextures(), Skeleton.Renderable);
        }
Esempio n. 6
0
        public void ExportModel(string fileName, DAE.ExportSettings settings)
        {
            List <STGenericMaterial> Materials = new List <STGenericMaterial>();
            //  foreach (var msh in DataDictionary.Renderer.Meshes)
            //    Materials.Add(msh.GetMaterial());

            var model = new STGenericModel();

            model.Materials = Materials;
            model.Objects   = RenderedMeshes;

            DAE.Export(fileName, settings, model, new List <STGenericTexture>(), new STSkeleton());
        }
Esempio n. 7
0
        public void ExportModel(IExportableModel exportableModel, string fileName, DAE.ExportSettings settings)
        {
            var model = new STGenericModel();

            model.Materials = exportableModel.ExportableMaterials;
            model.Objects   = exportableModel.ExportableMeshes;
            var textures = new List <STGenericTexture>();

            foreach (var tex in exportableModel.ExportableTextures)
            {
                textures.Add(tex);
            }

            DAE.Export(fileName, settings, model, textures, exportableModel.ExportableSkeleton);
        }
Esempio n. 8
0
        public void ExportModel(string fileName, DAE.ExportSettings settings)
        {
            List <STGenericMaterial> Materials = new List <STGenericMaterial>();

            foreach (STGenericMaterial mat in Nodes[0].Nodes)
            {
                Materials.Add(mat);
            }

            var model = new STGenericModel();

            model.Materials = Materials;
            model.Objects   = ((GenericModelRenderer)DrawableContainer.Drawables[1]).Meshes;

            DAE.Export(fileName, settings, model, new List <STGenericTexture>(), ((STSkeleton)DrawableContainer.Drawables[0]));
        }
Esempio n. 9
0
        public ColladaWriter(string fileName, DAE.ExportSettings settings)
        {
            Settings = settings;
            Version  = settings.FileVersion;
            Writer   = new XmlTextWriter(fileName, Encoding.UTF8)
            {
                Formatting  = Formatting.Indented,
                Indentation = 2,
            };

            System.Globalization.CultureInfo customCulture = (System.Globalization.CultureInfo)System.Threading.Thread.CurrentThread.CurrentCulture.Clone();
            customCulture.NumberFormat.NumberDecimalSeparator = ".";

            System.Threading.Thread.CurrentThread.CurrentCulture = customCulture;

            WriteDAEHeader();
        }
Esempio n. 10
0
        public void ExportModel(string fileName, DAE.ExportSettings settings)
        {
            List <STGenericMaterial> Materials = new List <STGenericMaterial>();

            foreach (STGenericObject mesh in RenderedMeshes)
            {
                if (mesh.GetMaterial() != null)
                {
                    Materials.Add(mesh.GetMaterial());
                }
            }

            var model = new STGenericModel();

            model.Materials = Materials;
            model.Objects   = RenderedMeshes;

            DAE.Export(fileName, settings, model, new List <STGenericTexture>());
        }
Esempio n. 11
0
        public void ExportModel(string fileName, DAE.ExportSettings settings)
        {
            var model = new STGenericModel();

            model.Materials = Model.GenericMaterials;
            model.Objects   = Model.GenericMeshes;
            var textures = new List <STGenericTexture>();

            foreach (var bntx in PluginRuntime.bntxContainers)
            {
                foreach (var tex in bntx.Textures.Values)
                {
                    if (Model.Textures.Contains(tex.Text))
                    {
                        textures.Add(tex);
                    }
                }
            }

            DAE.Export(fileName, settings, model, textures, Model.Skeleton);
        }