Project Organization
by Shyam "Doggan" Guthikonda · in Torque Game Engine · 05/19/2006 (7:39 pm) · 2 replies
I'm 'relatively' new to Torque. I've worked through most of the tutorials and books, and have done a few small things with the engine. I have recently started the implementation phase of my 'real' project.
I start with the FPS demo as a base application to build on. I have a list of most of the features I need to implement. One, for example, is a targeting system. I used the available resource as a guide, then I tweak and add from there to get exactly what I want.
My problem is organization. Just for a simple targeting system, with the available resource as a guide, I find myself editing 5-6 different C++ files, and 4-5 different TS files - adding functions, memeber variables, exposing methods to the Console, etc.
My entire project (C++ code and TS code) is managed in a subversion repository. If I keep each commit very specific, this will ease the problem, as I can always look back at the log and diffs to see what new feature was added, and the accompanying changes in the code.
But is there a better way to do it, or a way to complement subversion control? How do you all keep track of this all? Is there perhaps a special commenting system or something? // Begin targeting code. // End targeting code. blocks don't seem very efficient.
I have worked on large projects before, but I either was involved in the entire process, or I was involved in the application building on top of the engine. With this, it feels as if I am actively editing the engine, not building on top of it.
Thanks for any insight ;)
I start with the FPS demo as a base application to build on. I have a list of most of the features I need to implement. One, for example, is a targeting system. I used the available resource as a guide, then I tweak and add from there to get exactly what I want.
My problem is organization. Just for a simple targeting system, with the available resource as a guide, I find myself editing 5-6 different C++ files, and 4-5 different TS files - adding functions, memeber variables, exposing methods to the Console, etc.
My entire project (C++ code and TS code) is managed in a subversion repository. If I keep each commit very specific, this will ease the problem, as I can always look back at the log and diffs to see what new feature was added, and the accompanying changes in the code.
But is there a better way to do it, or a way to complement subversion control? How do you all keep track of this all? Is there perhaps a special commenting system or something? // Begin targeting code. // End targeting code. blocks don't seem very efficient.
I have worked on large projects before, but I either was involved in the entire process, or I was involved in the application building on top of the engine. With this, it feels as if I am actively editing the engine, not building on top of it.
Thanks for any insight ;)
#2
05/21/2006 (12:15 pm)
Finally, if you are placing inline commetns for documentation purposes, I suggest you use the dOxygen formatting guidelines--core tech is documented in this manner, and dOxygen can parse your source files and create nice, hyperlinked html files if you use their formatting guidelines.
Associate Tom Spilman
Sickhead Games
My only suggestion is to use vendor branches in SVN. This makes it much easier to merge updates to Torque without loosing your changes. It takes a few tries to get used to it, but once you know how to do a difference merge of your vendor branch your golden. Now adding some // BEGIN/END GAME SPECIFIC CHANGE blocks won't hurt and make make your modifications even clearer in a merge.
Oh... and get Beyond Compare. It really makes merging stuff much easier.