Previous Blog Next Blog
Prev/Next Blog
by date

Plan for Clark Fagot

Plan for Clark Fagot
Name:Clark Fagot
Date Posted:Apr 14, 2004
Rating:5.0 out of 5
Public:YES
Comments:YES
RSS Feed:GarageGames Blog feedor Subscribe with .
Profile Page:View profile page for Clark Fagot

Blog post
Collaboration, racing games, and component based game objects.
About a month ago we at BraveTree central became aware of a project Brett Fattori was working on: a Wipeout style racing game. Once we saw what he had we knew we wanted to work on it with him. After some initial conversations it was clear that this was a collaboration that was going to be very fruitful.

Here is a movie of the current state of the project which Brett put together last night. You'll notice a lot of placeholder art (ThinkTanks tank with no brain on top, ThinkTanks terrain).

This project is also our first project using our new component based game object system. Anyone who has worked with the Torque vehicle and player classes has noticed that they do what they do fairly well, but if you want to change how they behave you start having to really muck with their innards. The component system is an attempt to get around this monolithic approach to game development. Instead of developing general classes with locked in feature sets, with a component based approach you build a library of components that can be combined to form all types of game classes.

For example, the car object in the movie is composed of the following components: a ComTSRender, a ComDrivingMover (derived from Com3DMover), a ComSimpleCollider (that's right, not stuck with one collision solution, you can pick and choose depending on the game), a ComCamera, and a ComLookControl (for the turret, this obviously doesn't go in the final version of the game).

The component system is built so that you can simply drop components into the BTOBjects and they know how to interact with each other. This is mostly due to BTInterfaces. E.g., the ComLook object is responsible for maintaining the look transform. It's primary task is to send horizontal and vertical angles between client and server. It also grabs a TransformInterface (which in the turret case happens to lie inside the tank shape) and sets that transform. The ComLook component is also used by the player object to control the player look animation. Since the ComLook component doesn't need to know what type of transform it is controlling, it can be reused in different contexts.

Now for some more fun. Check out this movie. That's the car on the track again but this time going 300 mph (gravity amped way up so it can stay on the track when it goes over bumps).

Next up...create the RacerMover component which will be a more refined driving model for a racing game (the current simple driving model is the ThinkTanks model with supped up parameters, but it has some limitations that make it not optimal for a racing game).

Recent Blog Posts
List:06/14/05 - Plan for Clark Fagot
04/21/05 - Plan for Clark Fagot
02/06/05 - Plan for Clark Fagot
04/14/04 - Plan for Clark Fagot
10/22/03 - Plan for Clark Fagot
01/06/03 - Plan for Clark Fagot

Submit ResourceSubmit your own resources!

Paul Dana   (Apr 14, 2004 at 17:37 GMT)
This is just too awesome for words. I got a chance to see both this new road technology as well as see Clark's component technology and I can say both are very impressive. Really nice work guys.

John Vanderbeck   (Apr 14, 2004 at 19:32 GMT)
Damn that sounds awesome! I'd love to get a peek at how that component system works. Any plans to release it? Or are you just teasing us?

Stephen Clark   (Apr 14, 2004 at 20:30 GMT)
ooohhh the component model sounds very very cool... Wish i had more time to make this scale of improvements to TGE!

-s

Clark Fagot   (Apr 14, 2004 at 22:43 GMT)
@John - we might release it at some point. Two obstacles to that right now are that 1) we need to develop it more (perhaps finish a game with it will flesh it out more and give us a nice library of components to start with), 2) it's based on a highly modified version of the Torque. John Quigley has put in some work on porting it to stock Torque, so at some point we may get permission to check it into head. At that point, it would be great to see the community creating and sharing components.

Pat Wilson   (Apr 15, 2004 at 01:50 GMT)
Sweet. Clark that looks awesome, and someone has good taste in music whoever did the movie :) That component model also sounds really sweet.

Tyler Frans   (Apr 15, 2004 at 03:20 GMT)
Very slick stuff guys. Great work! :)

-Z-   (Apr 15, 2004 at 04:03 GMT)
Heh very slick! There's certainly going to be some noise from the TT 'Racetrack' crowd is and when they see this ;)

Phil Carlisle   (Apr 15, 2004 at 07:17 GMT)
Its amazing how just adding something simple like a spline path "road" can help formulate game idea's aint it. Even Bretts original road thing clearly showed how it might work.

I'm stoked for Brett and you guys, because I *KNOW* this project is going to rock!

Obviously with BT on the case, Bretts lucked out too, but I think Brett has a great eye for seeing things and gets them done, so its a great match :)

Cant wait to see what it looks like in the final version!

BTW: Wish I had the guts to move to the BTO system, maybe during the summer I'll take the plunge, because Ive worked with deep inheritance tree's for a long time on lots of projects and frankly, Ive found them wanting. This is at least worth giving a shot in a production environment, its also something Ive talked to other devs about and some do use it (cant remember who did it to the most extreme, might have been the Gas Powered Games guys, but I might be wrong).

GO GO GO GO!!!

Racer   (Apr 15, 2004 at 16:53 GMT)   Resource Rating: 5
All i can say is....

SWEET!

Spunky   (Apr 25, 2004 at 10:58 GMT)
Looks okay, but it also looks as if the handling and acceleration rates are off. If you made it a little more realistic and used other terrains than ThinkTanks (I will then know you have put a ton of work into it), then I will bet that your game will be an instant success.
Keep up the good work!

-Spunk

You must be a member and be logged in to either append comments or rate this resource.