OpenSource C++ map editor
by Brandon Maness · in Torque Game Engine · 09/26/2005 (11:15 am) · 33 replies
Although the map editor market is being quickly filled in with software like 3d World Studio, and the upcoming GG Torque Constructor, I went on a search to locate an existing open source c++ project that could be used as a framework to offer some type of non-quArk free .dif alternative for Torque.
Honestly, there was very little open source map editor content available that I could find, but I did run across the old Genesis3d project map editor. It has been worked on a little since 1999, but does provide a basic framework to start from.
It didn't compile out of the box, as it had a few errors and type casting issues, as well as not having all the dependencies included with it. After 30 minutes of surfing for the missing dependencies and compiling; everything is working now, so I zipped the entire working VC7 project up and posted it at the link below.
I doubt I'll have the free time to turn it into anything worthwhile, but it is a fairly solid framework from which someone else could build from. Seeing as the code base and dependencies were getting dated, I thought mirroring a working project might arouse some interest, and keep it available to the public.
The compressed project is about 6 meg, and has everything you need.
torque.smdlabs.com/content/GEditPro.rar

B--
EDIT:added screenshot
Honestly, there was very little open source map editor content available that I could find, but I did run across the old Genesis3d project map editor. It has been worked on a little since 1999, but does provide a basic framework to start from.
It didn't compile out of the box, as it had a few errors and type casting issues, as well as not having all the dependencies included with it. After 30 minutes of surfing for the missing dependencies and compiling; everything is working now, so I zipped the entire working VC7 project up and posted it at the link below.
I doubt I'll have the free time to turn it into anything worthwhile, but it is a fairly solid framework from which someone else could build from. Seeing as the code base and dependencies were getting dated, I thought mirroring a working project might arouse some interest, and keep it available to the public.
The compressed project is about 6 meg, and has everything you need.
torque.smdlabs.com/content/GEditPro.rar

