Progress
Decided to move on from the loading/saving issue and push ahead on editing features. Once I can create levels from scratch and write them out to MAP files for compilation, I’ll be able to create test cases and custom maps easily. This will lead to easier debugging in the future so that’s how I’m selling it to myself.
I added the ability to rotate brushes and entities this morning. I’m trying to orient the editor towards having certain key modifiers always be related to something specific. For example, the CMD key always allows you to add to your current selection (like it does in Finder). The SHIFT key does things related to brush faces. The CONTROL key is related to manipulation of entities/brushes (dragging and rotating them for example). The OPTION key modifies whatever is going on (for example, when dragging, this key will allow you to drag vertically in the 3D view rather than just side to side).
I also added some menu items for loading new WADs into the editor. You have the choice to just load a new WAD and replace your currently loaded texture set or you can append a WAD which will add the new textures into the currently existing set. I want to eventually have a save menu item which will let you write out your current texture set as a new WAD. I can read WADs so writing them should be doable.
November 30th, 2007 at 3:24 am
Talking about debugging, have you ever thought about using test driven development or at least unit testing for the editor? I have worked on two editors myself (Qoole and GtkRadiant) and since I wasn’t aware of TDD or unit testing at the time I didn’t get to do that, but I feel it would be extremely valuable to have a whole editor done with TDD. For example on Qoole there are some horrible math issues which I’m sure there wouldn’t be there if I had done at least some unit testing. In my current research engine I have around 300 unit tests with an average of 3 checks per test, it’s has been a while since I last had a bug on code that is tested, and in the few cases there was a bug I added another test and now I’m sure I won’t re-introduce the same bug again in a later version. I don’t work with Objective-C myself but if you want to try some unit testing you may want to check out http://developer.apple.com/tools/unittest.html
November 30th, 2007 at 5:35 am
I’ve been wanting to look into unit testing for awhile now but have never made the time. Thanks for the link, I’ll check it out!
December 17th, 2007 at 5:58 pm
hi saw you have the same name is me
how weird
December 17th, 2007 at 7:10 pm
Perhaps we’re arch enemies destined to fight to the death over some perceived insult to my mother. It’s perfectly plausible.