The difference between XNA GSE and TX
by Eric George · in Torque X 2D · 12/29/2006 (9:01 pm) · 10 replies
About a month ago I started learning C# and the XNA GSE (Game Studio Express) and soon enough i was off creating my own 3D objects on screen moving around with the XBox controller and firing, but when I got to animating the models it became quite clear that to animate the models would take a good while to understand and put in effect. Also other ideas such as world terrain and animation and other mundane game topics that indies like myself would rather not deal with became quite a thorn in my side. So last night I downloaded Torque X and wanted to see if perhaps that would solve some of the mundane background game topics that have plagued me. But, when using TorqueX it is all written in C# just as XNA GSE, with no 3D support, I have no need for 2D, 2D is easy, so is creating and moving a 3D object with just XNA GSE, anyone can check the tutorials on these topics and have a 3D object on screen in 'less than 5 minutes' as the XNA GSE creators have said time and time again and shown in interviews. So what do we get with Torque X that we cant get with XNA GSE? I rather enjoyed the 'World Editor' feel of TGB since most of my background is in modding other games and hoped Torque X would have the same 'user friendly' feel but it seems like to go with Torque X is an awful waste when I can already go further than TorqueX allows (creating and moving 3D objects). Is there anyone that has used both or fully understands what Torque X makes so much easier than just sticking with XNA GSE? I guess some perks like making sprites a little easier, but the perks that Torque X allows is not a major hurdle that I faced with XNA GSE. Maybe I should stick with XNA GSE but I'm really wanting to cut out the time to create background game engine topics and I had hoped Torque X would do that. Any input woud be GREATLY appreciated!
Also, I fully understand that neither XNA GSE nor TX is a 'final' 'pro' release, but at this point what real perks does TX give us??
Here is a breakdown of my inquiry;
2D Toolset*
Obviously I'm missing something here, I own a TGB license....
PixelBlast
Is this a built in sprite engine? And there are many already for free by the community such as the mercury engine.
Torque X Lighting
The lighting supplied with just XNA GSE is unreal, and easy. what does TX offer here that XNA GSE didn't already offer? I mean literally, with XNA GSE I can take out all lighting effects with a simple deletion of a line, and the model looks generic, then by replacing/altering hat line the Model becomes so unbelievably professional looking, all with the simple ease of a 1 line code alteration.
Collision Detection
Perhaps here is a nice feature, but it seems really only with 2d, is there a perk to 3D collision detection, or one coming in the future perhaps? 2D collision is a piece of cake.
Physics Engine
Well liner and velocity, angular velocity, friction, all things that are VERY easy to manipulate with just XNA GSE without the use of TX. Also they make it like you can assign these to a 'class' but, the WHOLE C# language is built AROUND CLASSES by default.
CodeOnce*
XNA GSE offers this for free, and yet TX makes it like they offering this great service, am I missing something here as well? Maybe there just saying that this is compatible with the XBox, and in that case I see it like they're fooling us by making it as if what THEY did is making playing on the XBox possible, B/c is if is made for XNA GSE, it better darn well be compatible for the XBox IMO.
I don't mean to undermind garagegames, I just don't understand all this, hence why I'm asking, so please someone, enlighten me. =)
Also, I fully understand that neither XNA GSE nor TX is a 'final' 'pro' release, but at this point what real perks does TX give us??
Here is a breakdown of my inquiry;
2D Toolset*
Obviously I'm missing something here, I own a TGB license....
PixelBlast
Is this a built in sprite engine? And there are many already for free by the community such as the mercury engine.
Torque X Lighting
The lighting supplied with just XNA GSE is unreal, and easy. what does TX offer here that XNA GSE didn't already offer? I mean literally, with XNA GSE I can take out all lighting effects with a simple deletion of a line, and the model looks generic, then by replacing/altering hat line the Model becomes so unbelievably professional looking, all with the simple ease of a 1 line code alteration.
Collision Detection
Perhaps here is a nice feature, but it seems really only with 2d, is there a perk to 3D collision detection, or one coming in the future perhaps? 2D collision is a piece of cake.
Physics Engine
Well liner and velocity, angular velocity, friction, all things that are VERY easy to manipulate with just XNA GSE without the use of TX. Also they make it like you can assign these to a 'class' but, the WHOLE C# language is built AROUND CLASSES by default.
CodeOnce*
XNA GSE offers this for free, and yet TX makes it like they offering this great service, am I missing something here as well? Maybe there just saying that this is compatible with the XBox, and in that case I see it like they're fooling us by making it as if what THEY did is making playing on the XBox possible, B/c is if is made for XNA GSE, it better darn well be compatible for the XBox IMO.
I don't mean to undermind garagegames, I just don't understand all this, hence why I'm asking, so please someone, enlighten me. =)
#2
...is the statement of a person who has never written a full featured 2d collision detection/resolution engine.
XNA is a set of managed code development libraries.
TorqueX is a product which ties those libraries together into a flexible, extensible game engine.
Why would I use XNA when I could just use DirectX? XNA is one step more toward the abstract which makes it easier to understand/manage/use than DirectX. TorqueX attempts to build the same relationship with XNA, one more step toward the abstract.
If using XNA without TorqueX is easier for you, then there is no reason for you to personally attempt to use TorqueX. If programming physics responses for rigid bodies, clamped collisions, bounces, etc. is easier for you by hand than using built in classes of TorqueX, then those things which TorqueX does for you won't help you.
12/31/2006 (1:50 am)
Quote:
2D collision is a piece of cake
...is the statement of a person who has never written a full featured 2d collision detection/resolution engine.
XNA is a set of managed code development libraries.
TorqueX is a product which ties those libraries together into a flexible, extensible game engine.
Why would I use XNA when I could just use DirectX? XNA is one step more toward the abstract which makes it easier to understand/manage/use than DirectX. TorqueX attempts to build the same relationship with XNA, one more step toward the abstract.
If using XNA without TorqueX is easier for you, then there is no reason for you to personally attempt to use TorqueX. If programming physics responses for rigid bodies, clamped collisions, bounces, etc. is easier for you by hand than using built in classes of TorqueX, then those things which TorqueX does for you won't help you.
#3
01/04/2007 (3:11 pm)
Let's hope TNL sees its way into TXE since network libraries are sorely lacking in the .NET world.
#4
Doh! That's on the level, though. Solid and efficient 2D collision detection is definitely no simple task. In fact, collision detection is one of the things that decreases the least in terms of sophistication if you're coming from 3D.
On the topic of TNL, I don't know for sure, but my vague understanding is that XNA is still on the wire about whether it will support networking at all (the current version doesn't, if I'm not mistaken). I'm sure TNL or some hybrid will be ported to TorqueX if they decide to support networking though.
As to why anyone would want to use TorqueX, I can't really answer that for anyone else. Personally, I like it. It allows me to set up all my game logic into components and then compile them into working levels easily. 2D is just the start for TorqueX, though. 3D is coming just down the road, if all goes as planned. For now, most of the attention is on getting the 2D side of the engine (and the TGBX pipeline) polished up. Once that's done, the 3D side will get the same attention.
01/07/2007 (7:38 pm)
Quote:...is the statement of a person who has never written a full featured 2d collision detection/resolution engine.
Doh! That's on the level, though. Solid and efficient 2D collision detection is definitely no simple task. In fact, collision detection is one of the things that decreases the least in terms of sophistication if you're coming from 3D.
On the topic of TNL, I don't know for sure, but my vague understanding is that XNA is still on the wire about whether it will support networking at all (the current version doesn't, if I'm not mistaken). I'm sure TNL or some hybrid will be ported to TorqueX if they decide to support networking though.
As to why anyone would want to use TorqueX, I can't really answer that for anyone else. Personally, I like it. It allows me to set up all my game logic into components and then compile them into working levels easily. 2D is just the start for TorqueX, though. 3D is coming just down the road, if all goes as planned. For now, most of the attention is on getting the 2D side of the engine (and the TGBX pipeline) polished up. Once that's done, the 3D side will get the same attention.
#6
If you're not interested in doing 2D games, then Torque X right now won't be a big help to you. If you are, then it'll certainly save you time. If you want to replicate the pieces of functionality that Torque X handles for you on your own, then more power to you. But there's a lot of work in there-- we've poured in several man years worth of development to Torque X already. So, if you want to just dig in and start making 2D games quickly, then Torque X will help a lot already. The Torque Game Builder pipeline helps you block out levels really quickly. In fact, by the final release version, you'll be able to get lots of gameplay going without needing to code at all. As an engine or game development framework, Torque X takes care of lots of nitty-gritty work for you... from collision detection, to quite advanced physics, to easy to set up and modify 2D shader effects (which very few people, if anyone, has done before in a 2D engine!), and lots more.
And that's just the start. We've also got Starter Kits on the way that make building things like Platformers a piece of cake (relatively speaking at least).
Torque X is free right now, and the binary framework will contiue to be free after launch, so there's certainly no downside in using it! We are pretty excited and proud that we were able to give this away for free, and our hope is that it'll help people make cool games (which we'll get to play and enjoy!).
We'll bring all this same ease of use and time saving functionality to Torque X in 3D in the near future too. So, even if you want to do a 3D game and Torque X isn't the best fit for you right away, I'd suggest watching the site here at least and making sure you check out Torque X once it goes 3D. It's gonna be cool! :)
Personally, I love 3D games and game technology. But I think there's LOTS of fun games to do in 2D... indeed, the majority of my favorite game memories are from 2D games. And there are people doing really innovative and cool 2D games nowadays. Still lots of ideas to explore in that space. So, we help Torque X even as it exists today will help people make good games. If I had the time, I'd jump all over the chance to quickly express my 2D game ideas with Torque X and TGB. :) Plus, learning the way this stuff works now will give you a headstart when Torque X goes 3D in a little while. And once the 3D stuff is all ready for release, we hope lots of people will pick up Torque X and use it to get fun games done fast. The more, the merrier! I can't wait to see what kinds of games people like you turn out in the future. :)
01/08/2007 (9:14 am)
Good questions Eric. For now, Torque X is indeed 2D-focused. We wanted to release our 2D stuff first so that we could get our pipeline and general game-making API right. 3D work is on deck, and as everyone hopefully saw at Gamefest with our demo of a new Marble Blast Ultra-style level, we've already made great progress on 3D. If you're not interested in doing 2D games, then Torque X right now won't be a big help to you. If you are, then it'll certainly save you time. If you want to replicate the pieces of functionality that Torque X handles for you on your own, then more power to you. But there's a lot of work in there-- we've poured in several man years worth of development to Torque X already. So, if you want to just dig in and start making 2D games quickly, then Torque X will help a lot already. The Torque Game Builder pipeline helps you block out levels really quickly. In fact, by the final release version, you'll be able to get lots of gameplay going without needing to code at all. As an engine or game development framework, Torque X takes care of lots of nitty-gritty work for you... from collision detection, to quite advanced physics, to easy to set up and modify 2D shader effects (which very few people, if anyone, has done before in a 2D engine!), and lots more.
And that's just the start. We've also got Starter Kits on the way that make building things like Platformers a piece of cake (relatively speaking at least).
Torque X is free right now, and the binary framework will contiue to be free after launch, so there's certainly no downside in using it! We are pretty excited and proud that we were able to give this away for free, and our hope is that it'll help people make cool games (which we'll get to play and enjoy!).
We'll bring all this same ease of use and time saving functionality to Torque X in 3D in the near future too. So, even if you want to do a 3D game and Torque X isn't the best fit for you right away, I'd suggest watching the site here at least and making sure you check out Torque X once it goes 3D. It's gonna be cool! :)
Personally, I love 3D games and game technology. But I think there's LOTS of fun games to do in 2D... indeed, the majority of my favorite game memories are from 2D games. And there are people doing really innovative and cool 2D games nowadays. Still lots of ideas to explore in that space. So, we help Torque X even as it exists today will help people make good games. If I had the time, I'd jump all over the chance to quickly express my 2D game ideas with Torque X and TGB. :) Plus, learning the way this stuff works now will give you a headstart when Torque X goes 3D in a little while. And once the 3D stuff is all ready for release, we hope lots of people will pick up Torque X and use it to get fun games done fast. The more, the merrier! I can't wait to see what kinds of games people like you turn out in the future. :)
#7
My understanding is that XNA doesn't have any networking functionality whatsoever, though it is possible to get networking on PC by other means (i.e. existing networking libraries).
01/09/2007 (4:40 am)
Quote:XNA for PC has networking, XNA for Xbox360 doesn't.
My understanding is that XNA doesn't have any networking functionality whatsoever, though it is possible to get networking on PC by other means (i.e. existing networking libraries).
#8
XNA SUPPORTS networking for PC as in you could get networking to work, but you gotta do the legwork yourself.
XNA does NOT support networking for the 360 as you need all the info for Xbox Live, which although exists and is developed in .net, it hasn't been exposed to XNA and they are trying to figure out the best way to create a cross-platform solution (if they can even come up with one).
My personal thoughts are that GG shouldn't wait for MS to finish up as it for sure wont be available until PRO comes out late this year and they don't even know for sure if it'll be then even.
I would rather have a bad ass PC only networking layer (TNL) than a cross-platform layer. If you guys implemented a network layer that's PC only now, and then added support for the cross-platform layer later, I think you'd find all the people like myself who are primarily focusing on PC development would be more apt to purchase the engine.
01/09/2007 (10:43 am)
OK. Let me rephrase. XNA doesn't provide any network layer outside of the System.Net namespace which gives you access to the .net networking API.XNA SUPPORTS networking for PC as in you could get networking to work, but you gotta do the legwork yourself.
XNA does NOT support networking for the 360 as you need all the info for Xbox Live, which although exists and is developed in .net, it hasn't been exposed to XNA and they are trying to figure out the best way to create a cross-platform solution (if they can even come up with one).
My personal thoughts are that GG shouldn't wait for MS to finish up as it for sure wont be available until PRO comes out late this year and they don't even know for sure if it'll be then even.
I would rather have a bad ass PC only networking layer (TNL) than a cross-platform layer. If you guys implemented a network layer that's PC only now, and then added support for the cross-platform layer later, I think you'd find all the people like myself who are primarily focusing on PC development would be more apt to purchase the engine.
#9
Basic networking is not crazy-hard to do and I'm sure if we polled everyone who might possibly be interested in using TorqueX, 3D support would be more important than PC-only real-time ghosting to most of them.
I'm not saying it's a bad idea, I'm just saying it's probably not likely to happen until MS gives us a cross-platform networking interface to build against.
01/09/2007 (1:46 pm)
If we implemented a networking layer now, then we would still have to revisit it later on and there's no telling how comatible any code written now would be with XNA's networking interface. The main reason it will be held off on is that 3D is a much higher priority than networking. Especially when we've got other software for people focussed on PC game dev with awesome networking support.Basic networking is not crazy-hard to do and I'm sure if we polled everyone who might possibly be interested in using TorqueX, 3D support would be more important than PC-only real-time ghosting to most of them.
I'm not saying it's a bad idea, I'm just saying it's probably not likely to happen until MS gives us a cross-platform networking interface to build against.
#10
I know someone who knows someone who knows someone who's aunt's brother's friend has seen the XBL networking layer *cough* *cough* and it is quite a bit different (the last they had seen anyway which was early last year).
My biggest point is, even if MS comes out with a cross-platform networking API for XNA, I really hope you guys don't just add on to it without investigating the benefits of rolling your own PC only version to stand alongside it (have both APIs implemented, not just the cross-platform one).
01/09/2007 (3:59 pm)
I agree completely that 3D isn't just more important, but far more important. The only issue I had mainly was that I don't think MS will come up with a very good cross-platform solution. Sure, it'll be great to code once and have the game work on both platforms in a networked environment, but at what cost to people who just want to do PC games?I know someone who knows someone who knows someone who's aunt's brother's friend has seen the XBL networking layer *cough* *cough* and it is quite a bit different (the last they had seen anyway which was early last year).
My biggest point is, even if MS comes out with a cross-platform networking API for XNA, I really hope you guys don't just add on to it without investigating the benefits of rolling your own PC only version to stand alongside it (have both APIs implemented, not just the cross-platform one).
Torque 3D Owner Jonathon Stevens
3D support - Everything you can do in XNA you can do in TXE. 3D support isn't really in the engine yet outside of a few things you COULD tie into, but aren't documented, however GG does have full 3D support in the works, so it's just a matter of time. For the time being, simply do what you did in straight XNA in TXE to get to the 3D point you were before.
TXE Lighting - The difference is you can manipulate the lighting in TGBX very easily, so you don't have to hard code everything by hand.
Collision Detection - See 3D support section.
Physics Engine - Stuff like this isn't just a 'class' it's built into the 'component' idea so you can, with TGBX, quickly and easily add physics, and other things, very quickly and easily to anything in-game. Components are much easier to write and work with and you get the most out of reusable code.
CodeOnce - It's not just compatible with the xbox, outside of keybinding for xbox and pc, all the rest of the code is exactly the same in TXE. You don't have to render anything different or start an xbox specific project (IIRC) like you do with GSE/XNA. So you build a single game and can release that same codeset on both the PC AND the xbox 360.