Beispiel #1
0
        private void buttonClear_Click(object sender, EventArgs e)
        {
            foreach (RenderWareModelFile r in ShadowCollisionBSPStream)
            {
                foreach (SharpMesh mesh in r.meshList)
                {
                    mesh.Dispose();
                }
            }

            ShadowCollisionBSPStream.Clear();
            listBoxLevelModels.Items.Clear();
        }
Beispiel #2
0
        private void buttonRemove_Click(object sender, EventArgs e)
        {
            for (int i = 0; i < BSPStream.Count; i++)
            {
                if (listBoxLevelModels.SelectedIndices.Contains(i))
                {
                    foreach (SharpMesh mesh in ShadowCollisionBSPStream[i].meshList)
                    {
                        mesh.Dispose();
                    }

                    ShadowCollisionBSPStream.RemoveAt(i);
                    listBoxLevelModels.Items.RemoveAt(i);
                    i -= 1;
                }
            }
            InitBSPList();
        }
Beispiel #3
0
        private void buttonImport_Click(object sender, EventArgs e)
        {
            OpenFileDialog a = new OpenFileDialog()
            {
                Filter      = "All supported types|*.obj;*.bsp|OBJ Files|*.obj|BSP Files|*.bsp|All files|*.*",
                Multiselect = true
            };

            if (a.ShowDialog() == DialogResult.OK)
            {
                foreach (string i in a.FileNames)
                {
                    ReadFileMethods.isCollision = true;

                    RenderWareModelFile file = new RenderWareModelFile(Path.GetFileNameWithoutExtension(i) + ".BSP");
                    file.isShadowCollision = true;

                    try
                    {
                        file.ChunkNumber = Convert.ToByte(Path.GetFileNameWithoutExtension(i).Split('_').Last());
                    }
                    catch { file.ChunkNumber = -1; };

                    if (Path.GetExtension(i).ToLower() == ".obj")
                    {
                        file.SetForRendering(CreateShadowCollisionBSPFile(ReadOBJFile(i, true)), null);
                    }
                    else
                    {
                        file.SetForRendering(ReadFileMethods.ReadRenderWareFile(i), File.ReadAllBytes(i));
                    }

                    ShadowCollisionBSPStream.Add(file);
                    listBoxLevelModels.Items.Add(file.fileName);

                    ReadFileMethods.isCollision = false;
                }

                buttonExport.Enabled = true;
            }
        }