irrShowMesh
irrShowMesh
lug here. I've been working on a mesh viewer for irrlicht (yes, I know there's like a gazillion different one).
But I'm focusing this one more on ease of use. The meshviewer example that comes with irrlicht annoys me. So, I'm rollin' my own version.
pic:
features:
- based on meshviewer example
- uses windows forms (vc++ .net) for GUI (requires .net 2.0 runtime)
- uses irrlicht .net (duh!)
- drag-and-drop mesh load
- coded in managed c++
- uses multiple threads (one for GUI and one for irrlicht)
- planned x64 (64-bit) native version as well as 32-bit
- planned to add OpenMP for multi-core support
Okay, it's an excuse to try out window forms/x64/multi-core programming...are you happy now?
More pics (sourceforge was down at the time):
But I'm focusing this one more on ease of use. The meshviewer example that comes with irrlicht annoys me. So, I'm rollin' my own version.
pic:
features:
- based on meshviewer example
- uses windows forms (vc++ .net) for GUI (requires .net 2.0 runtime)
- uses irrlicht .net (duh!)
- drag-and-drop mesh load
- coded in managed c++
- uses multiple threads (one for GUI and one for irrlicht)
- planned x64 (64-bit) native version as well as 32-bit
- planned to add OpenMP for multi-core support
Okay, it's an excuse to try out window forms/x64/multi-core programming...are you happy now?
More pics (sourceforge was down at the time):
Last edited by lug on Mon Oct 09, 2006 9:26 pm, edited 1 time in total.
-
- Posts: 275
- Joined: Fri May 12, 2006 6:37 pm
- Location: Germany
new video of irrShowMesh in action!
flash version (too small for my taste):
or download full version from rapidshare (6193 KB):
http://rapidshare.de/files/36414222/irr ... o.wmv.html
flash version (too small for my taste):
or download full version from rapidshare (6193 KB):
http://rapidshare.de/files/36414222/irr ... o.wmv.html
Added sleep to irrlicht thread to allow user to adjust the performance of the irrlicht thread. It defaults to 65 ms. That seems to be the optimal number. Without sleep, the irrlicht thread would eat up 20-40% of the cpu time. When set to 65 ms, it only took up 2-4 % of cpu time with acceptable slowdown.
Update:
I've just uploaded the x64 version for everyone to download and play with (it uses 64-bit irrlicht and 64-bit irrlicht .NET dlls):
http://www.megaupload.com/?d=Z61T3V27
Nothing new since last post, I'm in a 64-bit craze at the moment so I just had to update irrShowMesh to x64 version.
Update 2:
Okay, looks like irrShowMesh is going to be the guinea pig to test out irrPreSettings. I have it setup to run irrPreSettings first. Once the user exits irrPreSettings, irrShowMesh will run and read in the xml file that irrPreSettings wrote.
irrShowMesh uses this to setup it's irrlicht device. Although, it doesn't use all of the items in the irrPreSetting xml file, it's useful nonetheless.
irrShowMesh has it's own configuration xml file for everything else like mesh settings (wireframe, initial position, etc.) that it saves so that the next time you run irrShowMesh it remembers the previous settings.
I couldn't figure out how to use the irrlicht's IXMLReader/Writer under irrlicht .NET. So, I used MS's xml api. It's quite similar to irrlicht's xml api in useage.
Anyway, I'll see if I can get a version ready for you guys to try out with the above mentioned additions.
Update 3:
Download here (still x64 version):
http://www.megaupload.com/?d=XHPW27A0
Code: Select all
[System::Runtime::InteropServices::DllImport("kernel32.dll")]
extern "C" void Sleep(long dwMilliseconds);
...
while(device->Run() && !bgwIrrlichtThread->CancellationPending)
{
...
// sleep (win32 unmanaged call)
Sleep(Convert::ToInt64(nudSleep->Text));
}
I've just uploaded the x64 version for everyone to download and play with (it uses 64-bit irrlicht and 64-bit irrlicht .NET dlls):
http://www.megaupload.com/?d=Z61T3V27
Nothing new since last post, I'm in a 64-bit craze at the moment so I just had to update irrShowMesh to x64 version.
Update 2:
Okay, looks like irrShowMesh is going to be the guinea pig to test out irrPreSettings. I have it setup to run irrPreSettings first. Once the user exits irrPreSettings, irrShowMesh will run and read in the xml file that irrPreSettings wrote.
irrShowMesh uses this to setup it's irrlicht device. Although, it doesn't use all of the items in the irrPreSetting xml file, it's useful nonetheless.
irrShowMesh has it's own configuration xml file for everything else like mesh settings (wireframe, initial position, etc.) that it saves so that the next time you run irrShowMesh it remembers the previous settings.
I couldn't figure out how to use the irrlicht's IXMLReader/Writer under irrlicht .NET. So, I used MS's xml api. It's quite similar to irrlicht's xml api in useage.
Anyway, I'll see if I can get a version ready for you guys to try out with the above mentioned additions.
Update 3:
Download here (still x64 version):
http://www.megaupload.com/?d=XHPW27A0
-
- Posts: 1
- Joined: Sat Feb 24, 2007 10:10 pm
-
- Posts: 269
- Joined: Tue Oct 31, 2006 3:24 pm
- Contact:
Well if you're app works on Windows then you can use the Windows API to open up a Windows file dialog pretty easily, Irrlicht doesn't stop that at all.
Good little project lug, doesn't matter if there's loads of other similar projects out there, if they don't do what you want then you either need to edit theirs or make your own!
Good little project lug, doesn't matter if there's loads of other similar projects out there, if they don't do what you want then you either need to edit theirs or make your own!
If it is written with irrlicht.net does it work with mono too? Or wait you need Irrlicht CP for that...
My Blog: http://www.freakybytes.org
Can you handle meshes that have more than one material?
Irrlicht Demos: http://irrlicht.sourceforge.net/forum/viewtopic.php?f=6&t=45781