[Freeciv-Dev] Re: isometric view (was: Where can I get that Great Tilese
[Top] [All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
On Fri, 01 Sep 2000 14:05:39 Jeff Mallatt wrote:
> At 2000/08/31 16:13 , Thue wrote:
> >>
> >> /\ /\ /\ /\ /\ /\ /\
> >> /x5\/x0\/x1\/x2\/x3\/x4\/x5\ <-- x is 0..5
> >> \y0/\y5/\y4/\y3/\y2/\y1/\y0/\ <-- y is 0 .. 5
> >> \/x6\/x1\/x2\/x3\/x4\/x5\/x6\
> >> \y0/\y5/\y4/\y3/\y2/\y1/\y0/\
> >> \/x7\/x2\/x3\/x4\/x5\/x6\/x7\
> >> \y0/\y5/\y4/\y3/\y2/\y1/\y0/\
> >> \/x8\/x3\/x4\/x5\/x6\/x7\/x8\
> >> \y0/\y5/\y4/\y3/\y2/\y1/\y0/\
> >> \/x9\/x4\/x5\/x6\/x7\/x8\/x9\
> >> \y0/\y5/\y4/\y3/\y2/\y1/\y0/\
> >> \/10\/x5\/x6\/x7\/x8\/x9\/10\
> >> \y0/\y5/\y4/\y3/\y2/\y1/\y0/
> >> \/ \/ \/ \/ \/ \/ \/
> >>
>
> If I understand the discussion so far, Thue's isometric numbering is simply
> rotating the current numbering 45 degrees clockwise, right? If so, this is
> the idea I'd vote for, as it can be mapped onto a flat display for
> compatibility.
>
> (I'm confused by the above diagram, in which the far left "column" seems to
> me to be numbered incorrectly. Am I missing something?)
The repeated row is just to show the wrapping of the map.
> Anyway, with a numbering like this, it would be possible for a isometric
> client and a flat client to connect to the same server at the same time.
> It's just that the "world shape" would be different -- one would see North
> along the top, the other would see North along an upper diagonal.
>
> What I want to see, however, is a server option to orient/number the map
> such that either isometric or flat is more natural. In other words, given
> a flat client, I want to be able to configure the server (must be before a
> game is generated) so that I see exactly what I see now -- a rectangular
> world with North along the top. Similarly, given an isometric client, I
> want to be able to configure the server so that the world is rectangular
> (well, as close as diamonds can be) with North along the top.
>
> This should be easy, compared to the rest of the changes needed for
> isometric, and allows for maximal compatibility with old save-files.
>
> I believe this modification breaks up naturally into at least two distinct
> patches: 1. Display of "inflated" tiles (includes adding customizable black
> borders around entire map; this is something I've wanted for quite a while
> :); 2. Change to allow rotated map of varying shape (for isometric;
> probably the bigger change).
>
> The first part can be used immediately to, e.g., draw city icons larger
> than will fit in one tile and for roads/railroads so that diagonal
> connections don't have little nicks out of them at the corners.
>
> jjm
It will also require some server changes for the naturally isometric view, in
that the map_adjust_[xy]() functions will not work. (as I mentioned, you need
both the x and the y coordinate to evaluate a tile). I recomment the use of
normalize_map_pos(x,y).
so part 3.: convert server code. This is not very hard, and can be done
gradually as it is backwards compatible. Anyway, the current code doesn't do a
very
good job at it and needs to be fixed
(sorry I was so long answering this, I have a backlog in my mailbox...)
-Thue
|
|