Will Torque support Physics cards? Can we finally nuke dif?
by Lee Latham · in Torque Game Engine · 07/27/2006 (9:53 pm) · 13 replies
Hi Everyone,
I was wondering if GG is planning to support the new physics cards coming out?
I envision a future where we don't have to jack with convex-only map formats. Being able to use regular modelling software for EVERYTHING would be ABSOLUTELY FABULOUS!
No need for Torque Constructor then....if it is ever actually released.
Lee
I was wondering if GG is planning to support the new physics cards coming out?
I envision a future where we don't have to jack with convex-only map formats. Being able to use regular modelling software for EVERYTHING would be ABSOLUTELY FABULOUS!
No need for Torque Constructor then....if it is ever actually released.
Lee
About the author
#2
-Matt
07/27/2006 (10:30 pm)
Constructor is coming along quite nicely. How do physics cards or any physics system mean the death of BSP? Half Life2 used Havok but they're BSP junkies. Same deal with Oblivion. Constructor has saved me hours in map editing. To answer your question, apparently the physX integration resource does work with the cards.-Matt
#3
I understand your sentiment and agree wholeheartedly... it would be great to be able to model away without consideration for this stuff but it is quite a bit more complicated than you suggest.
07/28/2006 (6:45 pm)
Really youre talking about poly soup collision, not necessarily related to the physics cards. This has alread been implemented in a way (see TSE's Atlas implementation). Poly soup collision has it's own design limitations. The .dif format is optimised for collision AND rendering so there are other issues involvedI understand your sentiment and agree wholeheartedly... it would be great to be able to model away without consideration for this stuff but it is quite a bit more complicated than you suggest.
#4
My understanding is the only reason we have BSP is to essentially save CPU cycles for physics calculations. What with cpu's getting speedier every day and hardware accelerated physics and rendering, it seems reasonable to me that it could eliminate the need for BSP. Certainly it will at some point? I take my cue from the ungodly way GPU's have accelerated rendering, starting with the earliest voodoo's. Even the very first GPU cards were night/day compared to cpu only.
It seems to me if a killer game or two were to take serious advantage of this technology, that it would drive the rapid adoption of physics hardware, in much the same way as Quake2 did (it seemed to me at the time) for video cards. It seemed very rapid to me, but then I'm getting quite old....
Lastly, I am Lee Latham, I pay the bills and do the mapping and modelling on our game. I let my associate, Kurt Schaeffer, create this account (using my credit card mind you) because he does 100% of the programming, and it seemed like a good idea at the time. There doesn't seem to be a way to create a new account here while maintaining the ability to purchase upgrades, for example.
I'm currently using 3d World Studio, which I think is the best thing available, but it's not a native Torque editor, and it shows. Please let me buy the beta if it saves time as you said. Don't tease me and tell me how great it would be if I had it, when I can't get it!
But I just got to thinking how incredibly cool you could make a game using regular old 3d meshes for maps. I know that I am ignorant of the details and that there would be new limitations (I am not a 3d graphics programmer, and never will be, probably). I just want to take what is in my head and make it real, and I find the main limitation is in the tools available, especially mapping tools. Plus, with 64 bit cpu's already the standard (and just waiting for a consumer OS to be available to take advantage of all 64 bits), physics hardware already kindof here, I'm wondering if it's not time to take it to the next level.
In any case...someone asked why do it now? Well, last time I checked it takes a year to do any software project of significance. Do you want to be the last to do it?
Lee
07/28/2006 (11:21 pm)
Well gee, I sure wish I could save a ton of time mapping with Torque Constructor! Sounds great, please for the love of God let me buy it. That's what really got me going on this thread, is frustration with mapping tools. My understanding is the only reason we have BSP is to essentially save CPU cycles for physics calculations. What with cpu's getting speedier every day and hardware accelerated physics and rendering, it seems reasonable to me that it could eliminate the need for BSP. Certainly it will at some point? I take my cue from the ungodly way GPU's have accelerated rendering, starting with the earliest voodoo's. Even the very first GPU cards were night/day compared to cpu only.
It seems to me if a killer game or two were to take serious advantage of this technology, that it would drive the rapid adoption of physics hardware, in much the same way as Quake2 did (it seemed to me at the time) for video cards. It seemed very rapid to me, but then I'm getting quite old....
Lastly, I am Lee Latham, I pay the bills and do the mapping and modelling on our game. I let my associate, Kurt Schaeffer, create this account (using my credit card mind you) because he does 100% of the programming, and it seemed like a good idea at the time. There doesn't seem to be a way to create a new account here while maintaining the ability to purchase upgrades, for example.
I'm currently using 3d World Studio, which I think is the best thing available, but it's not a native Torque editor, and it shows. Please let me buy the beta if it saves time as you said. Don't tease me and tell me how great it would be if I had it, when I can't get it!
But I just got to thinking how incredibly cool you could make a game using regular old 3d meshes for maps. I know that I am ignorant of the details and that there would be new limitations (I am not a 3d graphics programmer, and never will be, probably). I just want to take what is in my head and make it real, and I find the main limitation is in the tools available, especially mapping tools. Plus, with 64 bit cpu's already the standard (and just waiting for a consumer OS to be available to take advantage of all 64 bits), physics hardware already kindof here, I'm wondering if it's not time to take it to the next level.
In any case...someone asked why do it now? Well, last time I checked it takes a year to do any software project of significance. Do you want to be the last to do it?
Lee
#5
Most 3D games (FPSs in particular) use BSP trees in some form or another. The levels are built with the basic architecture done with a CSG editor (which allows for BSP sorting...), and then, to provide additional detail, the level is "adorned" with the detail features -- the pipes, railings, beams, crates, etc. Well, now all the contents can be sorted and culled via the BSP tree as well. Even player model visibility can be determined and optimized via the BSP tree.
So, it's not just the architectural parts of a structure that can be optimized, but all additional features contained within -- items, adornments, player models, particle systems, etc. The only caveat is that polyhedrons must now be convex, but that's a small issue given the huge benefits of BSP trees.
Anyway, I don't know if that clears things up at all, but I hope it helps! =)
07/29/2006 (2:13 am)
Lee, the simple fact is, no matter how freaking powerful the CPUs/GPUs get, you're ALWAYS gonna want to optimize! In other words, you don't want to spend processor cycles if there something better you can do with them. And you don't EVER want to draw things you don't need to! BSP trees provide a simple, powerful way to accomplish this, AND you get collision checks basically for free. So it makes sense to use 'em. You see some engines (like Oblivion) that do not implement BSPs (AFAIK), preferring some other way to attempt to sort and cull geometry and it shows -- you need a powerhouse system to render visuals that are really not as impressive as they could be considering the amount of processor power thrown at them. But I digress... =)Most 3D games (FPSs in particular) use BSP trees in some form or another. The levels are built with the basic architecture done with a CSG editor (which allows for BSP sorting...), and then, to provide additional detail, the level is "adorned" with the detail features -- the pipes, railings, beams, crates, etc. Well, now all the contents can be sorted and culled via the BSP tree as well. Even player model visibility can be determined and optimized via the BSP tree.
So, it's not just the architectural parts of a structure that can be optimized, but all additional features contained within -- items, adornments, player models, particle systems, etc. The only caveat is that polyhedrons must now be convex, but that's a small issue given the huge benefits of BSP trees.
Anyway, I don't know if that clears things up at all, but I hope it helps! =)
#6
First of all I respeect your opinion, but I would have to respectfully disagree, perhaps, to some extent. The point of having tons of ram and cpu power is to use it. This is why modern OS's take up circa 100 megs or ram, for example. I remember nearly destroying my marriage over the purchase of 8 megs of ram to run OS/2 Warp! (It was later destroyed perfectly well in other ways, but I digress :-) ). Point being, it seems inefficient, but oftentimes that is the point of the exercise--trading inefficient use of resources for ease of use and programming. For example, we use Word or Open Office to do word processing, even though it takes 20 megs of ram to run the program, which seems like overkill to type a letter. But modern machines run it just fine, and we get a flashy interface and high maintainability for the software. The alternative is to use vi forever. I'm just trying to illustrate the point....
On the other hand, I must concede your point that optimization is generally desireable, and you've made me realize what I really want. I really don't give a hoot what format my map is described in. I just want a tool that is easy to use, and for example, let's me make convex shapes all day but then IT figures out how to encode that as a series of concave shapes that can be described in the map format. Does that make sense?
Will Torque Constructor do that?
lee
07/29/2006 (5:49 pm)
Hi Kevin,First of all I respeect your opinion, but I would have to respectfully disagree, perhaps, to some extent. The point of having tons of ram and cpu power is to use it. This is why modern OS's take up circa 100 megs or ram, for example. I remember nearly destroying my marriage over the purchase of 8 megs of ram to run OS/2 Warp! (It was later destroyed perfectly well in other ways, but I digress :-) ). Point being, it seems inefficient, but oftentimes that is the point of the exercise--trading inefficient use of resources for ease of use and programming. For example, we use Word or Open Office to do word processing, even though it takes 20 megs of ram to run the program, which seems like overkill to type a letter. But modern machines run it just fine, and we get a flashy interface and high maintainability for the software. The alternative is to use vi forever. I'm just trying to illustrate the point....
On the other hand, I must concede your point that optimization is generally desireable, and you've made me realize what I really want. I really don't give a hoot what format my map is described in. I just want a tool that is easy to use, and for example, let's me make convex shapes all day but then IT figures out how to encode that as a series of concave shapes that can be described in the map format. Does that make sense?
Will Torque Constructor do that?
lee
#7
I'm not sure you're talking about the PPU produced by Aegia, but if so.. then it's alot more complex than just integrating it. You have to pay their license fee unless you meet their very specific requirements.
This is also a ton of work to implement, with networking supported.
I disagree.
BSP is nice because it saves CPU and resources. If we were to remove BSP, we would get an performance impact, and alot of us are targeting casual markets, or just gamers who are not part of the hardcore league. Myself, I would love to put that processing power elsewhere.
I agree an alternative, perhaps, would be a nice thing.
Do we really have to bring this up again, and again? There's been a million threads about people who do not read the EULA. You cannot share your account. If you (Lee) buy Torque, then it's yours and you cannot transfer it to Kurt or let him use it.
07/29/2006 (7:27 pm)
Hello Kurt,Quote:
I was wondering if GG is planning to support the new physics cards coming out?
I'm not sure you're talking about the PPU produced by Aegia, but if so.. then it's alot more complex than just integrating it. You have to pay their license fee unless you meet their very specific requirements.
This is also a ton of work to implement, with networking supported.
Quote:
What with cpu's getting speedier every day and hardware accelerated physics and rendering, it seems reasonable to me that it could eliminate the need for BSP.
I disagree.
BSP is nice because it saves CPU and resources. If we were to remove BSP, we would get an performance impact, and alot of us are targeting casual markets, or just gamers who are not part of the hardcore league. Myself, I would love to put that processing power elsewhere.
I agree an alternative, perhaps, would be a nice thing.
Quote:
Lastly, I am Lee Latham, I pay the bills and do the mapping and modelling on our game. I let my associate, Kurt Schaeffer, create this account (using my credit card mind you) because he does 100% of the programming, and it seemed like a good idea at the time. There doesn't seem to be a way to create a new account here while maintaining the ability to purchase upgrades, for example.
Do we really have to bring this up again, and again? There's been a million threads about people who do not read the EULA. You cannot share your account. If you (Lee) buy Torque, then it's yours and you cannot transfer it to Kurt or let him use it.
#8
Do we really have to bring this up again, and again? There's been a million threads about people who do not read the EULA. You cannot share your account. If you (Lee) buy Torque, then it's yours and you cannot transfer it to Kurt or let him use it.
Well, sorry, I didn't know it had been brought up before, did I? What do you suggest I do, then? What if I bought it for him? As I said before, I could find no mechanism to buy upgrades any other way. Because I bought upgrades...you know...spent money...like a customer. So you work for Garagegames? You're enfocing something for them?
Lee
07/29/2006 (9:06 pm)
Quote:Do we really have to bring this up again, and again? There's been a million threads about people who do not read the EULA. You cannot share your account. If you (Lee) buy Torque, then it's yours and you cannot transfer it to Kurt or let him use it.
Well, sorry, I didn't know it had been brought up before, did I? What do you suggest I do, then? What if I bought it for him? As I said before, I could find no mechanism to buy upgrades any other way. Because I bought upgrades...you know...spent money...like a customer. So you work for Garagegames? You're enfocing something for them?
Lee
#9
Too bad the BSP is not used for rendering in TGE/TSE. The only rendering aid offered by DIFs is portals, and there are lots of ways of implementing a zone/portal system without BSP. In TGE/TSE, only the DIF collision uses a BSP.
Also, BSP is not the only space partitioning technique laying around, there many others. It is possible to design a polysoup-based level format, with collision and proper culling, portals and whatnot, the main issue is: it's lots of work.
We're working on a custom polysoup-based solution for our TSE prototypes. We're using SketchUp+Maya to build the levels, and Gile[s] to provide GI-enabled lightmaps, and the benefits of the added freedom are starting to show up. We are building a level that, quite frankly, would be almost impossible to do "right" with stock Torque features.
But it's not easy, and it would take GG 10x the effort to implement something similar into TGE/TSE just because it would need to be a more general solution used by many developers, with a more solid art pipeline, more features more Q&A and less hardcoding/hacking than an internal, custom-tailored solution.
07/29/2006 (9:29 pm)
Quote:
Most 3D games (FPSs in particular) use BSP trees in some form or another. The levels are built with the basic architecture done with a CSG editor (which allows for BSP sorting...), and then, to provide additional detail, the level is "adorned" with the detail features -- the pipes, railings, beams, crates, etc. Well, now all the contents can be sorted and culled via the BSP tree as well. Even player model visibility can be determined and optimized via the BSP tree.
Too bad the BSP is not used for rendering in TGE/TSE. The only rendering aid offered by DIFs is portals, and there are lots of ways of implementing a zone/portal system without BSP. In TGE/TSE, only the DIF collision uses a BSP.
Also, BSP is not the only space partitioning technique laying around, there many others. It is possible to design a polysoup-based level format, with collision and proper culling, portals and whatnot, the main issue is: it's lots of work.
We're working on a custom polysoup-based solution for our TSE prototypes. We're using SketchUp+Maya to build the levels, and Gile[s] to provide GI-enabled lightmaps, and the benefits of the added freedom are starting to show up. We are building a level that, quite frankly, would be almost impossible to do "right" with stock Torque features.
But it's not easy, and it would take GG 10x the effort to implement something similar into TGE/TSE just because it would need to be a more general solution used by many developers, with a more solid art pipeline, more features more Q&A and less hardcoding/hacking than an internal, custom-tailored solution.
#10
If you need to post in the private SDK forums, get yourself a license, or have your coder do it for you, but you guys sharing an account is definitely a breach of the terms you agreed to by creating an account, licensing the engine, etc.
And in case you didn't know, as long as you don't have your own license, you can't own any of the C++ code your coder might add or the modifications he might have done to the codebase, because you don't have your own license....
In simpler terms : you hire me to do some custom C++ coding, I'm aware of the situation as it stands right now with your licensing of the engine, well, I could not give you anything but an executable...
IIRC, if you want proper TGE seats, you have to go for commercial licensing of the engine.
Hope that helps clarify how things are
07/29/2006 (9:39 pm)
Lee, the Indie EULA clearly says it's not transferrable, but GG has always been tolerant of people buying an indie license for someone by letting them create an account and then turn it over to that person, but you using it is definitely NOT in the spirit of the leeway they've given the community : the problem right now, is you're using someone's else account to post, which is a breach of the EULA on the engine, and probably of the site's terms of use too. If you need to post in the private SDK forums, get yourself a license, or have your coder do it for you, but you guys sharing an account is definitely a breach of the terms you agreed to by creating an account, licensing the engine, etc.
And in case you didn't know, as long as you don't have your own license, you can't own any of the C++ code your coder might add or the modifications he might have done to the codebase, because you don't have your own license....
In simpler terms : you hire me to do some custom C++ coding, I'm aware of the situation as it stands right now with your licensing of the engine, well, I could not give you anything but an executable...
IIRC, if you want proper TGE seats, you have to go for commercial licensing of the engine.
Hope that helps clarify how things are
#11
I understand about the forum account issue, and it is inconvenient as all get out. I think I explained why I'm doing it--there's no mechanism I could find to create a linked account. I just want my account to reflect that I'm a customer. I've put in a request with support. Does it really seem reasonable to purchase a license just to post in a forum? I mean, it's not just the private SDK forum, is it? It's access to a lot of support materials for mapping and modelling for the engine, which is my job.....
FYI, I do care very much about following the rules. I just haven't figured out a way to make it work vis-a-vis the forums... I hope you'll forgive me if I take a webforum terms of use a slightly less seriously than the source code EULA (which I take very seriously, indeed). However, I shall stop posting for now.
Back on the mapping question, y'all have given me a lot to think about. A lot of it is frankly over my head. All I know is the tools I have for mapping require a lot of very tedious work to do simple things.
Lee
07/30/2006 (1:18 am)
Hmm, I did buy the commercial license, and my partner only supplies me with binaries, so that's okay, right? We did read the EULA carefully, and done our best to comply with it.I understand about the forum account issue, and it is inconvenient as all get out. I think I explained why I'm doing it--there's no mechanism I could find to create a linked account. I just want my account to reflect that I'm a customer. I've put in a request with support. Does it really seem reasonable to purchase a license just to post in a forum? I mean, it's not just the private SDK forum, is it? It's access to a lot of support materials for mapping and modelling for the engine, which is my job.....
FYI, I do care very much about following the rules. I just haven't figured out a way to make it work vis-a-vis the forums... I hope you'll forgive me if I take a webforum terms of use a slightly less seriously than the source code EULA (which I take very seriously, indeed). However, I shall stop posting for now.
Back on the mapping question, y'all have given me a lot to think about. A lot of it is frankly over my head. All I know is the tools I have for mapping require a lot of very tedious work to do simple things.
Lee
#12
07/30/2006 (7:55 pm)
Yes, it is just the Private SDK forum you can't post in without a licencse. The reason you can't have access to it, is because things like source code (that you are not allowed to view) can be discussed and shown in the private forums and resources. There are public forums for mapping and Torque related topics you can post in using an account that doesn't have a licencse.
#13
I have used a line when pitching for VC here it is,
"We are extreme engineers, we went to the moon on an 8 mhz processor with less then 1/2 a meg of ram WHY IN GODS NAME DOES IT TAKE A 600mhz processor with 128 megs of ram for me to type my resume, one word, microsoft."
They have the same mindset you do, that how they managed to cram 3 security bugs into 512 kb of security code. Dont mind though now I can play with coding for a console.
I told one of my programmers when he started working with me "you waste one cycle, one bit of memory I will beat you within an inch of your life."
Maybe I am being to harsh, maybe I should not inflict the Canadian demand for perfection, maybe I should buy into the US oppinion of microsoft, "just make it work". but my software works well, it is an extension and representation of me and who I am, what am I saying about me if it is sloppy and inefficient?
08/03/2006 (7:24 am)
Kurt,I have used a line when pitching for VC here it is,
"We are extreme engineers, we went to the moon on an 8 mhz processor with less then 1/2 a meg of ram WHY IN GODS NAME DOES IT TAKE A 600mhz processor with 128 megs of ram for me to type my resume, one word, microsoft."
They have the same mindset you do, that how they managed to cram 3 security bugs into 512 kb of security code. Dont mind though now I can play with coding for a console.
I told one of my programmers when he started working with me "you waste one cycle, one bit of memory I will beat you within an inch of your life."
Maybe I am being to harsh, maybe I should not inflict the Canadian demand for perfection, maybe I should buy into the US oppinion of microsoft, "just make it work". but my software works well, it is an extension and representation of me and who I am, what am I saying about me if it is sloppy and inefficient?
Associate Craig Fortune
Secondly, Torque constructor is getting damn close... and even so, theres still a lot you can do with DIF.
And last but not least, is your name Kurt or Lee? *confused*