- BS1/BS2 you saw corpses turn into 'lockboxes', that was to prevent the game from having to render all the human figures which are fairly complicated and consume alot of GPU rendering power. So they converted the oldest bodies to something much cheaper to render (making the game work adaquately on lower end computers).
- For BS1/BS2 when you struck the terrain with your wrench or fired bullets at it it left marks (called 'decals' in the graphics world). Ive gone around in those games doing that to everything and they have quite a variety different surface types each with its own 'mark' patterns and sound effects and visual special effect (bits flaking off, a steam leak from a pipe, a small cloud of dust). Those marks over time will go away (and if you do many quickly you will notice there is some limit of how many it will draw at once and it will 'clean up' the oldest ones as you cause new ones to be made. The limit was sufficiently large that you generally wont notice it.
- In BS1/BS2 there are a number places there are special terrain features that let you 'break-thru walls'. They are 'precanned' built into the scenery to function that way (and I wish there were at least 3X as many and some hidden a little better to make the terrain more interesting).
- This proposed MMORPGs Terrain is modular - made up of many terrain objects (instead of large sections of fixed/static mesh terrain that 'levels' area usually composed of). Walls/ceiling/floor are all subdivided into smaller objects which can be individually manipulated/mutated. Whole chunks of buildings might be reduced to rubble simply by substituting the sub-objects.
- Individual 'terrain' objects can be changed significantly, deformed or even removed/substituted.
You fire your flamethrower at a wall and it is scorched, that causes a burnt appearance (a texture change with no real change of shape). Decals can be applied as well to vary the scorch marks significantly.
You then fire a grenade launcher at the wall and the facing inner wall is cratered and caved in - that section of wall (and object) has a substitution made (new object takes the place of the undamaged wall section) with a proper damaged shape/look and probably rubble/pieces on the floor (secondary objects).
The 'patch' (substitution object) is either a precanned 'impact damaged' wall section, OR in a more complicated system, a new object is built 'on-the-fly' with a customized 3D mesh with an appriopriate customized caved-in shape (if you hit to one side of the wall slab the damage would be centered to that side, or to the right/left/up/down or even accumulative of several hits).
- The damage in this game is 'persistant':
if you come back later that caved-in wall should still be there (unless someone else (player or NPC) came and destroyed it more or repaired it.
It might even crumble further with time (a 'degradation' script could handle that) or if it was wood - get waterlogged and degrade. Burnt things may burn and be nothing but ash.
- A deformable terrain system is more complicated and requires more work:
If you use simpler 'precanned' states-of-object-damage, you have to create all the additional variations of the mesh/textures for all objects (ALL objects in game are subject to damage). Many are just texture changes, others are mesh changes, while others may be the object blown apart and now in little pieces strewn about.
A complex on-the-fly 'patch' systems requires 'damage effect scripts' to modify an object's mesh pattern.
It is possible that both systems could be used, with the more complicated/difficult scripting method being reserved for the most visually positive effect.
A problem with complex 'patching' is a unique set of data is created and has to be saved in the server (and sent to any client that views it). Complex damage shapes increases the rendering load.
One advantage to scripting based patching is many damage patterns are similar and the same scripts can be reused for different object types (the damage scripts can be 'parameterized' for variations like concrete vs stone vs wood). You would then not need to create 'canned' assets for every possible state (and combination of effect states).
- This system allows great variations of terrain :
In styles and colors, and in the state of different sections (clean/grubb/damaged/obliterated)
Compatible substitutions can be made with wall section replaced by: a utility access hatch, or a window, a small alcove, a builtin bookcase, a fireplace, etc... Same for floors and ceilings.
Details (seperate objects) can then be hung on the wall surfaces or attached to the ground -- allowing even more variations.
- Players 'Repairing' Rapture:
Terrain can start as bombed out/waterlogged/mouldy and be incrementally fixed up.
Player's would cause wall sections to be cleaned/restored/repainted/etc.. or the old rubbled section removed and a new intact section put up in its place.
A player may have to 'take down' a wall section (they are built modular after all) to get at whats behind it to do repairs (pipes, electical lines, to get at a leak in the concrete structural wall behind, to extract the dead Splicer thats been creating a smell, etc..).
Sections from other locations can be (salvaged and) brought in to replace wrecked wall/flor/ceiling sections when rebuilding an area.
There are still many wrecked 'rooms' even in the showcase City Center that were closed off 'til later'. They can be restored to 'pristine' state (...eventually - a be a high value property for the player who fixed it up.)
Client Rendering Load:
- Increased GPU capabilities have allowed more objects to be represented in the 3D Rendering views.
- Bioshock is a room oriented terrain, with walls blocking most long views and restricting the player to seeing a fairly small volume.
- While in a room, the rendering is largely limited to whats in that room (everything out-of-view blocked by walls need not be drawn).
- When you are facing a direction in a room, only the objects in your front view need be drawn (holds for 'over-the-shoulder' views as well).
- Distant objects do not have to be drawn with full detail (a simplified rendering will suffice when its too far away for you to see find details)
- Undamaged walls are usually simper in shape (a flat plane) and thus easier to draw.
- All the standalone and detailing objects (complex shapes) will likely take alot more of the rendering resources.
- The usual slider control that changes viewing quality is would be provided to adjust LOD (Level Of Detail) at different ranges which simplifies more distant objects (to lower the GPUs rendering load).