Am 16.04.2008 um 19:49 schrieb James Nash:
However, something occurred to me while reading these mails:
Will we run into problems if we have very high or low locations
(e.g. mountain locations)? If we imagine Waste's Edge to be more or
less ground level, then map objects in Uzdun Kal might have massive
z-offsets. Apart from making rendering harder this would probably
be hard to represent in a map editor GUI too.
I hadn't thought of it in terms of the editor yet, but shortly after
sending the last mail, I figured there could be issues with that.
For example, if the map view wants to center on the player, it needs
to have a z offset too. This adds more complexity to keeping it
centered also. For example, we wouldn't (probably) want the map view
to follow the player when jumping. I guess it would look odd if the
character seems to stand still while the landscape moves around him.
On reaching firm ground (like when jumping up to a higher level), the
map view should then center on that new ground level again. And it
should do so smoothly, especially when falling longer distances. I
think that can be made to work, though :-). We already know the
height of the ground below the character (for drawing the shadow), so
we only need to implement the smooth transition to the new ground
level. If that transition speed would coincide with the speed of a
character falling, it should be fairly pleasant to the eye.
Another issue is that the map grid needs to be large enough to keep
references to those objects, which might end up outside the actual
area of the map after the projection. At first I thought they can be
simply discarded, as they are outside the view, but this is only true
as long as the view would stay at ground level zero. But it won't.
I'm not sure how the map format works at the moment, but I assume
we won't have a single massive file representing the whole
(outside) world. Assuming things get split into smaller maps, I
suppose objects will only need z-offset relative to the map their
on, which shouldn't get too big. However it would be nice if the
player can walk seamlessly from one map to another and if that's
possible you'd need a way to describe one map's z-offset relative
to another map.
The final map format needs to be determined yet. So far it would be
one big file, but as the area that is covered grows, we might have to
change that.
Again, it looks like it would make sense to chop the map into smaller
parts for the rendering. These could have a base z offset and all the
actual objects would be placed relative to that. I hope that comes
close to what you suggested.
I like that idea, since it means the "overflow" (i.e those objects
ending up outside the map area after the projection to the base z
offset) would be much smaller.
I still think I'll start simple with our single map area. But I'll
add in a base offset (of zero) as that appears to be the thing to do.
And I'm glad I haven't committed my map view implementation yet.
Seems like it needs a bit of a rewrite too :-).
Kai
_______________________________________________
Adonthell-devel mailing list
Adonthell-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/adonthell-devel