adonthell-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Adonthell-devel] Re: Update on collision work


From: Kai Sterker
Subject: Re: [Adonthell-devel] Re: Update on collision work
Date: Tue, 18 Dec 2007 16:23:25 +0100

On Dec 18, 2007 3:29 PM, Andrew Phillips <address@hidden> wrote:

> Thanks for the updates, Kai.

I kind of hate replying to myself, but sometimes it also helps staying focused.


> Do smoke, fog, water, and ghosts need to be thought about from a physics
> perspective, from a graphics perspective, or both?

Depends a bit on the type of object, but all have some problems with
either physics or rendering.

Physics for smoke, fog, water and the like should work fine as  soon
as we can tell the collision code to completely ignore them. That will
be another flag, or lack of 3D shape data ... no big deal.

Rendering will be a problem though, because our simple rendering
algorithm will no longer work. For example, if you have a character
walking through shallow water, the water behind the character needs to
be drawn first, then the character, then the water in front of the
character. The general idea would be to draw such objects in "slices",
as you might have any number of vertical objects sticking out.
(Imagine a forest with ground fog, for example).

For solid objects, there are no such problems as you shouldn't have
anything sticking through them (if so, it's a problem with placement
on the map).

Anyway, I guess it can be done by extra checks for non-solid objects
during the rendering phase. Once we have figured out where vertical
objects stick through, they could be split up into multiple pieces and
rendered in the appropriate order. The effects achievable by this
would be quite nice, I believe. For example, we could have "real" high
grass that obscures lower parts of characters, etc ...


For moving objects like ghosts, the collision code needs more
changes.There are two distinct calls to the collision system: the
first one is for "ordinary" movement, the second one for gravity. By
skipping the first call, ghosts could move without bumping into stuff.
And making the second call with reduced gravity pull, they would
generally stick to the ground and float downwards slowly and
gracefully (instead of dropping like a lemming) if they ever walked
over the edge of a cliff.

That doesn't cover going upwards though ... instead they would
probably just walk through a wall and fall through the geometry
because there would be no floor behind ... so there needs to be some
extra logic for those cases. Either as part of the collision stuff, or
in their path finding routine, or both.

Kai




reply via email to

[Prev in Thread] Current Thread [Next in Thread]