Destructible Environments

Started by
5 comments, last by aDasTRa 23 years, 7 months ago
I have been thinking about writing a 3d engine and from the start i want to include destructible environments (a la Red Faction, for example). The problem is i dont think i can do it with either a portal or bsp based engine. Is there any other type of engine out there that would work better, or does anyone know of a way to do it with either of the above mentioned... also, does any one have any thoughts (or links) about actually doing the destruction of the environment...i have some ideas but they are just that; ideas...i dont know how well they would work out. thanks for the help... <(o)> Edited by - aDasTRa on 9/11/00 10:51:24 PM
<(o)>
Advertisement
I have been thinking about this myself a bit, and if you have a portal engine that uses at least some run-time calculation for visibility, then you could likely make destructible environments in it. You could simply add another arbitrarily-shaped portal wherever you "destroy" geometry, creating a new sector on the other side or linking the sector to another one. Examples: Blowing a hole in the ground would create a new sector shaped like a crater in the ground, shooting bullets through soft walls would create cylindrical sectors connecting two other sectors, etc. And since portal engines carve into apparently full space, you can blow up as much as you want in any direction, omitting perhaps the sky, or clip brushes...

I also want to include this ability, but there has to be a limit somewhere, for instance if you''re trying to recover vital information from a safeguarded location, you dont exactly want to blow the place up before you get the info... and destructible geometry might lead to something as complex as dynamic world integrity, where you can blow out the pillars of a building and make it collapse for example.

I''d be interested in other people''s takes on an implementation.
Assassin, aka RedBeard. andyc.org
i too have been looking at doing a portal implementation and your (assassin) suggestion is exactly what i was thinking. also, i plan on extending this into what you called "dynamic world integrity".

does anyone know much about quad/octrees and how they might help or hinder this? i know very little about them personally but they might be another option still...

<(o)>
<(o)>
does no one else have any thoughts on destructible environments? any response are welcome...

<(o)>
<(o)>
Well, a cheap way to do it, but you could also just treat the parts you want to be able to destroy as objects. It''d work well as long as you don''t have too many things you need to destroy

----------------------------------------
"Before criticizing someone, walk a mile in their shoes.
Then, when you do criticize them, you will be a mile away and have their shoes." -- Deep Thoughts
i have thought of that, senshi. but i want everything to be destroyable...i have thought about just making everything an object, like walls and pipes and support structures. this might be the easiest way to do it, but i dont know how it would work with a more traditional engine like portals...i want the speed and optimizations that come with using an engine like this, and yet the freedom to blow $#!+ up...

<(o)>
<(o)>
Somebody made a Quake I mod where you could blow walls to bits. But it did not affect the integrity of the world, ie If you blew away all the walls the ceiling just hung in mid air! Still, if you could do this it would be a show-stopper.

------------------------------
#pragma twice


sharewaregames.20m.com

This topic is closed to new replies.

Advertisement