Simple torque mods as class final project?
by Gary Haussmann · in Torque in Education · 11/30/2004 (4:02 pm) · 4 replies
Gents, at Westwood College in Denver we've gotten something like 20+ torque licenses and have them installed in a few classrooms. I've been using torque in my class to illustrate basic 3D game concepts like transform matrices, meshes, textures, and skeletal animation. For the final class project I am considering having each student make a simple, small modification to the torque engine C code. I figure that for the students, seeing their work in a full blown 3D engine is a lot more satisfying than writing a basic 3D game from scratch (which we already did, kinda).
So far in class we've gone over a few simple torque mods from the Resources section of garagegames.com in order to get familar with various parts of torque, and pretty soon I will have work out what project/mod each student will do. The projects should involve some modifications to the C/C++ code, and also require the student to figure out the ramifications his changes have on rendering/networking/scripting, if any. We've come up with some that have a good blend of simple and cool:
> dual-wield guns ala Halo2
> fancy wuxai jumping off of vertical walls
> transforming vehicles (maybe a little too hard...)
> adding 'cling' mount points to vehicles so characters can leap and grab onto them (Halo2 again?)
I'm looking for other simple and cool mod ideas that would make a good final project and also comments on what things to stay away from. For instance, the zone/portal system makes me think that any mod on interiors will require touching a big mess of code in a lot of different files. In another case, many AI mods and enchancements are done entirely in script, so that is out since I would them to hack up some data structures and figure out the networking/scripting portions of the code. Although adding some low-level AI enhancements might be OK.
Thanks,
Gary
So far in class we've gone over a few simple torque mods from the Resources section of garagegames.com in order to get familar with various parts of torque, and pretty soon I will have work out what project/mod each student will do. The projects should involve some modifications to the C/C++ code, and also require the student to figure out the ramifications his changes have on rendering/networking/scripting, if any. We've come up with some that have a good blend of simple and cool:
> dual-wield guns ala Halo2
> fancy wuxai jumping off of vertical walls
> transforming vehicles (maybe a little too hard...)
> adding 'cling' mount points to vehicles so characters can leap and grab onto them (Halo2 again?)
I'm looking for other simple and cool mod ideas that would make a good final project and also comments on what things to stay away from. For instance, the zone/portal system makes me think that any mod on interiors will require touching a big mess of code in a lot of different files. In another case, many AI mods and enchancements are done entirely in script, so that is out since I would them to hack up some data structures and figure out the networking/scripting portions of the code. Although adding some low-level AI enhancements might be OK.
Thanks,
Gary
#2
Also, I will probably go over the 3rd person camera coupled with mouse selection in class, and if a student really wants to try adding on the RTS stuff we can figure out what to do. Maybe he'll be motivated to buy his own copy torque and the RTS starter kit, I dunno :)
12/01/2004 (11:20 am)
Yah Stephen, I'm certainly getting the RTS-SK myself but I dunno if the school is willing to shell out another chunk of money for the 20 or so RTS starter kit licenses we would need...at least not until the core torque engine proves its utility in teaching classes. However, your note about the advanced camera stuff looks both interesting and relevant.Also, I will probably go over the 3rd person camera coupled with mouse selection in class, and if a student really wants to try adding on the RTS stuff we can figure out what to do. Maybe he'll be motivated to buy his own copy torque and the RTS starter kit, I dunno :)
#3
You write some code to create the tank and the students write the code to manipulate the turret. The idea is that they write code to "auto target" the nearest enemy (or along those lines, some kind of auto target).
That will get them used to the transforms and object->world->object transform relationships. It also makes them use the dot product etc too (bonus!).
I like the dual weild, but it would be too easy I think.
01/03/2005 (12:51 am)
How about making up a tank problem Gary.You write some code to create the tank and the students write the code to manipulate the turret. The idea is that they write code to "auto target" the nearest enemy (or along those lines, some kind of auto target).
That will get them used to the transforms and object->world->object transform relationships. It also makes them use the dot product etc too (bonus!).
I like the dual weild, but it would be too easy I think.
#4
02/07/2005 (6:45 am)
I would recommend building an AI system, or if the IA pack comes out use it to build a library of states for its state machine
Torque 3D Owner Stephen Zepp
I hate to plug the RTS SK once again (ok, no I don't, it's great!) but you may want to also consider making that available within your curriculum--there are many areas that the kit will allow you to launch some pretty nifty game concepts in the condensed time period of 2-3 months, as well as a lot of engine interactivity that can be directed as well.
Here are some of the "neat" things that could be done in that area (RTS):
--Modify the basic mouse interface (click to select unit/building, drag-select groups of units, etc.) to allow for more complex interaction. One thing we did was to change the "place building" action so that when the player left clicks on the map and holds, they can rotate the building to their satisfaction, and then when they let go of the button, the building is actually placed. This required analysis of not only the data structure in the event, but also understanding and modifying the mouse event handling within the code.
--Implement some method of "team identification" of units, so that the players can visually tell at a glance if a unit/building is a friend or enemy. This would touch on the rendering engine, probably pack/unpack, and depending on the implementation, art pipeline as well.
Another, more general area you could have them work on is camera controls. The Advanced Camera resource is a very nice mix of console and code modifications, and you could use that as a base to have your students implement some advanced input interface, or design and implement a new camera mode based on the existing functionality.