quakeforge/tools/Forge/Bundles/MapEdit
Bill Currie ea541b325d Set the map parser scripts to not lex single chars.
qbsp treats {foo as one token, not two.
2012-09-09 17:23:55 +09:00
..
MapEdit.gorm Support resizing the window. 2011-04-10 14:34:34 +09:00
CameraView.h Catch resizes in the camera view. 2011-04-16 18:58:05 +09:00
CameraView.m Catch resizes in the camera view. 2011-04-16 18:58:05 +09:00
Clipper.h tactical whitespace bomb 2010-11-28 15:31:38 +09:00
Clipper.m Cache needed fonts. 2011-04-16 12:17:23 +09:00
Dict.h A bunch more NSString and NSFileManager usage. 2010-12-26 22:33:04 +09:00
Dict.m A bunch more NSString and NSFileManager usage. 2010-12-26 22:33:04 +09:00
Entity.h Use a hash table for epair lookup. 2011-04-09 14:47:36 +09:00
Entity.m Use a hash table for finding entities. 2011-04-09 18:32:29 +09:00
EntityClass.h Use NS* classes for QUAKED directory scanning. 2010-12-26 20:45:01 +09:00
EntityClass.m Fix a buffer error. 2011-04-16 13:05:28 +09:00
GNUmakefile Use QF's property lists for the project file. 2010-11-28 15:31:38 +09:00
GNUmakefile.bundle find $GNUSTEP_MAKEFILES 2010-11-28 15:31:38 +09:00
GNUmakefile.find-makefiles find $GNUSTEP_MAKEFILES 2010-11-28 15:31:38 +09:00
GNUmakefile.preamble signed/unsigned and some const-correctness 2010-11-28 15:31:37 +09:00
help.txt audit the usage of "only" 2010-01-13 06:42:26 +00:00
InspectorControl.h tactical whitespace bomb 2010-11-28 15:31:38 +09:00
InspectorControl.m Do a bit of comment cleanup. 2010-11-28 15:31:40 +09:00
jrbase1.map my WIP on porting QuakeEd to GNUstep/QuakeForge 2003-03-18 19:48:24 +00:00
KeypairView.h Cache needed fonts. 2011-04-16 12:17:23 +09:00
KeypairView.m Cache needed fonts. 2011-04-16 12:17:23 +09:00
Map.h Use a hash table for finding entities. 2011-04-09 18:32:29 +09:00
Map.m Set the map parser scripts to not lex single chars. 2012-09-09 17:23:55 +09:00
PopScrollView.h tactical whitespace bomb 2010-11-28 15:31:38 +09:00
PopScrollView.m Add some view opacity. 2010-11-28 15:31:40 +09:00
Preferences.h Even more conversions to NSString 2010-11-28 15:31:39 +09:00
Preferences.m Use NSFileManager methods instead of access(). 2010-12-26 21:07:55 +09:00
Project.h A bunch more NSString and NSFileManager usage. 2010-12-26 22:33:04 +09:00
Project.m A bunch more NSString and NSFileManager usage. 2010-12-26 22:33:04 +09:00
quake.qpr Use QF's property lists for the project file. 2010-11-28 15:31:38 +09:00
QuakeEd.gmodel audit the usage of "only" 2010-01-13 06:42:26 +00:00
QuakeEd.h Do a lot of conversions to NSString. 2010-11-28 15:31:38 +09:00
QuakeEd.m More cString cleanups. 2010-12-28 07:42:08 +09:00
QuakeEd_main.m tactical whitespace bomb 2010-11-28 15:31:38 +09:00
readme.txt my WIP on porting QuakeEd to GNUstep/QuakeForge 2003-03-18 19:48:24 +00:00
render.h tactical whitespace bomb 2010-11-28 15:31:38 +09:00
render.m Catch resizes in the camera view. 2011-04-16 18:58:05 +09:00
SetBrush.h Allow up to 64 faces on a brush. 2011-03-29 12:46:49 +09:00
SetBrush.m Use a hash table for finding entities. 2011-04-09 18:32:29 +09:00
Storage.h tactical whitespace bomb 2010-11-28 15:31:38 +09:00
Storage.m tactical whitespace bomb 2010-11-28 15:31:38 +09:00
TexturePalette.h tactical whitespace bomb 2010-11-28 15:31:38 +09:00
TexturePalette.m Do a bit of comment cleanup. 2010-11-28 15:31:40 +09:00
TextureView.h Cache needed fonts. 2011-04-16 12:17:23 +09:00
TextureView.m Cache needed fonts. 2011-04-16 12:17:23 +09:00
THING+NSArray.m Get map loading sort-of working. 2010-11-28 15:31:34 +09:00
Things.h tactical whitespace bomb 2010-11-28 15:31:38 +09:00
Things.m Use NS* classes for QUAKED directory scanning. 2010-12-26 20:45:01 +09:00
XYView.h Cache needed fonts. 2011-04-16 12:17:23 +09:00
XYView.m Catch resizes in the camera view. 2011-04-16 18:58:05 +09:00
ZScrollView.h tactical whitespace bomb 2010-11-28 15:31:38 +09:00
ZScrollView.m Add some view opacity. 2010-11-28 15:31:40 +09:00
ZView.h Cache needed fonts. 2011-04-16 12:17:23 +09:00
ZView.m Cache needed fonts. 2011-04-16 12:17:23 +09:00

5/18/96

This is a dump of the current source code for QuakeEd, our map editing application.

This does not include everything necessary to build maps.  There are graphics files, prog files, and other utilities needed.  I plan on releasing a full development set of tools after the game ships.  This is just intended to help out anyone working on their own map editor.

This is a NEXTSTEP application, so hardly anyone is going to be able to use the code as is.  This is not an OPENSTEP application.  It doesn't even use the foundation kit, so porting to gnustep or openstep-solaris/mach/nt would not be trivial.

There are lots of mixed case and >8 character filenames, so I'm using unix gnutar (compressed) format.

Because most people won't have access to a NEXTSTEP machine, I took pictures of some of the more important stuff from interface builder:

mainwindow.tiff	: a screenshot of the primary window
inspectors.tiff : a screenshot of the important inspector views
help.txt		: a dump of the (minimal) help inspector's contents.

I included some sample data to help you follow the code:

quake.qpr		: our current project file
jrbase1.map 	: a sample map
triggers.qc		: a sample qc source file that includes some /*QUAKED comments

There will not be any major changes to this code base.  I am eagerly looking forward to writing a brand new editor for windows NT + open GL as soon as Quake ships.

This application was really not a very good fit for NEXTSTEP.  The display postscript model fundamentally doesn't fit very well with what we need here -- if you run in an 8 bit color mode, the line drawing runs at an ok speed, but the texture view goes half the speed it should as it dithers from 24 bit color down to 8 bit.  If you run in 24 bit color mode, you get less screen real estate and significantly slower line drawing as a 3 megabyte XY view is flushed.  Sigh.  If anyone does actually run this on NEXTSTEP be advised that you want a fast machine.  I never had the time to properly optimize QuakeEd.

The texture view rendering code in here is crap.  Anyone coding a new editor is strongly advised to just use an available optimized library, like open GL or direct 3D.


John Carmack
Id Software
johnc@idsoftware.com