Page 1 of 2

Unreal Engine 3 (2.0) Destructible Environments

Posted: Sat Mar 15, 2008 5:39 am
by Halifax
I have watched the Unreal Engine 3 improvements ( GDC 08 ) over and over again. Everything they showed seemed pretty standard, except for the destructible environments to me.

I know that all this is probably done in the physics engine with PhysX, but the graphics rendering part of the destruction is what is getting me. Things get destroyed, from the ground, and textures are still are the parts that aren't even shown. (When not destroyed.) E.g. the ground doesn't have one texture on top of it, but instead textures on every single part of it. They also have triangles (the wire) in the mesh. Are they really doing this, or not?

So I am sure we have all seen the rudimentary physics technical demos where there are thousands of seperate bricks lain in a waill, and an object crashes into them. Is this in effect, what Epic is really doing? Are their modelers really spending all that time to model individual seperate parts so that they can be breakable? (Like the bricks in physics technical demos.)

Posted: Sat Mar 15, 2008 6:14 pm
by JP
I suppose they could have a really good way of re-creating meshes or something as they're destroyed. So a box would be just a simple box but when cut in half it becomes two simple boxes etc.

Or it could just be physx doing it. With cloth in Physx you can make it tear-able and in that case you have to give physx some extra memory for vertices created by the tearing process, so it basically makes the mesh two seperate meshes once it's torn in half. Then you just render those new vertices and you get the torn up mess of a cloth.

It would be good to see these videos, i assume they're on youtube or something?

Posted: Sat Mar 15, 2008 7:25 pm
by Halifax
Oh well I figured anything from Epic Games was as good as seen. :lol: But yes, I am sorry I didn't think of that. I never thought that PhysX could actually do all the re-creation of the vertices, then just pass it to UE3, and they just render. I am going to have to look in to this, because if that is possible, then that would be a cool tech demo for Irrlicht...

Oh, and before I forget, here is the video link:
http://www.gametrailers.com/player/30824.html

General Overview of what he talks about just got integrated with UE3:
- Head-to-head comparisons of Gears of War before and after with the new engine
- Ambient Occlusion
- High Density Crowds using Fauking Technology (I doubt this could be for anything other than cutscenes; the characters are too stupid.)
- Dynamic Fluid Surfaces (Basically what is in the Ogre tech demo. Nothing new.)
- Matinee Improvements (Cutscene editors.)
- Soft Body Physics (Some cools meat cubes, and water balls with Ageia PhysX.)
- Destructible Enviroments (The only really cool part imho.)

Posted: Sat Mar 15, 2008 8:04 pm
by JP
Wow.... that water is to die for! Although when it's used as an ocean it doesn't react quite as well... when the pillar is chucked into the water the ripples and waves move too quickly. The same principles can't be applied to shallow and deep water, i imagine they've not taken the depth of the water into account there.

The soft body physics there is something i'm trying to include in my Alestorm game; to have a soft body boss like a bag of air who starts off fully pumped up and each shot (to a specific target area) will reduce the inner pressure so the bag of air eventually becomes deflated.

The destructible physics is rather impressive there i have to say... i wouldn't say that's something that's a simple thing to do with physx, it would take quite a lot of extra work on the engine's side to get such a nice result.

Damn, i should sooo be using the unreal engine for my alestorm game! :lol:

Posted: Sat Mar 15, 2008 10:03 pm
by MasterGod
Man this makes me wanna stop developing my engine :shock:
What a dream engine this UE3 is..

Posted: Sun Mar 16, 2008 3:06 am
by Virion
*cough* If you got the money then... :)

Posted: Sun Mar 16, 2008 4:41 am
by TheBeef
What, no one remembers Red Faction?

Posted: Sun Mar 16, 2008 7:47 am
by Virion
TheBeef wrote:What, no one remembers Red Faction?
Cool. o_o

Posted: Sun Mar 16, 2008 2:29 pm
by agi_shi
PhysX is probably doing what the upcoming version of NewtonGD is doing:
http://fr.youtube.com/watch?v=a2FxFNXN-Ak&feature=user
There's no "precalculations" - everything is done in real-time (no predefined breaking patterns, it can break in any way). The Newton engine calculates the texture coordinates, vertex positions, vertex normals, and everything else needed to update the visual mesh.

Posted: Sun Mar 16, 2008 8:47 pm
by Halifax
Hmm, well I am sorry to say but Newton is a little behind. Especially for the fact that "The AGEIA PhysX SDK is now free for use on PC under our new EULA--for both commercial and non-commercial use" (devsupport.ageia.com 1).

@JP: Wow, that sounds like a cool idea. And yeah I was thinking it was more than PhysX when I watched the demo too. But trust me, I don't think that all that water there was dynamic. I thinking they had some imposter water in there after you go out a little bit.

I imagine that UnrealEd provides some great features to edit those soft-body physics, and destructible environments.

EDIT:

It appears that Ageia provides its own TetraMaker soft body physics. And from the understanding that I am gaining, it works like how you described JP. You create the material parameters, etc., and then it interacts with the world, and gives you the updated vertices basically. Then your would plug those vertices into you rendering engine. I still don't know about the destructible environment though, but eh.

Posted: Sun Mar 16, 2008 10:41 pm
by agi_shi
Halifax wrote:Hmm, well I am sorry to say but Newton is a little behind. Especially for the fact that "The AGEIA PhysX SDK is now free for use on PC under our new EULA--for both commercial and non-commercial use" (devsupport.ageia.com 1).
Yeah, considering Newton has 1 nice, determined programmer, and PhysX has 100s of paid programmers -_-

Tell me, will a PhysX developer personally answer all your questions and provide you with ready-to-go code for stuff you need but can't make? Does PhysX even have some kind of support forums?

Posted: Sun Mar 16, 2008 11:14 pm
by Halifax
agi_shi wrote:
Halifax wrote:Hmm, well I am sorry to say but Newton is a little behind. Especially for the fact that "The AGEIA PhysX SDK is now free for use on PC under our new EULA--for both commercial and non-commercial use" (devsupport.ageia.com 1).
Yeah, considering Newton has 1 nice, determined programmer, and PhysX has 100s of paid programmers -_-

Tell me, will a PhysX developer personally answer all your questions and provide you with ready-to-go code for stuff you need but can't make? Does PhysX even have some kind of support forums?
I was not trying to belittle the accomplishments of the developers, nor promote the accomplishments of the other developers. I was simply looking at both Newton, and PhysX from a library perspective, and analyzing their positions respective to each other.

PhysX does in fact have a developer support forum. I cannot attest directly to a PhysX developer answering my question, but why should that matter when there are tons of experienced programmers lurking throughout the developer forums.

And why do you seem partial to starting arguments, even though my statement stands correct regardless of the variables?

Posted: Mon Mar 17, 2008 8:49 am
by JP
If you use Physx on PS3 then you do get the developers who are working with the PS3 version supporting you and as Halifax says there is a developer support network for the PC version of Physx as well.

Posted: Mon Mar 17, 2008 8:42 pm
by Halifax
JP wrote:If you use Physx on PS3 then you do get the developers who are working with the PS3 version supporting you and as Halifax says there is a developer support network for the PC version of Physx as well.
You lucky son-of-a-gun, I can't wait to work with the PS3.

Posted: Mon Mar 17, 2008 8:53 pm
by JP
So much better than the fecking PS2 which is doing my ruddy nut in!