This is the mail archive of the xconq7@sources.redhat.com mailing list for the Xconq project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Proposed change, fundamental invariant


Hans Ronne wrote:
> 
> The theory was simple. A cylindrical gworld (or rather a cylindrical
> mapping from gworld to screen). That's why you can scroll around the world
> as many times as you like without redrawing anything on the mac. The UNWRAP
> macros just draw everything that crosses the dateline (the seam in the
> mapping) twice, at each end of the gworld. Important to get everything
> right.
> 
> I don't think that you could get this to work with the isometric views,
> though. The problem is that all six views are skewed with respect to the
> axis of the world cylinder. I guess it's not possible to get truly
> isometric drawing that is just a slanted version of the normal map (like on
> the mac) or you would already have gone for that?

Yeah, to get an isometric display to wrap nicely, the world seam would have
to run along an x = -y axix, and the bottom edge would be along an x = y/2
line.  A very different geometry...

The "Mac way" was a cheap hack, and is visually difficult - two of
the faces are edge-on to the viewer, and thus offer no hints about any
elevation change.  In retrospect, it might have been better to lay out
the overhead view so that a hex face was at the bottom instead of a vertex,
then isometric is simple.

The current hex layout was motivated by a combination of simplicity in
converting from squares, and by a limitation in X servers of the time,
where everything was slow except for text drawing.  So the hex and unit
shapes were actually characters in special fonts, and Xconq drew the map
as constant-color runs of strings like "ooooo", each positioned to overlap
correctly.

Stan

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]