예제 #1
0
        // export all morphs as fbx
        private void aSFbxToolStripMenuItem_Click(object sender, EventArgs e)
        {
            PccTreeNode pccNode = LeftTree.SelectedNode as PccTreeNode;

            if (pccNode != null)
            {
                FolderBrowserDialog fbd = new FolderBrowserDialog();
                fbd.Description = "Select folder where to save the morphs";
                if (fbd.ShowDialog() == DialogResult.OK)
                {
                    Cursor.Current = Cursors.WaitCursor;
                    var exporter         = new MEMeshMorphExporter.Exporters.MeshExporter(pccNode.pcc);
                    int morphNotExported = exporter.ExportMorphsToFbx(fbd.SelectedPath);
                    Cursor.Current = Cursors.Default;
                    if (morphNotExported == 0)
                    {
                        MessageBox.Show("Done.");
                    }
                    else
                    {
                        MessageBox.Show("Done, but " + morphNotExported + " could not be exported because basemesh was not found.");
                    }
                }
            }
        }
예제 #2
0
        private void exportMorphToolStripMenuItem_Click(object sender, EventArgs e)
        {
            MorphTreeNode morphNode = LeftTree.SelectedNode as MorphTreeNode;

            if (morphNode != null && morphNode.morph != null && morphNode.morph.IsExportable)
            {
                var pccNode = morphNode.GetParentNode();

                SaveFileDialog sfd = new SaveFileDialog();
                sfd.Title    = "Save morph as...";
                sfd.Filter   = "*.fbx|.fbx|*.json|*.json";
                sfd.FileName = morphNode.Text + ".fbx";
                if (sfd.ShowDialog() == DialogResult.OK)
                {
                    this.Cursor = Cursors.WaitCursor;
                    string ext = System.IO.Path.GetExtension(sfd.FileName);
                    if (ext.EndsWith("fbx"))
                    {
                        var exporter = new MEMeshMorphExporter.Exporters.MeshExporter(pccNode.pcc);
                        exporter.ExportMeshWithMorph(morphNode.morph, 0, sfd.FileName);
                    }
                    else if (ext.EndsWith("json"))
                    {
                        morphNode.morph.ExportToJson(sfd.FileName);
                    }
                    this.Cursor = Cursors.Default;
                    MessageBox.Show("Done.");
                }
            }
            else
            {
                MessageBox.Show("Sorry, this morph cannot be exported: base mesh was not found.");
            }
        }
예제 #3
0
        // Export all morphs as json
        private void aSJsonToolStripMenuItem_Click(object sender, EventArgs e)
        {
            PccTreeNode pccNode = LeftTree.SelectedNode as PccTreeNode;

            if (pccNode != null)
            {
                FolderBrowserDialog fbd = new FolderBrowserDialog();
                fbd.Description = "Select folder where to save the morphs";
                if (fbd.ShowDialog() == DialogResult.OK)
                {
                    this.Cursor = Cursors.WaitCursor;
                    var exporter = new MEMeshMorphExporter.Exporters.MeshExporter(pccNode.pcc);
                    exporter.ExportMorphsToJson(fbd.SelectedPath);
                    this.Cursor = Cursors.Default;
                    MessageBox.Show("Done.");
                }
            }
        }
예제 #4
0
        private void exportMeshToolStripMenuItem_Click(object sender, EventArgs e)
        {
            MeshTreeNode meshNode = LeftTree.SelectedNode as MeshTreeNode;

            if (meshNode != null)
            {
                var            pccNode  = meshNode.GetParentNode();
                var            exporter = new MEMeshMorphExporter.Exporters.MeshExporter(pccNode.pcc);
                SaveFileDialog sfd      = new SaveFileDialog();
                sfd.Title    = "Save mesh as fbx...";
                sfd.Filter   = "*.fbx|.fbx";
                sfd.FileName = meshNode.Text + ".fbx";
                if (sfd.ShowDialog() == DialogResult.OK)
                {
                    this.Cursor = Cursors.WaitCursor;
                    exporter.ExportSkeletalMeshToFbx(meshNode.mesh, meshNode.Text, sfd.FileName);
                    this.Cursor = Cursors.Default;
                    MessageBox.Show("Done.");
                }
            }
        }