Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: 3D monsters  (Read 13402 times)

Harlander

  • Bay Watcher
    • View Profile
3D monsters
« on: July 08, 2001, 12:12:00 pm »

If you do use 3D models for the entities in the game, will you use a single model to represent a certain type of monster, or will you have a set of smaller models representing different types of limbs, heads, etc. to put together to create an image of the particular body shape of the creature?
Logged

Toady One

  • The Great
    • View Profile
    • http://www.bay12games.com
Re: 3D monsters
« Reply #1 on: July 08, 2001, 03:56:00 pm »

I think in the end I've decided to use 3D models.  So how will they work?  The current theory (subject to massive revisions and comments as usual) is a combination of the two things you mention (one model / type, glueing pieces together).

From what I've seen, a 3D model (one that is going to be animated, anyway) will generally be a polygonal mesh, with different polygons associated to different pieces which move independently (like the arm polygons, etc.).

I think I'm going to have stick figures for each form (humanoid, quadraped, etc.).  These stick figures will be animated (relatively simple to do).  Then a given species of creature will have a polygonal mesh which fits over the form stick figure.  There are lots of little tweaks that can be added to this to make it better (scaling, animation modifications to produce different types of gaits, etc.).  If the ends of limbs (elbows, shoulders, necks, knees, etc.) are designed in some uniform fashion, I will also be able to cut and paste parts seamlessly for hybrid creatures (even player designed ones).  Since the game has random creatures, the 3D model structure needs to accomodate all sorts of possibilities with minimal fuss, and I think this is a good starting point.

One of the best features of the 3D stick figures will be that severing body parts graphically becomes a trivial operation.  All you need to do is define some cutting points on the polygonal meshes and some (gory) textures to put on them.  It should really be quite fun to program and to play.

I haven't seen That many modern games myself, so if anyone has any suggestions, you should definitely speak up.  I could be missing some problems or opportunities.

Logged
The Toad, a Natural Resource:  Preserve yours today!

Harlander

  • Bay Watcher
    • View Profile
Re: 3D monsters
« Reply #2 on: July 10, 2001, 04:09:00 pm »

As it happens, I have a suggestion, and it follows on from the talk of severing limbs: blood! There's a few ways you could handle this, the easiest probably being decal textures (as seen in Half-Life and similar games) where you overlay a small (or large, depending on the amount of blood) texture on wherever the blood splatters. Something similar to this could also be used to display cuts, bruises and other injuries that don't lead to the severance of an arm. (A good example of this exists in Black and White.)

One thing that I wonder about is water - I've never seen flowing water handled in 3D in games before (although I've seen 2d implementations of it) .. do you have any idea how you'd implement that? I think that water could get pretty processor intensive, especially if it went on in real time.

(Sorry, that's more of another question than a suggestion..  :p)

Logged

Toady One

  • The Great
    • View Profile
    • http://www.bay12games.com
Re: 3D monsters
« Reply #3 on: July 10, 2001, 10:42:00 pm »

Blood.  Yes.  Armok likes that kind of thing, I suspect  :)  Actually, come to think of it, all of the item sullying, etc. could be displayed...  so a creature could become muddy and so on, and only those parts that became muddy would be covered with mud.  And melted brains...  lots of room to move here.

Water flows are going to be nasty (both in terms of just having the water move right, and to display it).  When you think about all the forces that are at work, it's really impossible to get a sound simulation working in a game (esp. real time, as you mention).  For instance, digging a hole down beside a lake, below the bottom of the lake, over and up.  The water should fill the tunnel all the way back up to the top, regardless of minor variations in tunnel shape...  it just gets ugly.  Or this -- take a cube that's say 20x20x20.  Fill each square randomly either with air, water, or earth.  Assuming the earth is suspended (or not), how would the water settle?

In the face of some of these problems, all that can be done is well, fudging the results.  I won't restrict player actions though...  you will always be able to dig wherever you please, and no matter what it ends up doing, enough water will shift when you dig up through a lake that you will probably be in bad shape.

I haven't thought about the graphics side of it very much.  There are probably some nice examples out there.  Any good waterfalls?  Those should be a good challenge to display nicely (I mean, when you consider the random landscapes and flows as well, the game will have to be able to react quite a bit...  I can't just plan for a few types of waterfalls).

So, yeah, no doubt about it.  Water is one of those real pains.  Kind of like polymorphing, and a few other things...

In actual programming news, I've just finished up a fractal landscape sample.  On my old computer (the 350 w/out a 3D card) I can print about 10000 or so triangles without much of a speed problem, so OpenGL is working nicely.  I've been quite happy with it so far.  I'm going to make some cheesy 3D models to work with over the next few programming sessions.  Then I can make the graphics switch rather quickly.  After that, I'll start heading toward some kind of test release (still around the 3% done mark though  :roll: ).

[ July 10, 2001: Message edited by: Toady One ]

Logged
The Toad, a Natural Resource:  Preserve yours today!