How to? Dismemberment with Seamless Models.

Posted By: miez

How to? Dismemberment with Seamless Models. - 09/15/11 09:48

After playing Dead Space I want to know which ways exist, to destroy objects and dismember creatures.
And no, I donīt want to make Dead Space...
I know some ways, but I donīt understand the technical side of some of them.

Quake II made it with simple animation\replacement of the Model, so that the injuries were predefined.
Disadvantage: you shoot the legs and the head of the enforcer disappears... strange. So I donīt want to use this for my project.

Turok 2 had one centerentity with attached limbs, with the limbs having own hitboxes.
If the limb was hit, it was removed and the centerentity reacted to it.
This was not bad, but the disadvantage was, that it was
clearly visible, that the Models were attached.
They had ugly seams. With machines there is no problem, because they are assembled,
but for living creatures this is not, what I want to achieve.

Then Dead Space has seamless models with fixed points, where they can be dismembered.
The same thing for Mortal Kombat 2011. There is absolutly no visible hint, that there is anything removeable...
Something similar I would like to use, even if that is still not perfect.
But I have no clue, how this has been done.
This seamless-thing is, what is most important to me, to have the models look consistent.

Then I read about a Metal Gear game, I dont know the title,
where a guy with a sword is (or will be) the main protagonist, and they wrote,
that it is possible in the game, to cut ANYTHING that is destroyable in the world DYNAMICALLY.
The way he slashes is the exact way the blade cuts.
I imagine it like the slice plane in the WED editor for cutting blocks.
If it is true, how could this be achieved?
I think there is a huge lot of calculating going on there...
That would be my favorite (of course) but I donīt think, that could be realistic to be achieved by me.

Anyone knows how that all works?
Do you know any other additional ways used?
Posted By: lostclimate

Re: How to? Dismemberment with Seamless Models. - 09/15/11 11:06

have a model that has several versions that get swapped out based on what part of the model is hit. it will take up a lot of space if you have vertex anims, but will look fairly reallistic without a large amount of dynamic calculation.
Posted By: Error014

Re: How to? Dismemberment with Seamless Models. - 09/15/11 11:33

Maybe you'll find this interesting.

Fair warning: There's some imagery in there that may not be for everyone. Depending on your love for blood and gore.
Posted By: Shadow969

Re: How to? Dismemberment with Seamless Models. - 09/15/11 11:46

neat paper, thanks Error!
Posted By: Kartoffel

Re: How to? Dismemberment with Seamless Models. - 09/15/11 11:51

I think FULLY dynamic dismembering (that you can cut off 'things' at any position) isn't possible with 3DGS. But I've got two ideas. I don't know
if it works but you can try it:

1: You can use different skins together with the OVERLAY-flag (which makes every black (0,0,0) pixel transparent). 'just' change the
skin to another, where everything which shouldn't be visible is black.

2: The same method - but using a shader and a mask instead of different skins. A bit complicated if you don't know much about shaders, but it would be possible to make any combination of areas invisible with only using 2 skins (it would be also possible with one).
Posted By: Myrkling

Re: How to? Dismemberment with Seamless Models. - 09/15/11 12:33

You could also use vmask to hide certain parts of a model.
Posted By: bart_the_13th

Re: How to? Dismemberment with Seamless Models. - 09/16/11 02:31

Originally Posted By: Kartoffel
I think FULLY dynamic dismembering (that you can cut off 'things' at any position) isn't possible with 3DGS.


I think it's still possible, I know how to put holes in a body via shader, basically using your 2nd way(I've done this sometime ago) but I can't figure how to cap the hole(until I read Error's post). From what I read, valve is using inverted sphere to cap the holes and using normal testing on the main model to decide which part of the sphere's model that should be shown(smart move).
Posted By: lostclimate

Re: How to? Dismemberment with Seamless Models. - 09/16/11 08:04

it is, it just takes a lot of fancy math and vertex movement. a lot of work, enough where if i was lonewolfing it or working on a small team, i wouldnt want to try it, there is more important things that will take long enough as is. i'd just have a few varied ways of letting him be dismemebered and leave it at that.

id also guess if you were using a 3rd party physics engine like havok it might be doable through that in some ways, but that kinda integration would also be kinda tough to do as well.

Posted By: Kartoffel

Re: How to? Dismemberment with Seamless Models. - 09/16/11 10:34

Well... yes, saying that it isn't possible with 3DGS isn't right. Everything is possible in 3DGS.

But it's often a lot of work and everyone who wants to make something really complicated should think about if it is really worth it.
Posted By: miez

Re: How to? Dismemberment with Seamless Models. - 09/17/11 14:06

Good.... Reading Valves (very intersting) stuff and some of the posts, I seem to have to restrict myself drastically in damagemodels.
In first place, it was the general technical side of "how did they do that", what had interested me.
And it gave very interesting insights.
And once again it proves, that the simple looking, rather unspectacular effects are the most hardest to achieve.

Now to my desingn-decision (I have not started a project):
Dismemberment\destruction would not be essential or important part of the game.
This would be more or less just eyecandy.
There seem just two possible ways, that I could implement.
But which one should I choose?
This is important, so that I know how to build up my models from the start up.

1. The Turok 2 Way. Attached Limbs on center-entity.
or
2. Create all the different damaged variants of the model and
interchange them based on the areas hit.

