Game Development Community

First-person shooter / racing and networking

by David Horn · in Torque X 3D · 01/29/2009 (7:37 am) · 11 replies

Hello

I've been using torque for awhile now and am thinking about going for an xna game. I am in the process of creating a wrestling game. Right now, I'm on a roll and am very pleased with TGE.

However, from the beginning, it was very difficult because it seemed like every template, tutorial, etc. was geared towards either building a racing game or building a first-person shooter. I had to make a lot of modifications (3rd person static camera, using only aiPlayers, etc.) to create a different game.

Will that be the way it is for this new 3D xna engine? It just seems like a lot of community/xbox live games are going for more 3rd person anyway. Just looking at things like the puzzle games, the 3D / 2D remakes (such as the remake of Bionic Commando), and other arcade-style games.

Also will there be any type of gui interface for aiding in adding multiplayer support?

Many thanks.

#1
01/29/2009 (8:41 am)
I can certainly say that Torque X is not exclusively focused on FPS and racing games. This is largely because of its component-based programming paradigm. In TGE, anything that you want to render in the 3D scene must start with the ShapeBase class, that comes with a lot of FPS baggage. In Torque X, you start with a pretty empty TorqueObject and then a T3DSceneComponent to give it presence and a T3DTSRenderComponent to give it shape and a T3DRigidPhysicsComponent to give it physics, and so on...

This means that there is no pre-set notion of what kind of game you are about to make. It's more of a blank canvas. But... this can also be Torque X's criticism. Some find it to be too much of a blank slate and would prefer some initial guidance. There are demo games that come with Torque X, but they are not starter projects.

Personally, I find Torque X to be very productive. I'm a decent C++ programmer, but personally prefer not to sift through class hierarchies and pointer de-referencing. TGE/A are excellent engines, but I find myself to be much more productive in C#. In the time it took me to write one game in TGE, I wrote (and released) 2 games and 3 productivity tools. I also have a 3D (third person) sports game in production right now, so I can say that Torque X can do it.

Just keep in mind Torque X has its limitations along with it's productivity gains. This is a Windows and Xbox 360 only solution. You won't be able to port your code over to MacOS, Linux, or even iPhone.

I suggest you give it a try, look through the sample games, experiment a little, and have fun.

John K.
www.envygames.com


#2
01/29/2009 (8:50 am)
Excellent. I would actually prefer a more blank slate. This seems to yeild better tutorials. I'll definitely give it a try - it's not released yet... correct?

Hopefully I can add "melee" and "fighting game" to that list.
#3
01/29/2009 (10:40 am)
Not released yet. Supposed to be released "soon"

whenever that is. As of right now soon just means '09
#4
01/29/2009 (1:57 pm)
I have a license for TGE myself but had worked with Java on and off for a few years. C# is very java like and it is good to know for my job as our product uses .net (not a game company though). But aside from that, just to use a 3rd person camera, tie it to a bot, get the bot to be able to rotate/move, and do any kind of collision detection took me longer than the whole time I've spent with my current game in TX2D which already has basic AI, collision detection, proper animation, and my objects can already interact with each other and respond to input in the way I want them to. Plus, everything uses the same script/code so that eliminates a lot of confusion as well. And the final thing... I really hate having to deal with 2 different files (header and cpp file) and compiler configurations. So anyway, I highly recommend XNA/TX. From what I've seen of John's work with the 3D builder, TX3D will probably be easier to work with than TGE except for terrain, which you will probably want to keep your copy of TGE handy to make.

Brian
#5
01/29/2009 (11:31 pm)
Brian has excellent points. Currently, the 2D toolset is much easier to work with than the 3D toolset. Once Torque X 3.0 is released, the playing field should be leveled a bit. Terrain sculpting is still a challenge for Torque X 3D, but better solutions are already being evaluated.

John K.
www.envygames.com
#6
01/30/2009 (6:30 am)
Well first off, I do all my coding in torque script. the only C++ code I do is for mods to the engine itself such as the ability to hide and show meshes, or use a 3rd person camera (both supplied from users in the forums). C# makes a lot of sense to me. And I'm only concerned with making xbox 360 xna games.

The terrain is a moot point, especially for my wrestling game. I just need an arena, a ring and an audience... all of which are already modeled. Unless I venture into other games, but really I'd just be interested in a 2D platformer with 3D graphics/animations.

just for reference:

http://www.youtube.com/watch?v=Gb6gvGi5830

For this wrestling game, the main things I've needed are
collision detection (which has been mentioned),
hiding/showing meshes,
changing textures,
saving created wrestlers (right now I save to XML),
having a couple hundred animations and be able to apply them to any applicable biped on the screen given a button (i.e. A makes you punch, B makes you bodyslam, etc.)
ability to choose between tall/fat/skinny/etc. I could use different models like I am now - couldn't find a way to actually have the user modify the model to make him fat or tall and then save that effectively.


I guess I'll have to wait and download the demo when it comes out because it sounds promising. til then, I'm still going through TGE.
#7
01/30/2009 (10:03 am)
Cool, you're the one doing the Homebrew Wrestling! I've been following your blog posts with a lot of interest. I'm positive that Torque X is what you're looking for. C# gives you a lot more programming power than TorqueScript and it's a lot easier to program than C++ (especially with TGE's class hierarchy).

www.envygames.com/share/scales.jpgThe Torque X 3D engine can do everything you mentioned above. In fact, you're last point is the easiest. You can programatically adjust the scale of the player model to make him tall&thin or short&fat by getting a hold of the player's scene component and adjusting the X/Y/Z scale. I've applied this approach to the three models in the image above (center is original).

John K.
www.envygames.com
#8
01/30/2009 (2:54 pm)
The only thing I miss from TGE(A) personally is DIF models. I'm not very good with 3D Model Content creation and like to use them as place holders as well as buildings. Not only that, but I feel like they are much easier to edit later. Anyway, I wonder if there has been any talk of adding DIF support into a future version of TX?

Brian
#9
01/30/2009 (5:08 pm)
well again, for my particular needs, difs are only used for the ring and floor, because they are easy to show shadows.

john, is it possible to do that for meshes within the models? making mid sections big, making heads or feest big, etc?

Thanks for your interest in HBW by the way!
#10
01/30/2009 (5:37 pm)
Wow, HBW looks pretty sweet. It's been awhile since I checked it out. You had posted a question about in one of my threads: www.garagegames.com/community/forums/viewthread/73490

Had to go digging because I thought your project sounded familiar.

Brian
#11
01/30/2009 (6:13 pm)
You can't easily scale a specific region of the mesh. The only way that comes to mind right away is a custom shader that repositions the vertices in real-time. But then you need a way to specify which vertices to move. The much easier solution would be to go back to the 3D editor, break your character model into regions (head/torso/arms/legs/etc) and then assemble the body via mounting. Then, you could rescale the individual body parts as described above. That's probably the best I could can up with for now. Any one else?

John K.
www.envygames.com