   negative-space BSP
  i like csg/bsp map techniques.i like brushes.i like VHE/UnrealEd/etc....I DONT LIKE LEAKS.(fyi, a leak is an evil thing that is sprinked randomly through architecture that is designed with "creativity, style and flair" with no respect for the fact that the BSP compiler really screws up on anything more complex than a couple of rooms joined by a corridor.....)the real definition being a place where the outside of the level can be reached from the inside, causing the visibility phase to screw up and think everything is visible.or something like that.therefore, i reckon that the way to go is to make the whole world solid to start with, and cut bits out of it to make rooms, etc. just like unrealEd. not like VHE.i think this would be good for two reasons.1. no leaks. i cant think of how i could possibly make a leak, even with my crap mapping skills.2. one brush for a box you can stand in, not six.3. its still possible to do additive as well, for details?4. it should (in theory) be simpler to make a BSP tree from a collection of brushes that define the space you can stand in rather than the space you can''t, no?problem.I have written 1..2..3..4..5..6 editors. all testers ran screaming. every time. no clue on writing good editors. the best things turn out is "as bad a UI as UnreadED, but with the power of notepad"....help, please! i have the code for compiling brushes into a level done, but the editor.....oh no. i tried starting tonight and it smelled distinctly of bad-editor-ness..Thanks in advance..Chrisbtw...most of the rest of the engine is done 
  Have you tried using different map editors to see what other people have done? That would seem to be a good starting point. I really like the UI of worldcraft/hammer (for Half-Life), and think it would be a good starting point. Obviously you''ll have to change somethings a little since you''re doing negative space, but really it shouldn''t be too different. There are some things that could be done better (for ex: some features are only accessable by hotkeys, which is IMO a very bad idea). ;  In theory, you could just use something like Worldcraft/Hammer or QuArK... but I appreciate that it would be much more difficult to create the level if you''re not drawing the brushes as negative space.You will probably have to do a fair bit of this subtractive CSG in realtime, btw (or at least, whenever a change is made to the dataset, you''ll need to regenerate it). Otherwise you won''t be able to draw your 3D view. Additive CSG has an advantage there in that the editor can just draw the brushes straight and not care about overlapping polygons and the like. ;  Unless you are aiming at ancient hardware I''d suggest dropping BSPs altogether.You don''t need a perfect visset, you need hardware TnL, you need cache efficient index+vertexbuffered meshes. Octree(ish) structures will serve you better.   -------The problem with common sense is that it is never common. 