B--
EDIT:added screenshot
About the author
#2
Thanks for the additional info Ian
B--
09/26/2005 (11:40 am)
I was hoping some more people would chime in with additional open source projects. I'll have to dload it and check it out.Thanks for the additional info Ian
B--
#3
There are also lesser known map editors such as Quest and Qoole, that are open source.
Personally though, i'd love to see a <3d format>2dif converter :)
09/26/2005 (11:55 am)
Don't forget you can use Q3Radiant as part of the GPL'd Quake 3 source release.There are also lesser known map editors such as Quest and Qoole, that are open source.
Personally though, i'd love to see a <3d format>2dif converter :)
#4
09/26/2005 (6:12 pm)
James is correct. Just like the Qoole source, you'll need to strip the MFC bindings from Radiant if you want to make it cross-platform.
#5
@Brandon, if you ever do get around to it, make the creating/editing of brushes easier. That should be #1 IMO.
09/26/2005 (7:27 pm)
@Converting: Which, is easy/hard. Converting to wxWidgets saves alot of time, the calls are similer.@Brandon, if you ever do get around to it, make the creating/editing of brushes easier. That should be #1 IMO.
#6
As time permits my first goal is to get the export process via map2dif streamlined and working. After that workflow would be the primary focus; ie: creating/editing brushes. I'm not looking for much, but it would be nice to get some other free open source map editor solutions working for Torque.
I've been in the 'Modify and enhance' an existing application mood lately, and although I know I don't have the time to complete any major project, this seems like something to have on the back burner to play with every now and again.
B--
09/26/2005 (8:12 pm)
@Chris: I agree, I've been looking over the source of GEditPro and Tread3d. I like some of the features in Tread3d, but GEdit appears to be a smaller and simpler project. I wasn't looking for a feature rich open source editor, just a framework to build from. I'm leaning towards GEdit right now.As time permits my first goal is to get the export process via map2dif streamlined and working. After that workflow would be the primary focus; ie: creating/editing brushes. I'm not looking for much, but it would be nice to get some other free open source map editor solutions working for Torque.
I've been in the 'Modify and enhance' an existing application mood lately, and although I know I don't have the time to complete any major project, this seems like something to have on the back burner to play with every now and again.
B--
#7
IMO: Gedit would be awsome if map2dif integrated with it (I prefer map2dif plus, but i'm not gonna be picky). Then working on workflow. You could get help here if you wanted too BTW, i'm sure some guys would wanna help. We had 3 guys wanting to make one a while back.
09/26/2005 (9:48 pm)
@Brandon: I've worked with Tread 3D Alot. I donno about GEdit, but Tread uses OLD mfc classes, and those are evil to deal with even when converting. IMO: Gedit would be awsome if map2dif integrated with it (I prefer map2dif plus, but i'm not gonna be picky). Then working on workflow. You could get help here if you wanted too BTW, i'm sure some guys would wanna help. We had 3 guys wanting to make one a while back.
#8
This really isn't bad news, as I've been looking over the interiorIO.cc file from TGE, and the dif format doesn't look too complicated; it has the read and write routines clearly documented. I may try and just have Gedit feed it's map data directly from memory to the existing interiorIO routines via TorqueToolLib. I'm sure there will be some internal data issues, but if I can't get it to go from Gedit memory to .dif, then it's not worth spending time doing anything else to it.
If the export works, it would be nice to get some community involvement, but honestly my experiences with community 'programming' projects conjure up memories of a bad one sided marriage; lots of desires and good intentions resulting in little effort and failure. LOL But you never know, there are the Sam Bacsa's out there doing the work of ten men, and able to leap complex IDE routines in a single bound! :)
I'm sure this is a nasty can of worms to tackle, but I'll start with a simple single brush export and let you know how bad it tastes after I chew on it awhile.
B--
09/26/2005 (10:27 pm)
@Chris: After looking over the Gedit export routines it appears that the .map format it exports is not 'standard', so the map2dif option is a no go.This really isn't bad news, as I've been looking over the interiorIO.cc file from TGE, and the dif format doesn't look too complicated; it has the read and write routines clearly documented. I may try and just have Gedit feed it's map data directly from memory to the existing interiorIO routines via TorqueToolLib. I'm sure there will be some internal data issues, but if I can't get it to go from Gedit memory to .dif, then it's not worth spending time doing anything else to it.
If the export works, it would be nice to get some community involvement, but honestly my experiences with community 'programming' projects conjure up memories of a bad one sided marriage; lots of desires and good intentions resulting in little effort and failure. LOL But you never know, there are the Sam Bacsa's out there doing the work of ten men, and able to leap complex IDE routines in a single bound! :)
I'm sure this is a nasty can of worms to tackle, but I'll start with a simple single brush export and let you know how bad it tastes after I chew on it awhile.
B--
#9
http://www.qeradiant.com/
One thing about map editors is that they nearly all still seem to use a now rather outdated albeit familiar 3-view paradigm for development. I'm sure nowadays there's much more space for a WYSIWYG in a 3D view editor.
09/27/2005 (2:07 am)
David, isn't GTKRadiant already a cross platform open source version of Q3Radiant?http://www.qeradiant.com/
One thing about map editors is that they nearly all still seem to use a now rather outdated albeit familiar 3-view paradigm for development. I'm sure nowadays there's much more space for a WYSIWYG in a 3D view editor.
#11
09/27/2005 (3:44 am)
Which is the best map editor for Torque? As in easy to use and efficient.
#12
Admittedly, I haven't spent much time with it, but with the source code of Gedit, map2dif plus, and TGE(interiorIO) I should be able to come up with some type of export solution.. :)
BTW: After looking over both versions of map2dif I was impressed with the work you guys did cleaning up map2dif plus.
B--
09/27/2005 (6:30 am)
@Matt: I compiled and ran the version from TGE1.4 on the CVS.. The plus version doesn't throw an error, but doesn't do anything either. The older version attempts to chew on it, but throws an error. Admittedly, I haven't spent much time with it, but with the source code of Gedit, map2dif plus, and TGE(interiorIO) I should be able to come up with some type of export solution.. :)
BTW: After looking over both versions of map2dif I was impressed with the work you guys did cleaning up map2dif plus.
B--
#13
B--
09/27/2005 (10:04 pm)
@Matt: Gedit had some quake map export routines in the source, so most of that is working, the strange thing is the map2dif. The old version exports the map and Torque chews it up without any problems. The new CVS map2dif plus version has crashed on the lightmaps section of export. When I get some time I'll dig into it a little deeper.B--
#14
09/28/2005 (2:27 am)
Good find, Brandon!
#15
your like the dalai lama of torque or something... "spread the love"
good luck..
09/28/2005 (2:37 am)
Good on you brandon..your like the dalai lama of torque or something... "spread the love"
good luck..
#16
GEdit had limitations when creating/modifying large or complex maps, other than that it was a breeze to work with and modify.
You may want to query the 'Reality Factory' guys, as they did some alterations to help it address some level building issues.
09/28/2005 (4:44 am)
Used to work/play with the Genesis engine, before the split...way back.GEdit had limitations when creating/modifying large or complex maps, other than that it was a breeze to work with and modify.
You may want to query the 'Reality Factory' guys, as they did some alterations to help it address some level building issues.
#17
The good news is that it can export to .map and .dif via map2dif. I'll spend to next couple of evenings streamlining the export process, and then focus a little attention on the rendering. It looks promising, but after playing with it a little more, there is a ton of work to be done on the map creation/edit process.
B--
09/28/2005 (6:04 am)
@Dee: Yeah, I remember when Wild Tangent came onto the scene. You are right about the editor. It's not very robust at this point, but it is a rather small program (which makes it easy to modify), and the underlying framework driving memory management, etc. is fairly solid, and was coded in a way that makes it easy to update. I think the large map issues may be the attributed to the renderer, but I'll have to play with it some more to confirm that suspicion.The good news is that it can export to .map and .dif via map2dif. I'll spend to next couple of evenings streamlining the export process, and then focus a little attention on the rendering. It looks promising, but after playing with it a little more, there is a ton of work to be done on the map creation/edit process.
B--
#18
Nope. GTK Radiant is under another license completely. It is open sourced for non-commercial work but costs around 5k (last estimate) to license for commercial applications. Sadly.
09/28/2005 (7:50 am)
@Ian "Xest" WinterNope. GTK Radiant is under another license completely. It is open sourced for non-commercial work but costs around 5k (last estimate) to license for commercial applications. Sadly.
#19
09/28/2005 (1:50 pm)
@Brandon, maybe ya should make a SOurceForce page, with some PHPBB FOrums, with a section for code snippets or something. That way anyone can lend a hand, while you work on the core stuff via CVS. Then you can choose which code snippets to put in and the user can pick what extra snippets he wants in. Aswell as have everything organized
#20

torque.smdlabs.com/media/mapEditor/mapEditor.htm
The first vBlog covers project overview and direction.
B--
09/28/2005 (6:00 pm)
Good idea Chris.. Project page complete! For anyone interested just follow the link below.
torque.smdlabs.com/media/mapEditor/mapEditor.htm
The first vBlog covers project overview and direction.
B--
Torque 3D Owner Ian Winter
http://www.planetquake.com/tread/
I stumbled across it years ago, and a few months back was browsing through my bookmarks to find it had been open sourced. It's a pretty decent editor with some nice features such as plugin support, it has a lot of potential if given some TLC by a caring programmer ;)