Game Development Community

dev|Pro Game Development Curriculum

Plan for Ben Garney

by Kyle Carter · 12/18/2004 (12:16 am) · 21 comments

Hi guys... This has been a .plan fraught with toil and perils. I've already tried to write it a few times - a combination of bad website mojo and forgetfulness has done me in each time up till now. This time, though, I'm sticking it in notepad, and keeping it there until I see the dang thing up on the site!

So, what have I been up to since my last .plan? A lot. Looking back, I'm invariably amazed at how much goes on here at GG. I'm beginning to understand what people mean when they say start-ups have youthful vigor. :)

Torque 1.4

I'm hard at work getting 1.4 into shape. Tim Gift and I have been pounding out the necessary technological upgrades for the editor focus in 1.4. I said at IGC that I want Torque to become Photoshop for games - and even with Torque's GUI library and powerful infrastructure, there are some areas that have to grow to fulfill that lofty goal.

Basically, Tim and I are focusing on ways to cheaply upgrade TorqueScript's notion of namespaces. The existing implementation is a bit... er... special. It certainly gets the job done, but for a complex editor application, it's not quite enough. So we're looking at how we can get full inheritance working in script, add support for generic namespacing of objects and variables, and a lot of other goodies. The changes to the language itself should be minimal, mostly adding some C++ style keywords and operators for working with scope and namespaces, and revamping how it deals with namespaces internally. Once we've a working implementation of it, I'll post some examples and describe the specifics in a lot more detail.

Pat Wilson has also been very helpful with 1.4 dev, as he's been working pretty heavily with the code in production work. He's been contributing a lot of bugfixes, small features, and code cleanups. I think the main reason for Torque's power is that it's been used in a LOT of games, under deadlines, on real hardware. Standalone middleware tends to get developed against best case situations, which means it crumples when you put it out in the real world. Torque, on the other hand, has always been right out in front, getting the stuffing beaten out of it... So I'm very happy to have people like Pat using the tech as I develop it, because it means that it's going to get that same acid test.

Which lets me segue nicely into an open offer. If you have a finished Torque product - be it game, visualizer, simulation, or something altogether new - I'd love to review your code. Torque is vast, and invariably, you find small (or major :P) bugs when you do a new thing with it. Usually in the hurry of development, people don't bother to note them down. So what I am trying to do is to build up a library of source code from various Torque products, so that I can review them for those minor fixes.

I'll keep the unique selling points of your game out of the main codebase. If you want to make a resource (or not :), that's your business. I'm after smaller things, like memory leaks or subtly broken implementations, that can benefit everyone in the community. And, since I'm directly involved in determining where Torque goes in coming versions, I'd really like to see how people are using Torque in "real" products, so that I can know where to focus my efforts.

If you have a shipping Torque product and we haven't talked about this, please get in touch with me at beng@garagegames.com.

Back to TGE 1.4 - we're working on refining some existing GUI controls, adding some new ones, cleaning up the GUI infrastructure a bit, and generally making life better in that arena. We're also exploring some solutions to localization and internationalization issues, as well as doing general internal code reviews.

Torque Shader Engine

As we mentioned at IGC, the next milestone for TSE is going to be focused on water and terrain. Which means that I'm finally having to get my terrain polished up and working... and eventually into the public TSE CVS, rather than in my own private repo. :)

There are also some incidental things Brian and I are working on, like enhancing the texture manager. He recently added some support for volume textures, and I foresee compressed texture support in my future. Eventually, we're going to get full support for loading all the features you can find in the common DDS format - cubemaps, volume textures, compressed textures, etc.

Brian's water is also coming along nicely. I'll let him talk about that, though. :)

The new terrain itself is beginning to take final form. I recently got collision working again, which means that I can start working on the revamped terrain editor. I'm still doing a lot of R&D, trying to find the optimal means of both rendering the terrain geometry, and texturing it. It's one of those depressingly involved tasks... but the preliminary results are very encouraging, as you might have seen at IGC. :)

Torque Out Of Box Experience

I've also been working closely with Josh and Jeff on ways to improve the Torque out of box experience. While our tech is great, the path to mastering it is still rocky. We're working on clearing that path.

We're basically focusing on three areas - the first is the art pipeline, the second is docs, and the third is compilation. I don't want to steal any thunder from the full on launches, so I'll be brief here. We're focusing hard on getting the art pipeline a lot more polished - we're trying to touch all the major exporters, including map2dif. Good stuff coming that way. I've been spending time lately working on getting a better solution in place for updating and organizing our documentation - having a sort of "Torque Developer Network," if you will. :) And, we're going to be releasing a cool tool suite in a month or two that's going to make Torque about 500% easier to get compiling and working.

Vague enough for ya? ;)

New Toys, or, Why I Love This Place

Jeff recently bought a complete set of office furniture from a doctor in town who was selling off his old furniture. I think we ended up paying less than a thousand bucks for at least a dozen chairs, quite a few desks, tables, bookshelves... All of a sudden, GGHQ feels a lot less like a slightly dumpy, barren building, and a lot more like a real Workplace, with a capital W. Alex was finally able to replace his unergonomic (but very striking) desk with a plain wooden one that actually has space for his monitors and other paraphenalia. We have chairs for people to sit on. We have places to put our books now. It's amazing!