I want to use Bones-animation and Ent_Decal. But I suppose that ent_decal will not work with solution #2.
Because I think, when I change the model, the applieed decals disappears together with the exchanged model.
Posted By: Germanunkol

Re: How to? Dismemberment with Seamless Models. - 09/18/11 10:13

Use OGRE 3d and manipulate the mesh in realtime grin

This would be a load of coding though. But in the end you'd have a system that has different damage on objects every time you destroy them, plus it'll run on mac and linux^^

Sorry, have never done it with 3dgs, and can't imagine doing it either... Sure, it's possible, but it'll be much 3d work in your modeling program.
Posted By: nomis23uk

Re: How to? Dismemberment with Seamless Models. - 09/18/11 22:18

Originally Posted By: Germanunkol
Use OGRE 3d and manipulate the mesh in realtime grin

This would be a load of coding though. But in the end you'd have a system that has different damage on objects every time you destroy them, plus it'll run on mac and linux^^

Sorry, have never done it with 3dgs, and can't imagine doing it either... Sure, it's possible, but it'll be much 3d work in your modeling program.


well done on the worlds most contradicting post of all time.

So what your saying is no matter what game engine the OP uses there be a alot of coding involved?

Wouldnt it be easier to just stick to what the OP knows best and going based on them posting on a 3dgs forum board im going to take a stab in the dark and say they know 3dgs better.

To make this post a little more helpful and less of a flame, is there nothing about destruction in the AUM's?

nomis.
Posted By: lostclimate

Re: How to? Dismemberment with Seamless Models. - 09/19/11 02:31

thats a good question. i would guess if so its pretty old, and uses the turok gibs type method.
Posted By: bart_the_13th

Re: How to? Dismemberment with Seamless Models. - 09/19/11 06:00

Originally Posted By: Germanunkol
Use OGRE 3d and manipulate the mesh in realtime grin


I believe 3DGS has the function to that. Just need to ent_clone the entity so the mesh manipulation doesn't affect all entities using the same mesh.
Posted By: Roel

Re: How to? Dismemberment with Seamless Models. - 09/19/11 20:31

A discussion of this question can be found here:

I doubt if it will help, but it is possible to do with 3dgs.
there are some users that create meshes on the run(there is a demo in the 256kb contest somewhere).
It involves a lot of work, but if it works... you've got a killer effect.
Posted By: fogman

Re: How to? Dismemberment with Seamless Models. - 09/21/11 10:57

http://www.wasteland.at/256kontest/256k_TBNICCUW.zip
Posted By: Germanunkol

Re: How to? Dismemberment with Seamless Models. - 09/21/11 12:40

nomis23uk, I'm sorry but I really don't understand how my post was contradicting, nor what you mean.
Quote:

So what your saying is no matter what game engine the OP uses there be a alot of coding involved?

... no, what I meant was that if making the system dynamic, i.e. coding the damage parts instead of modeling them, - which would be possible in Ogre 3d and maybe possible in 3dgs - that would be the coolest way (because then you can truly destroy every part of pretty much any object you'd want to destroy) but the most coding work. The second part of my post was meant to say that in 3dgs, I would chose the methods posted by others before, where models (or parts of models) would have to be exchanged, but this is a ton of modeling work.
Posted By: Rackscha

Re: How to? Dismemberment with Seamless Models. - 09/21/11 15:19

As already said before:

Why not use vmask? this handy bitmask allows you to hide certain meshgroups from a model.

Its a single model, but you can clip arms/head/legs independently laugh
Posted By: miez

Re: How to? Dismemberment with Seamless Models. - 09/23/11 11:41

Also...

Realtime manipulation is (as I expected) no option for
me, because it is as complex as I expected to sever meshes, create triangles and texture them.

Vmask... the parts of the models are just clipped visually?
This must have disadvantages... how would it work in detail specific for gamestudio?

(Reading manual regarding Vmask).....

You are Right. Vmask gives great possibilities. And I found
through that, that I can bones give names and can detect them via C_traces Hit structure through the vertex attached to the bone.

I have to experiment when I need it.
Posted By: EvilSOB

Re: How to? Dismemberment with Seamless Models. - 09/28/11 10:50

There is another way that I was playing with a while back, and will do again eventually.
It cant hold a candle to valves effects, and there are still significant limitations,
but I was only at an EARLY stage of development when I put it on hold.
(No performace testing or its like have been performed either. So if anyone can see
any significant factors I havent taken into account, I would like to hear them.)


Most importantly, it fits your requirements. ie Single-mesh models, with bones.

Just follow these steps in your head, and if anyone wants to ask any questions for clarification
or on the reasoning behind any step, just ask.


1: Identify the bone whose HINGE will be the severing point. We will call it "CHOP".
2: Duplicate whole model, including skins and bone-positioning and origin-point.
3: On the ORIGINAL, re-scale the CHOP bone (and all its children) down to 0.001.
4: On the DUPLICATE, re-scale all the bones EXCEPT the CHOP bone(and its children) down to 0.001.
5: Create two "meat ball" entities, and scale them to match the "stumps" of each model.
6: Attach one meat-ball to each entity's "stump".
7: Make sure the duplicate (and its meat-ball) is PASSABLE relative to the original model.
8: Apply physics to the duplicate, and add any sound/visual effects required.
© 2024 lite-C Forums