1998Q1/
<!-- MHonArc v2.4.4 -->
<!--X-Subject: Re: [MUD&#45;Dev]	3D engines for MUDs -->
<!--X-From-R13: ptNnzv&#45;pt.UenlEntr.Sqzbagba.OP.QO (Quevf Uenl) -->
<!--X-Date: Mon, 23 Mar 1998 23:21:16 +0000 -->
<!--X-Message-Id: 9803232052.8w4u@ami&#45;cg.GraySage.Edmonton.AB.CA -->
<!--X-Content-Type: text -->
<!--X-Head-End-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title>MUD-Dev message, Re: [MUD-Dev]	3D engines for MUDs</title>
<!-- meta name="robots" content="noindex,nofollow" -->
<link rev="made" href="mailto:cg#ami-cg,GraySage.Edmonton.AB.CA">
</head>
<body background="/backgrounds/paperback.gif" bgcolor="#ffffff"
      text="#000000" link="#0000FF" alink="#FF0000" vlink="#006000">

  <font size="+4" color="#804040">
    <strong><em>MUD-Dev<br>mailing list archive</em></strong>
  </font>
      
<br>
[&nbsp;<a href="../">Other Periods</a>
&nbsp;|&nbsp;<a href="../../">Other mailing lists</a>
&nbsp;|&nbsp;<a href="/search.php3">Search</a>
&nbsp;]
<br clear=all><hr>
<!--X-Body-Begin-->
<!--X-User-Header-->
<!--X-User-Header-End-->
<!--X-TopPNI-->

Date:&nbsp;
[&nbsp;<a href="msg00865.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00867.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Thread:&nbsp;
[&nbsp;<a href="msg00876.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00791.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Index:&nbsp;
[&nbsp;<A HREF="author.html#00866">Author</A>
&nbsp;|&nbsp;<A HREF="#00866">Date</A>
&nbsp;|&nbsp;<A HREF="thread.html#00866">Thread</A>
&nbsp;]

<!--X-TopPNI-End-->
<!--X-MsgBody-->
<!--X-Subject-Header-Begin-->
<H1>Re: [MUD-Dev]	3D engines for MUDs</H1>
<HR>
<!--X-Subject-Header-End-->
<!--X-Head-of-Message-->
<UL>
<LI><em>To</em>: <A HREF="mailto:mud-dev#null,net">mud-dev#null,net</A></LI>
<LI><em>Subject</em>: Re: [MUD-Dev]	3D engines for MUDs</LI>
<LI><em>From</em>: <A HREF="mailto:cg#ami-cg,GraySage.Edmonton.AB.CA">cg#ami-cg,GraySage.Edmonton.AB.CA</A> (Chris Gray)</LI>
<LI><em>Date</em>: Mon, 23 Mar 98 13:52:19 MST</LI>
<LI><em>>Received</em>: by ami-cg.GraySage.Edmonton.AB.CA (V1.17-beta/Amiga)  id &lt;8w4u#ami-cg,GraySage.Edmonton.AB.CA&gt;; Mon, 23 Mar 98 13:52:19 MST</LI>
</UL>
<!--X-Head-of-Message-End-->
<!--X-Head-Body-Sep-Begin-->
<HR>
<!--X-Head-Body-Sep-End-->
<!--X-Body-of-Message-->
<PRE>
[Niklas Elmqvist:]

[snippage]

:Anyway, using this scheme, we get a nifty way of viewing and designing
:the macro-geography of our world (by first generating the world
:map and then possibly tweaking it a little with some kind of editor), as
:well as blending together the boundaries of adjacent submaps.

You're on track with me here. However, as I previously mentioned (which
was the trigger for my current sidetrack into bytecode), you don't need
to actually store any height maps anywhere. If you are carefull with how
you do your pseudo-random numbers, basing them only on a single fixed
seed and the co-ordinates, you can, at will, generate reproducible heights
for any part of your map. This is the full map of your world (about
16 million squared in my case, at least tentatively).

The key question I'll be looking at soon (hah!) is how to effectively
store the exceptions. A builder asks for an image of the height-map for
the area he is messing with, and decides to fiddle it a bit, by raising
or lowering some key points. You need to store those changes in such a
way that you don't need tons of storage, but also so that retrieval based
on the co-ordinates is fast. One possibility I've been thinking about is
to artificially introduce actual stored maps for levels in the hierarchy
where changes have been made. I want those small enough to not be too
large, yet large enough to make them worthwhile, storage-wise. I've
tentatively chosen 16 x 16. So, if a huge part of the world gets modified
by a builder, then perhaps the top 16 x 16 map actually exists, and contains
the generated height values as well as the explicitly modified ones. Each
element of the array can also contain a different seed to use for the
detail beneath it, thus allowing a builder to experiment to find a "good"
seed for that sub-area, without changing the global seed used for the rest.

--
Chris Gray   cg#ami-cg,GraySage.Edmonton.AB.CA


</PRE>

<!--X-Body-of-Message-End-->
<!--X-MsgBody-End-->
<!--X-Follow-Ups-->
<HR>
<!--X-Follow-Ups-End-->
<!--X-References-->
<!--X-References-End-->
<!--X-BotPNI-->
<UL>
<LI>Prev by Date:
<STRONG><A HREF="msg00865.html">Re: [MUD-Dev] Describe Concept</A></STRONG>
</LI>
<LI>Next by Date:
<STRONG><A HREF="msg00867.html">Re: [MUD-Dev]  Jukebox</A></STRONG>
</LI>
<LI>Prev by thread:
<STRONG><A HREF="msg00876.html">3D engines for MUDs</A></STRONG>
</LI>
<LI>Next by thread:
<STRONG><A HREF="msg00791.html">Re: [MUD-Dev]	(fwd) Functional Security</A></STRONG>
</LI>
<LI>Index(es):
<UL>
<LI><A HREF="index.html#00866"><STRONG>Date</STRONG></A></LI>
<LI><A HREF="thread.html#00866"><STRONG>Thread</STRONG></A></LI>
</UL>
</LI>
</UL>

<!--X-BotPNI-End-->
<!--X-User-Footer-->
<!--X-User-Footer-End-->
<ul><li>Thread context:
<BLOCKQUOTE><UL>
<LI><STRONG>3D engines for MUDs</STRONG>, <EM>(continued)</EM>
<ul compact>
<LI><strong><A NAME="00851" HREF="msg00851.html">3D engines for MUDs</A></strong>, 
Niklas Elmqvist <a href="mailto:d97elm#dtek,chalmers.se">d97elm#dtek,chalmers.se</a>, Mon 23 Mar 1998, 19:17 GMT
</LI>
<LI><strong><A NAME="00861" HREF="msg00861.html">Re: [MUD-Dev] 3D engines for MUDs</A></strong>, 
J C Lawrence <a href="mailto:claw#under,engr.sgi.com">claw#under,engr.sgi.com</a>, Mon 23 Mar 1998, 20:52 GMT
<UL>
<LI><strong><A NAME="00873" HREF="msg00873.html">Re: [MUD-Dev] 3D engines for MUDs</A></strong>, 
Ling <a href="mailto:K.L.Lo-94#student,lboro.ac.uk">K.L.Lo-94#student,lboro.ac.uk</a>, Tue 24 Mar 1998, 14:58 GMT
<UL>
<LI><strong><A NAME="00876" HREF="msg00876.html">3D engines for MUDs</A></strong>, 
s001gmu <a href="mailto:s001gmu#nova,wright.edu">s001gmu#nova,wright.edu</a>, Tue 24 Mar 1998, 15:30 GMT
</LI>
</UL>
</LI>
</UL>
</LI>
<LI><strong><A NAME="00866" HREF="msg00866.html">Re: [MUD-Dev]	3D engines for MUDs</A></strong>, 
Chris Gray <a href="mailto:cg#ami-cg,GraySage.Edmonton.AB.CA">cg#ami-cg,GraySage.Edmonton.AB.CA</a>, Mon 23 Mar 1998, 23:21 GMT
</LI>
</ul>
</LI>
<LI><strong><A NAME="00791" HREF="msg00791.html">Re: [MUD-Dev]	(fwd) Functional Security</A></strong>, 
Chris Gray <a href="mailto:cg#ami-cg,GraySage.Edmonton.AB.CA">cg#ami-cg,GraySage.Edmonton.AB.CA</a>, Fri 20 Mar 1998, 16:47 GMT
<LI><strong><A NAME="00789" HREF="msg00789.html">Re: [MUD-Dev]  (fwd) Functional Security</A></strong>, 
Felix A. Croes <a href="mailto:felix#xs1,simplex.nl">felix#xs1,simplex.nl</a>, Fri 20 Mar 1998, 16:40 GMT
<LI><strong><A NAME="00776" HREF="msg00776.html">(fwd) Functional Security</A></strong>, 
J C Lawrence <a href="mailto:claw#under,engr.sgi.com">claw#under,engr.sgi.com</a>, Fri 20 Mar 1998, 00:04 GMT
<UL>
<LI><strong><A NAME="00777" HREF="msg00777.html">Re: [MUD-Dev]  (fwd) Functional Security</A></strong>, 
Ling <a href="mailto:K.L.Lo-94#student,lboro.ac.uk">K.L.Lo-94#student,lboro.ac.uk</a>, Fri 20 Mar 1998, 03:16 GMT
</LI>
</UL>
</LI>
</UL></BLOCKQUOTE>

</ul>
<hr>
<center>
[&nbsp;<a href="../">Other Periods</a>
&nbsp;|&nbsp;<a href="../../">Other mailing lists</a>
&nbsp;|&nbsp;<a href="/search.php3">Search</a>
&nbsp;]
</center>
<hr>
</body>
</html>