• Advertisement

Archived

This topic is now archived and is closed to further replies.

Generally mutilating things

This topic is 6412 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I''m surprised that there aren''t more occurrences of general mutilation in games. If you want the player to be able to slice something in half, there doesn''t need to be a BSP calculator or anything. Just planar-map an alpha map onto two copies of the thing: one totally opaque on top, and the other opaque on the bottom. If you want things to get dented, you already KNOW what triangle was hit from collision detection, you just have to divide it into three triangles w/ a recessed center vertex with a few lines of code. See what I mean? These things aren''t super-hard to implement. So why aren''t they implemented? Any thoughts? lntakitopi@aol.com | http://www.geocities.com/guanajam

Share this post


Link to post
Share on other sites
Advertisement
This is was I keep asking my programer and he is just too lazy. He posts on this forum actually, SOF. Lazy sod. Get programing!

:-)

As Mr Cup always says,
''I pretend to work. They pretend to pay me.''

Share this post


Link to post
Share on other sites
Him, imagine riddleing a wall with an automatic rocket launcher. Now imagine 20,000 dent triangles. Get the picture? Too many triangles are the result.

Share this post


Link to post
Share on other sites
Good point... maybe a system could be designed to slowly "fade" the old dents, like bullethole decals do. You know, have the center vertex slowly move back into the original position, and then have the triangle un-divide. The only problem with that arises when one dent is dented again and again.... that could be a pain to program.

lntakitopi@aol.com | http://www.geocities.com/guanajam

Share this post


Link to post
Share on other sites
Odd thought:
If everything was defined as a mesh {b-spline, nurb, whatever} you could set up a grid of control points. That way when something does get hit, the dent occurs locally, and you just re-tesslate once per hit.

Share this post


Link to post
Share on other sites
I think Duke Nukem 3D has a feature where you can dent garbage cans. :D

- DarkMage139
"Real game developers don't change the rules. Real game developers don't break the rules. Real game developers make the rules!"
"Originality (in games) is the spice of life!"

Share this post


Link to post
Share on other sites
quote:
Original post by SHilbert
I''m not quite following you Do you mean that you have a highly-tesselated mesh to begin with, or that the positions of the dent vertices are precomputed or what?

What I had in mind was something like this:
1} Define the geometry of any deformable/breakable area as a b-spline, bezier patch {probably easiest}, or NURB. With any of these, an array of control points is needed. You can increase the number of control points for finer deformation detail.
2} Tesslate the geometry at runtime with adaptive LOD {only add polygon''s where there''s more curvature} to generate your polygons.
3} When a deforming collision with one of these, trace the polygon back to the control points that created it. {If multiplayer, send this trivially small amount of information to the other clients.}
4} Alter the control points and re-tesslate the polygons. Only do this when their has been a deforming collision to prevent slow-downs.

Good enough explanation?

Share this post


Link to post
Share on other sites
another problem.

what would happen if a peticularily large poly was ''dented''? eg, a floor, ceiling...

Share this post


Link to post
Share on other sites
Hmm, but could you see it? If it''s particularily small {armor on a character, for example} then a bump-map would make more sense.

Share this post


Link to post
Share on other sites

  • Advertisement