private void OpenFile(object sender, EventArgs e) { if (openFileDialog1.ShowDialog() == DialogResult.OK) { // CleanUp(); checkedListBox1.Items.Clear(); models.Clear(); Scene.Instance.RenderObjects.Clear(); ResourcePackageStream resourcePackageStream = new ResourcePackageStream(openFileDialog1.FileName); Text = resourcePackageStream.fileName; string[] files = Directory.GetFiles(@"./temp/", "*.obj"); foreach (string path in files) { AssimpModel assimpModel = MeshLoader.ImportMesh(path); string mainFileName = Path.GetFileNameWithoutExtension(openFileDialog1.FileName); string objFileName = Path.GetFileNameWithoutExtension(path); models.Add(string.Format("{0}_{1}", mainFileName, objFileName), assimpModel); Scene.Instance.AddRenderObject(assimpModel); } checkedListBox1.Items.Clear(); foreach (KeyValuePair <string, AssimpModel> pair in models) { checkedListBox1.Items.Add(pair.Key); } for (int i = 0; i < checkedListBox1.Items.Count; i++) { checkedListBox1.SetItemChecked(i, true); } // listBox1.Items.Clear(); string[] images = Directory.GetFiles(@"./temp/", "*.dds"); listBox1.Items.AddRange(images); } }