Various employees have also donated to our new gaming center... We've got an X-Box, a Game Cube, and a pretty bitchin' TV, as well as a full set of controllers and games for 'em. Rumor has it a PS2 will be showing up in not too long. It's definitely nice to be able to blow off some frustrations by laying the smackdown on somebody in DOA3 or SC2. ;)

And, Jay and Jeff gave us a little Christmas surprise at the company Christmas party earlier this week. We all got snazzy GG jackets, like the one all of us at the office have been watching Jay parade around in for the past few months.

I love my job. :)

Conclusion And Farewell

No, I'm not leaving GG. ;) Well, I am, but only until the holidays are over. Yes, it's true - I have a life and friends, as well as some family, and I'm going to be leaving tomorrow morning to go visit 'em. Which is a shame, because I was really getting into my groove on some terrain texturing techniques earlier today...

Then again, maybe it's for the best I take a break. ;)

I'll be back again Officially a few days after New Year's. My next class at UofO starts up the third, and I need to be there for that, so that's the very latest I'll be back at work.

And, one last thing. The next developer newsletter is going to have a poll on what IDE you use to develop in Torque. We're going to be using the results of that poll to help us make some important decisions about what IDEs we'll continue to support in future versions of Torque. Please make sure you're signed up for the dev newsletter so that you get a chance to vote. We want to make sure everyone gets a chance to be heard on this issue!

Well... That's it for me. Merry Christmas, everyone! Hope y'all have a great time!
Page «Previous 1 2
#1
12/18/2004 (12:45 am)
Thanks for the detailed update on the going-ons at GG. It all sounds wonderful.
#2
12/18/2004 (12:46 am)
Ben - I knew you've done more than get your first game shipped... Zap! - the play testing has been grueling. Congratulations by the way. I believe TGE 1.4 and the next milestone of TSE will be as amazing as the previews at IGC.

Glad you like the jacket (mine was a birthday present I got on Nov. 20th - months ago in GG time).
#3
12/18/2004 (2:12 am)
Have a great set of holidays Ben, looking forward to all the neat new stuff--it sounds like you're definitely going the right directions!

I do have one plug: TREE PACK! I know this is way low on your priority list, but it would be an amazing prototyping/pre-production tool for many of us, and I know we've been looking forward to it with almost as much anticipation as we were the RTS-SK!
#4
12/18/2004 (2:32 am)
thanks for the hefty update we all appreciate it.
have a great break!
#5
12/18/2004 (2:50 am)
Pics of the GG jackets?
#6
12/18/2004 (2:57 am)
Theres something about Bens plans that are like a hug from your Mum ... you know everythings going to be alright :)
#7
12/18/2004 (3:10 am)

Have a good Holiday Ben and Jay :)

... hmm that reminds me of icecream
#8
12/18/2004 (5:06 am)
Ben,

I'm interested about you offer to review torqued games.
I will send you an email.

Christophe
#9
12/18/2004 (5:40 am)
GarageGames sure knows how to keep people excited. I can't wait to see all the new improvements and things that GG has planned.

You guys have a Merry Christmas, and enjoy the holidays. The same goes for everyone else in the community.

Take care, guys.

-Jase
#10
12/18/2004 (5:54 am)
Merry Holidays Ben, keep up the good work.
#11
12/18/2004 (6:05 am)
Great work... I can't wait to have a play of 1.4!

Merry Christmas everyone :)
#12
12/18/2004 (10:12 am)
Ben,

Will 1.4 have the Macintosh Altivec improvements included? I added the compiler flags and got a huge boost. You should definitely include those flags when you build for your demo. On my dual power mac the demo is choppy but with the simple compiler options I get about 10 to 15 frames more per second.

Enjoy your holidays. I wish I knew how you had time to do all the things you do and go to school.

This is the resource on the compiler options
http://www.garagegames.com/index.php?sec=mg&mod=resource&page=view&qid=6393
#13
12/18/2004 (10:21 am)
Ben doesn't like writing me back when it requires him to do more work so I'm going to have to give him the smackdown in DOA3 when I get back, but the new stuff going on at GG is infinitely awesome and it just keeps getting more and more awesome every day. GDC this year is going to be awesome, GG will own the floor. :)
#14
12/18/2004 (9:54 pm)
I seem to remember Ben getting most of the smackdowns in DOA3 recently =P
#15
12/19/2004 (9:18 am)
Hey cool, official OO support. I hope my implementation gave you some good ideas.

Now if only I could get back to working with Torque...
#16
12/19/2004 (1:03 pm)
Have a good holiday Ben, talk to you when you get back!
#17
12/19/2004 (8:30 pm)
Yeah, things have really been exciting around here lately (as always)... very cool stuff in the works!

Joe, yes 1.4 will have Mac performance improvements, including Kyle Goodwin's Altivec enhancements and more.
#18
12/22/2004 (5:18 am)
Have a great one ben.

Keep in mind the issue I brought up over the summer....whatever you do to support IDE's and whatever you do to change the language....I'd like to see an IDE for torquescript be able to implement "command lookup". I'd like to be able to highlight a word and get documentation on that symbol.
#19
12/22/2004 (5:33 am)
Speaking of IDE's, will 1.4 have a target for map2dif for the Mac?
#20
12/22/2004 (7:52 pm)
UltraEdit as IDE on windows and Kdevelop on linux !!!
:P

ok ok, will wait until the newsletter.

Happy holidays!
Page «Previous 1 2