Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Fit An Entire Planet In 90k

timothy posted about 13 years ago | from the really-neat-stuff dept.

Graphics 122

missingmatterboy points out this "interview with Dr. Ken "Doc Mojo" Musgrave, a computer graphics pioneer who worked with Benoit Mandelbrot generating fractal landscapes and who's designed custom shaders for Hollywood movies. His latest project is called MojoWorld and it uses the power of math to generate infinite-resolution fractal landscapes? one entire planet at a time. It's going to have an open SDK and, to top it all off, a Linux version is also in the works." This is a fascinating project.

Sorry! There are no comments related to the filter you selected.

Or... (-1)

Anonymous Coward | about 13 years ago | (#2410153)

Do calculus all day long! Ahh yes, integrals.... fundamental theorem! Orgasm!

Re:Or... (-1)

cyborg_monkey (150790) | about 13 years ago | (#2410163)

Shut up, foo. No one wants to hear some patsy complain about shit like that.

Fuck you for wasting a first post.

Re:Or... (-1)

Sunken Kursk (518450) | about 13 years ago | (#2410166)

Claim it! Claim it! You got the first response, it's yours! AC fool doesn't have the power to protect it!

Re:Or... (-1)

cyborg_monkey (150790) | about 13 years ago | (#2410177)

I would like you, Sunken Kursk, to have this first post.

BTW, did they pull your sorry ass from the bottom of the sea yet?

Re:Or... (-1)

Sunken Kursk (518450) | about 13 years ago | (#2410185)

I will humbly accept this first post. Thank you kind sir

Nope, but you're correct in saying they're trying to lift my ass off the bottom. They've cut my bow off because it's so damaged, so my ass is all they're going to get.

What about yourself. Have they released you back into the wild, or are you still plugged into the machines at the lab?

Re:Or... (-1)

Sunken Kursk (518450) | about 13 years ago | (#2410218)

I'll be damned! [] They have gotten me off the bottom! My bad!

Re:Or... (-1)

Fecal Troll Matter (445929) | about 13 years ago | (#2410242)

Fuck, that FP was totally mine...

oops (0)

Anonymous Coward | about 13 years ago | (#2410165)

I might be more impressed if their still image gallery page would render in Mozilla 0.9.4.

Re:oops (0)

Anonymous Coward | about 13 years ago | (#2410268)

My mozilla 0.9.4 had no problems with it - try it again, the page was pretty slow coming in, maybe you didn't wait long enough.


/.ed already! (5, Informative)

merlin_jim (302773) | about 13 years ago | (#2410171)

Here's [] the Google cached copy (which isn't doing much better)

If you have to see the images, BryceWorld got a beta release and posted a gallery [] of images online.

And if you want to download it immediately to start playing with it, you can do it by filling out this questionairre []

Re:/.ed already! (2)

PhilHibbs (4537) | about 13 years ago | (#2410186)

Those pictures are pretty cool, but the stratification is a bit on the heavy side. It works on the plateau sides, but not where the land is shallow - it would be covered by dust or vegetation, hiding the strata.

Woo-hoo! /. /.ed? (-1, Offtopic)

Anonymous Coward | about 13 years ago | (#2410278)

Well, this is what I just got:

HTTP/1.1 200 OK Date: Wed, 10 Oct 2001 13:53:59 GMT Server: Apache/1.3.20 (Unix) mod_perl/1.25 X-Powered-By: Slash 2.001000 Set-Cookie: user=nobody; path=/; expires=Thu, 10-Oct-2002 13:53:59 GMT Connection: close Transfer-Encoding: chunked Content-Type: text/html; charset=iso-8859-1
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.

Apache/1.3.20 Server at Port 80

Re:/.ed already! (1)

AssFace (118098) | about 13 years ago | (#2410301)

the google cached page is likely just as slow since I'm prety sure they only cache the text, which would be links to the images - so you are going to quickly load the cached text, and still have to wait for the images to come off of the /.'ed server.

first fart? (-1, Offtopic)

Anonymous Coward | about 13 years ago | (#2410172)

or not?

Re:first fart? (-1)

Fecal Troll Matter (445929) | about 13 years ago | (#2410250)

Most definitely... Not...

Rebuild Planet Earth (2, Interesting)

KrunZ (247479) | about 13 years ago | (#2410174)

MojoWorld:>rebuild Earth.planet

Re:Rebuild Planet Earth (-1, Offtopic)

Bob McCown (8411) | about 13 years ago | (#2410572)

*sniff* Slartibartfast would be so proud!

Old news... (5, Interesting)

chronos2266 (514349) | about 13 years ago | (#2410175)

This has been done quite a few times by quite a few people. Fractal planet 3d engines show up all the time at []

I've seen some with complete weather and day/night cycles. Some really inspiring stuff.

Re:Old news... (2)

CaseyB (1105) | about 13 years ago | (#2410532)

Lucasart's first two games, released in 1984, were Ballblazer and Rescue on Fractalus [] . Rescue on Fractalus had a fractally generated landscape, in realtime, on 8 bit machines, almost 20 years ago.

Re:Old news... (1)

Saint Aardvark (159009) | about 13 years ago | (#2410568)

Can you list an example or two? I'd really like to check them out, and flipcode seems, ah, non-trivial for the uninitiated to navigate...Thanks.

Re:Old news... (5, Informative)

malducin (114457) | about 13 years ago | (#2410966)

Well the thing is Ken Musgrave is one of the pioneers, if anything a lot of people that have posted code like this out there are based on Ken's numerous papers. He was a researcher with Mandelbrot, kinda developed "multifractals", given SIGGRAPH courses about terrain and procedural modeling, and has written several chapters for a great book "Texturing and Modeling: A Procedural; Approach". He also worked for a time for or at Digital Domain, doing code a for the moon on Apollo 13, and procedural smoke for Dante's Peak (not used) and Titanic.

Here is his webpage:

Ken Musgrave's website []

Saw Mojoworld briefly at SIGGRAPH and it looked neat.

Wowee (1)

Insipid Trunculance (526362) | about 13 years ago | (#2410178)

Coming Up One Saturn With Rings.....
Whatch Yuo Want Miss,Betelguese?

Marginal (5, Interesting)

debrain (29228) | about 13 years ago | (#2410182)

Not really that impressive :) (tongue in cheek). I worked on the preliminary part of a massive multiplayer online game whose universe was a fractal, containing data right down to the shape and size of trees at every point on the planet. The interesting thing was that the modeled universe took time as a variable, and it evolved gradually with small increments of time, thus the universe (which was ultimately nearly infinite from the human perspective), right now was not the same as the universe yesterday, but very similar so those places / things you've become familiar with are still present, but have evolved slightly.

Planets would move, trees would grow, forests and deserts would change shape, oceans would rise and recede, etc. (Taking into account that the planet is of the type to support something like forests and oceans). The variables that define a "place" as a human looking onto the universe were coordinates and time, and a perspective (direction/angle) from which to project back information. Yet the visual perspective was only minor compared to the actual number of calculable variables, like temperature, and the like. Of course, strange things like density has to be accounted for with Newtonian physics, but that was ironically easy. Choosing what was the cause (is temperature random, ie. fractalish, or a product of Newtonian; really it's a combination; random in a Newtonian'ish thermodynamic space, but random only because we wouldn't actually want to calculate that sort of thing) and what was an effect was the hard part.

It is an interesting premise, isn't it? Taking a mathematical curiosity (the fractal) and doing something useful with it like creating a universe, or planet in this case. Somewhat matrix'ish.

Re:Marginal (1)

liquidsin (398151) | about 13 years ago | (#2410297)

That actually sounds really interesting. What game was it you worked on? Is it online still / yet?

Re:Marginal (1)

iplayfast (166447) | about 13 years ago | (#2410299)

Your project sounds more interesting then MOJO, do you have a site showing it off?

Re:Marginal (1)

Tide (8490) | about 13 years ago | (#2411145)

Isn't that Shadowbane [] ? I heard they were doing something similar, being able to add continents in real time over a modem connection, no more massive "EQ-like" downloads. Curious if thats the game you talking about, I havent played it.

Re:Marginal (2)

debrain (29228) | about 13 years ago | (#2411206)

No, not Shadowbane (but that's neat too :)). It has not made it beyond the drawing board yet. That's one of the main advantages of that design, though, saving bandwidth. The other is offline playing, or even sub-universes. "Germ warfare", in the duely literal sense of it, was not entirely out of the question, so long as it was fun. The right choice of fractal would yield the sort of information right down to that nitty-gritty, where human-sponsored/played germs could have plausible effects on larger creatures.

Thanks to chaos, one could insert minor changes into the variables, so a line of a lorenz equation could be completely changed down the road by adding small (read: negligable) attractors. Lorenz isn't a good choice, IMHO, but it's an example of a simple, obvious case where small attractors would change things invariably. People adding attractors to a game universe fractal is a much niftier idea; just much more complex.

Re:Marginal (2)

JabberWokky (19442) | about 13 years ago | (#2411313)

Now that he's said it's not off the drawing board, I know it's not WorldForge [] either, but I know that they did some similar (much less sophisticated from what he says) work - fractal lansdcape that is then iteratively weathered, and fractal floria distribution. Anybody interested might want to check that out too. (FWIW, the running code uses standard matrix maps of data, rather than the fancier fractal code - I'm not involved in the project, so I don't know why)


The galaxy in the palm of your hand (0, Troll)

MBCook (132727) | about 13 years ago | (#2410195)

Wow! Now I can carry a floppy with me and over 15 planets! OK, so floppy's are passe, but who needs to carry a CD with 7200 planets on it? This seems impossible but I guess since it's nothing but fractals who's equations take up a couple of dozen bytes each, it does make sense. Oh well. Now on to a realistic part of my message:

<SARCASM><RANT> They can put a dozen planets on a disk but they can't figure out cold fusion! What's the world comming to?</RANT></SARCASM>

Re:The galaxy in the palm of your hand (2)

HiQ (159108) | about 13 years ago | (#2410215)

Maybe one of these days we're going to find out that our planet, including ourselves, is on someones (or somethings') CD. Talk about freaking people out in a big way :0

The earth is in somebody hands for sure (1)

KrunZ (247479) | about 13 years ago | (#2410232)

The earth is in somebody hands for sure. The big question is if the hand's owner is wearing a turban or a cowboy hat.

Re:The earth is in somebody hands for sure (-1, Offtopic)

Anonymous Coward | about 13 years ago | (#2410270)

Or a dunce cap...oh, wait...that's you!

"The Galaxy is on Orion's Belt" (2)

No Such Agency (136681) | about 13 years ago | (#2411019)



Don't tell Slartibartfast.... (5, Funny)

jgerman (106518) | about 13 years ago | (#2410198)

...he took real pride in his fjords, he wouldn't take too kindly to auto planet creation.

Re:Don't tell Slartibartfast.... (1)

Rob.Mathers (527086) | about 13 years ago | (#2410388)

I dunno, I've seen some fractals that would make great fjords, even appropriate for Norwiegan Blues

Re:Don't tell Slartibartfast.... (-1, Offtopic)

Anonymous Coward | about 13 years ago | (#2410541)

A fjord bit my sister once...

Re:Don't tell Slartibartfast.... (1)

malducin (114457) | about 13 years ago | (#2410981)

Funny you should mention this. If I remember correctly Ken Musgrave had a terrain renderer called Slartibartfast in the mid nineties while he was at GWU. Unfortunately I think those pages are long gone. You could check some old stuff from his webpage.

the shape of REAL IT (-1, Offtopic)

Anonymous Coward | about 13 years ago | (#2410207)

We're finding IT incredible, just how much data, can be stored/sorted/archived nowadays, by just one gaggle of self-trained snoops. Using only a few large HDDs, we've stored "the hysteria of the whole world" for the last several years, & still have enough 'free' space to store the inf. from several more worlds.

hard to bulleave IT, but fud IS finally dead.

give us [] a call, if we can store some stuff for you, or, if you'd like to run this roomy, picturesque, set of URLs [] .

Excellent! (1)

Kazmat (463441) | about 13 years ago | (#2410222)

This is indeed a Good Thing for games such as Elite. Instead of the game designers having to create each world, using minimal detail, as many worlds as are wanted can now be created in infinite detail. I look forward to the first Elite-style game using this technology.

90K? 90K? (0)

Anonymous Coward | about 13 years ago | (#2410241)

Elite was rather smaller than 90K. Elite 2 on the other hand...

Re:Excellent! (4, Informative)

flend (9133) | about 13 years ago | (#2410266)

Hmmm, an Elite game which uses fractal planets?

What about, for example, Frontier: Elite2 which pretty much pioneered planet wide fractal terrain gen in a commercial game and ran on a 386.

Or, its sequel, Frontier: First Encounters which added texturing to make everything look a million times more ugle.

Or any of the recent fan-made clones, Millenium3 http::// or even The Eternal Project

Frontier (2)

jafuser (112236) | about 13 years ago | (#2410346)

I was going to point out this very game, thank you for beating me to it! :)

This was one of the most amazing games I'd ever seen at the time, becuase the player is completely free to go anywhere in the "universe" and do anything. I think the discovery of "wormholes" (from a 16-bit overflow bug) also added quite an interesting element to it as well (That's not a bug, it's a feature!).

Don't forget the fractal-nature of the Frontier universe as well. I doubt they could have fit all of that data in the game! It was quite interesting how whole solar systems were created around each star, with different planet types and numbers, different political situations, random natural and manufactured satellites, different star configurations (double and triple systems). I suppose this was all seeded from the same value, or it would have been different every time.

I wish there were an upgraded game like Frontier, which took advantage of modern computer systems, but still contained all of the elements of the original. I'd love to see such a game as a massive-multiplayer-online sort of game. I'll check those links you provided and see what those are like...

Re:Frontier (0)

Anonymous Coward | about 13 years ago | (#2410579)

I'd love to see such a game as a massive-multiplayer-online sort of game.

Check out Jumpgate [] (and the fan site Planet Jumpgate [] )

Re:Frontier (0)

Anonymous Coward | about 13 years ago | (#2411358)

The original (BBC Micro) Elite did indeed use seeding of an RNG to create its planets. Never mind a planet in 90K -- Elite "stored" each *galaxy* (planets, names, political systems, pricings of commodities) in 16 bits by storing the RNG seed.


Re:Excellent! (2, Funny)

Alioth (221270) | about 13 years ago | (#2410624)

> The Eternal Project

The Eternal Project - what an ironically true to form name ;-)

Re:Excellent! (2)

scott1853 (194884) | about 13 years ago | (#2410281)

Somehow I don't think this is going to make it into games right away. To get high detail, you still need massive amounts of system and video ram for all the textures and vertices. Besides, you still need designers to implement what they want. Just sitting there and hitting a "randomize" button isn't going to work too well unless you have no clue what you want.

Each world is a coordinate in a matrix of worlds (2, Informative)

hartsock (177068) | about 13 years ago | (#2410236)

Here's the easiest way to think of it: each parameter represents a degree of freedom; an axis you can move back and forth along, as you change the parameter's value. So, for instance, specifying a color in MojoWorld adds three higher dimensions: one for each of the red, green and blue values you use to specify the color. Each of these axes corresponds to a higher dimension in Parametric Hyperspace: it's just a different direction you can move in. You can see that, in getting all the settings right for a scene, you've set a lot of parameters, and thus traveled in many dimensions of Parametric Hyperspace.

Since the product doesn't store individual worlds, but rather parameters for a procedural system... or a point in parametric hyperspace... the data file for a single world isn't large. Each individual world only needs to be defined with a set of n-dimensional coordinates. I don't do much playing with things like bryce or whatever (can't afford it) but if I'm not mistaken that is a significantly different paradigm. What I didn't see is how large the executable was that generated the worlds dynamically from the n-dimensional parameter vector or hyperspatial coordinates. Technically the program wouldn't have to be large either, but I'm curious...

90K! (2, Troll)

TeVi (128093) | about 13 years ago | (#2410239)

Wow, 90K!

I bet a 'make world' will go a lot faster then :-)

volumetric pixels (4, Interesting)

johnjones (14274) | about 13 years ago | (#2410247)

is volumetric pixels this sort of thing ?

fractals are good for storeing large amounts of information but decompression is hard and how do you then represent the information useing standard methods or volumetric pixels type approach ?

seems nice but I would like more details before makeing any jugment

anyone have details ?


john jones

p.s. I am sure a game used this type of thing before

Re:volumetric pixels (1)

kigrwik (462930) | about 13 years ago | (#2410436)

> p.s. I am sure a game used this type of thing before

I remember "Strike Commander" built its terrain maps this way. (Fractals + smoothing + texture + objects)
(back in '92 ? '93 ? )

... ten 1.44 Mb disquettes, 1hr of fractal stuff on my good ole 386... ... good memories.

Re:volumetric pixels (1)

JohnsonJohnson (524590) | about 13 years ago | (#2410524)

No volumetric pixels have nothing to do with this, you can render directly to screen coordinates after defining a transformation from world coordinates to screen coorfinates.

You have it backwards, if you want an exact or even a lossy representation of an image using fractals then compression is a very difficult problem. Decompression on the other hand is simply iterating a usually simple function, or a small set of functions. Since you can estimate the costs of calculating the function and the number off times you iterate is related to the level of detail you present you can calculate the level of detail you can represent given available compute power and time constraints.

The information is entirely parametric, you specify what region you are interested in and level of detail, then you get a texture back.

I'm a little lazy so I'm not going to give links, but a simplwe query (like "fractals" or "fractal compression") on Google should provide plenty of jumping off points.

Looks quite cool, but not photorealistic (5, Interesting)

RNG (35225) | about 13 years ago | (#2410252)

I've just checked out the sample mojo-world gallery (I'm a sucker for any web pages that claims to show me (almost) photo-realistic rendered terrain images) and while the output is quite cool, it still has ways to go before it's going to be photorealistic. On the other hand, the point of MojoWorld is that you don't need a lot of data to re-create your scenes: you just save the seed parameters (which are tiny as compared to a real height-field) and the engine re-creates the scene from these parameters.

I have been working on terraform [] (which is aimed more at the generation and manipulation of digial terrain rather than the rendering of it) for a while now and in the course of doing so have learned a few things about fractal terrain generation. The fact that you can regenerate the terrain from a few seed parameters is not that special (dimension, scale factor, random seed, etc); these are the kind of parameters that are typically passed to these functions anyways. The more interesting thing (to me) is that they have apparently found a compact representation of all the data needed to create a (semi)realistic scene from it. All in all, I think this is quite cool. Hopefully they (at some point) will write a white paper detailing some of the algorithms used by the (closed source) generator.

ok... (1)

donabal (116308) | about 13 years ago | (#2410255)

not to beat a dead horse... but
"640K ought to be enough for anyone" ... who wants to model the solar system.


Anyone successfully downloaded yet? (1)

TinheadNed (142620) | about 13 years ago | (#2410257)

I haven't been able to get anything from them yet. Smacking F5 a lot has got me to almost downloading now.

Mirrors anyone?

Very nice screenshots though. Wasn't First Encounters supposed to allow you to fly over planet vistas though?

Just have to wonder... (5, Insightful)

merlin_jim (302773) | about 13 years ago | (#2410263)

I just wonder how big their problem space is, and does it conform to the genetic algorithm definition of "smooth"... the existance of sliders would seem to indicate that this is so.

Smooth may be defined as:
  • function: all genotypes code for valid phenotypes
  • injective (compact, nonredundant): different genotypes lead to different phenotypes
  • surjective (universal): all phenotypes are representable
  • continuous: small variations in the genotype produce small variations in the phenotype
  • inversely continuous: small variations in the phenotype can be induced by small variations in the genotype
Where genotype refers to the parameters and phenotype to the representation of the world.

If this were true, then one could theoretically evolve (using GA techniques) a planet that is a reasonable facsimile of earth, or any other feature set. Want a detailed map of San Francisco Bay? Let me squirt my survey through my Genetic Algorithm MojoWorld Compression Algorithm. Oh good, it's done. Use these five numbers to recreate the map...

Hmmm... sounds like it's plausible, but I don't think that small changes in the genotype necessarily result in small changes in the phenotype.

Re:Just have to wonder... (0)

Anonymous Coward | about 13 years ago | (#2410773)

Any algorithm which follows the above 5 definititions will require huge numbers as input.

You'd need a 1 to 1 mapping of possible maps to possible input space, which would make your input space as big as all possible maps, which is quite big I think.

To account for this, I think that they use some sort of algorithm that only makes plausible worlds. So their algorithm doesn't produce maps where land and sea are alternated every inch, or where there are a lot of plants on one side of the world, but none on the other.

Re:Just have to wonder... (2)

merlin_jim (302773) | about 13 years ago | (#2410793)

You are absolutely correct with regards to the 1:1 mapping. You might be able to get some compression in, in that you are storing the idea of a thing and not the thing itself (e.g. information as opposed to data)... but I think you are more accurate in the plausible worlds theory.

The big question is, is the representation "smooth" enough to encapsulate arbitrary real-life examples?

Check out these related articles (3, Informative)

Kieckerjan (38971) | about 13 years ago | (#2410267)

Gamasutra had a couple of articles on the subject of (real-time) procedural formation of planetary bodies. (Free login required.) 1.htm [] 1.htm []

There is a nifty demo available for download. The same code is used in the glElite [] project.

Sing it... (2, Funny)

GarryOwen (190545) | about 13 years ago | (#2410277)

Come on everybody and sing....

"I have the whole world, in my floppy"

Shut it... (-1, Offtopic)

Anonymous Coward | about 13 years ago | (#2410427) slaaaag!

Linux ? (-1, Flamebait)

Anonymous Coward | about 13 years ago | (#2410298)

It's going to have an open SDK and, to top it all off, a Linux version is also in the works.

If Linux was actually usefull for development it'd be:
"It's going to have an open SDK and, to top it all off, a Windows version is also in the works."

Not a big deal (-1, Redundant)

Anonymous Coward | about 13 years ago | (#2410325)

We've been doing this type of thing for years at EA.

Does anyone remember Captain Blood? (1, Informative)

Anonymous Coward | about 13 years ago | (#2410343)

Been there, and done that in 1987. It was a cool game with 32768 unique plaents... with terrain to fly thru... Hell it even ran on a C64!

But for some reason the computer industry seems to belive that if there has been a lapse for 10 years, the next sucessor is suddelny 'new'.,134/ [] [] []

Re:Does anyone remember Captain Blood? (0)

Anonymous Coward | about 13 years ago | (#2411780)

How about Rescue on Fractalus circa 1985.

Fractal generated landscapes in 8 bit color.

A More Practical Application (2, Funny)

Jucius Maximus (229128) | about 13 years ago | (#2410357)

All we need now is for someone to encode all the world's pr0n in this fashion and put it on gnutellanet!

Where would one find information? (1)

errorlevel (415281) | about 13 years ago | (#2410368)

Where would one find information on learning to apply this technology to new games? I saw an earlier post which said the poster had used it for a massively multiplayer online game. I'm very interested in trying to use this technology. Any links about how to implement this or something similar would be highly appreciated.

Bill Gates was right (0, Redundant)

Sideways The Dog (513515) | about 13 years ago | (#2410371)

Wow, Bill Gates was right. 640K of memory really is enough for anybody.

It's a little grandiose (1)

thejake316 (308289) | about 13 years ago | (#2410379)

They're selling a Holosuite but delivering a View-Master.

Sierpinksi Gadgets (4, Interesting)

Quay42 (444528) | about 13 years ago | (#2410381)

On the related note of fractals and their generation; A few years ago while playing around with GWBASIC (!!!) on a Tandy 1000 Color I discovered you could generate sierpinksi gadgets (there's a picture of a 3D one that I managed to find at mes.html) by choosing 3 coordinates on the screen (for the vertices) and then choosing a random point somewhere else. Then, choosing between 3 random numbers (or anything that has 3 equally probable events) and plotting the point halfway between the current point and the vertex corresponding to the chosen number, a sierpinski gadget slowly "fades" in.

To make it look even better, you can choose a color for each vertex. I also found you can do similar things with other shapes (pentagons, squares, etc.) Perhaps this algorithm is a well known way to generate the Sierpinksi Gadget. The amazing thing is how *small* the code is!

pseudocode (possibly with mistakes...its been a while)

Choose 3 equidistant points on the screen: {x[0],y[0]},{x[1],y[1]},{x[2],y[2]}
Choose random coordinate on screen (x,y)
while no user input
choose random number n from {0,1,2}
plot ((x+x[n]/2), (y+y[n])/2))


Re:Sierpinksi Gadgets (3, Informative)

wurp (51446) | about 13 years ago | (#2410543)

I think it's:

Choose 3 equidistant points on the screen: {x[0],y[0]},{x[1],y[1]},{x[2],y[2]}
Choose random coordinate on screen (x,y)
while no user input
choose random number n from {0,1,2}
x = (x + x[n])/2
y = (y + y[n])/2
plot (x,y)

and the points don't actually have to be equidistant, any three points will work. You'll just get a warped triangle, which can look kind of cool.

Re:Sierpinksi Gadgets (2)

merlin_jim (302773) | about 13 years ago | (#2410569)

This is known as the Iterative Fractal System, or IFS, and is actually patented (not sure by who... remember the gentlemen's first name is Michael)

There was a great chapter in the book, "Programming Tricks of Computer Graphics Gurus" about the subject. Basically, lay out regions on your screen that represent the various parts of the fractal. Make a translation / rotation / scale matrix describing each one. You can make an IDE that applies the matrix to the entire screen (resulting in morphed rectangles at each vertex).

Then, assign a probability to each row of the matrix that is the area of the transformation compared to the total area. Use your random number algorithm to pick out which one to apply, and apply it to your point.

Most of the time this is an arbitrary process, such as "Do it 100 times without plotting to stabilize the jumping point, then do it 1000 times to get a good estimate of the final figure." A lot of people coding it take it one step further and basically end tracing when a certain percent of the last x points drawn were already present...

Re:Sierpinksi Gadgets (1)

Quay42 (444528) | about 13 years ago | (#2410835)

Sweet, it has a name! Of course my idea wasn't quite as complex and has many more limits than what you said. But its pretty nifty to know that this is an actual technique, used in some form another.

Seriously, I need to get back to work now..


Re:Sierpinksi Gadgets (4, Informative)

SurfsUp (11523) | about 13 years ago | (#2411317)

This is known as the Iterative Fractal System, or IFS, and is actually patented.

Iterated function system. Compression by this method is covered by US patent 4,941,193 [] issued 1990. This is a clearcut example of how a potentially useful mathematical technique has been largely ignored because of its patent encumbrance. Just one more example of how patents are good for lawyers and bad for everybody else. I seriously doubt Barnsley has made any money from the patent, I suspect the book produced more revenue. In any event, whatever usefulness the technique might have is lost to us until the patent runs out in another 8 years or so.

The word "asshole" comes to mind.

Re:Sierpinksi Gadgets (2)

merlin_jim (302773) | about 13 years ago | (#2411427)

Yeah, I was actually looking at using this method to do image compression until I ran across the patent. Hopefully the methods that I was looking at will still be valid in 2010... and they won't have been superceded by MPEG-8 or whatever.

As I remember, one of the major advantages, besides cheap decoding, was hardware encoding could be used relatively easily...

Re:Sierpinksi Gadgets (1)

Seth Leichter (28163) | about 13 years ago | (#2411321)

I came across this old program of mine recently. When I first read about the algorithm, it was called a "Sierpinski Gasket". So I wrote it up in PostScript. On-screen, you can see the picture fade-in.

%%Title: Sierpinski Gasket
%%CreationDate: 6-21-92
%%Creator: Seth Leichter
%%BoundingBox: 0 0 612 792


/R {rand 3 mod} def

/plot { /x exch def /y exch def
x y moveto
x y lineto
x y moveto

/midpoint { /x1 exch def /y1 exch def /x2 exch def /y2 exch def
x2 x1 add 2 div
y2 y1 add 2 div


/A {306 661}def
/B {0 131}def
/C {612 131}def

{R dup
0 eq
{A currentpoint midpoint plot pop}
{1 eq
{B currentpoint midpoint plot}
{C currentpoint midpoint plot}ifelse

1 setlinewidth
0 setgray
A moveto

100000 {gasket} repeat


Re:Sierpinksi Gadgets (0)

Anonymous Coward | about 13 years ago | (#2411707)

My version worked a bit differently:

%!PS-Adobe-3.0 EPSF-3.0
%%Creator: Anonymous Coward
%%Title: Sierpinski Triangle
%%CreationDate: whenever
%%BoundingBox: 10 10 410 410
/Avg {
add 2 div
} def

/Tri {
0 setgray
} def

/Sier {
dup 0 gt
6 index 6 index
1 index 7 index Avg 1 index 7 index Avg
3 index 7 index Avg 3 index 7 index Avg
6 index 1 sub

11 index 11 index
1 index 12 index Avg 1 index 12 index Avg
3 index 18 index Avg 3 index 18 index Avg
6 index

16 index 16 index
1 index 23 index Avg 1 index 23 index Avg
3 index 23 index Avg 3 index 23 index Avg
6 index

pop pop pop pop pop pop pop
{pop Tri} ifelse
} def

/x0 20 def
/y0 200 def
/x1 350 def
/y1 50 def
/x2 300 def
/y2 390 def

x0 y0 x1 y1 x2 y2 10 Sier


Far out (3, Insightful)

Dyolf Knip (165446) | about 13 years ago | (#2410397)

I tried zooming out to a few thousand km to try and get a good full planet view and was rather disappointed. Only two terrain features were still visible (green and snow); nearly all the lakes and rivers had vanished and there were no large bodies of water no matter how high I set the water level. Didn't look anything at all like a planet when it had finished rendering.

Very cool for video game development (1)

ackthpt (218170) | about 13 years ago | (#2410410)

One of my old favorites was Seven Cities of Gold, which had a crude world builder in it. I've played a number of games which have some sort of landscape development aspect in it, but usually they're pretty cheesey when you really get a good look at them.

I've expiremented with various algorithms to try creating landscapes, some of which have relied upon fractal and Mandelbrot math, but often with mixed results. I'll follow this with interest.

Name taken? (2)

sammy baby (14909) | about 13 years ago | (#2410542)

Dear lord - did they have to call it Mojoworld?

I hope that Mojo Nixon doesn't decide to sue, seeing as how he's already written songs about it [] , and all.

Re:Name taken? (1)

Indomitus (578) | about 13 years ago | (#2411623)

I don't know anything about Mojo Nixon (your link is broken) but if you're an X-Men fan you'll probably remember the TV obsessed villian Mojo and his planet was also called Mojoworld IIRC. This was more than 10 years ago, probably closer to 20.

Elite: Frontier and First Encounters (2)

szyzyg (7313) | about 13 years ago | (#2410545)

These games had fractally generated universes with starsystems, planets, cities and whatnot. Because they are elite games you could literally fly anywhere you wanted. It's now possible to download the shareware version of First Encounters from the Elite Club, and the game is so popular some clever fellow went and reverse engineered the binary, fixed a load of bugs and made releases of the game engine for Windows and Linux.

Reminds me of old ideas... (1)

Mike McTernan (260224) | about 13 years ago | (#2410559)

Seems like a reverse approach to what people believed in the past; that the universe was dictated by some huge equation that one day would be found and understood (turns out that chaos theory means it is impossible to know the starting state to an accuracy where todays universe can be known).

Just this seems to be the other way around - make a formula and find the universe it creates.

One word: Starflight (1, Funny)

Anonymous Coward | about 13 years ago | (#2410608)

Rolf Harris tells a joke about a lawyer from a long-established firm. Over the decades that he and his family had practiced law in the same building, the constant foot traffic over their doorstep had worn a big depression into the solid granite. So the lawyer had a stonemason come in and give him an estimate on a new doorstep. It came out to a lot of money. So our boy thought his best lawyerish money-saving thoughts, and came up with an idea. He said to the stonemason, "Well, how much would it be to not replace the stone but just flip it over? It's just a solid rectangular block, so nobody would be any the wiser if we got some wear out of the bottom as well as the top." And as it happened, that would cost rather less money. So that was what the lawyer decided to have the stonemason do.

So the stonemason goes to work, hammering and chiselling and doing all the usual activities of his trade, and then after about an hour the lawyer hears a knock on his door. He hurries to open it and there's the stonemason with a cheeky grin on his face, saying, "Yer grandfather thought of that fifty years ago!"

Fractal planet generators are indeed a good idea, but they're not so new as all that. Starflight, people, starflight.

This really isn't that impressive... (4, Interesting)

Anonymous Coward | about 13 years ago | (#2410613)

Generating fractal landscapes is really pretty well understood these days and I'm afraid that Ken Musgraves latest efforts, whilst good, are really nothing special. The standard at the moment is set by Terragen - which is an order of magnitude better than Musgrave's efforts.

Musgrave is also extremely annoying in the way he dismisses enhancements as trivia and gives the impression that he's done the hard work. He hasn't - he's done the easy bit. For example placing vegetation on his landscapes is a very, very hard problem. Lets see him place a forest of oak trees besides a river, with realistic rendering of sunlight through the leaves, the roots in the soil, and the shadows of the leaves on the ground then I'll be impressed.

There are packages that are attempting to do this - World Construction Set, WorldBuilder and GenesisII come to mind - there are many more (including the granddaddy of them all Vistapro). None look as realistic as Terragen though - again something that can probably be ascribed to the fact that terragen, like Mojoworld, chooses a particular type of landscape in which to work. Unlike Mojoworld though, Terragen is photorealistic.

Creating a general-purpose photorealistic terrain renderer is probably on of the hardest problems still available in computer graphics. And while Musgrave deserves respect for what he has achieved over the years, sadly he's one of those people who simply isn't as good as he thinks he is.

Ihara-grub algorithms, anyone? (1, Redundant)

cryptochrome (303529) | about 13 years ago | (#2410614)

Forget planets, what we need are algorithms that can generate everyday objects like people.

Fractal Planets... Literally. (1)

Buran (150348) | about 13 years ago | (#2410685)

A Photoshop plugin called LunarCell does this a bit more literally -- it creates planets, not landscapes on planets, also by means of fractals. What's more, it can download actual cloud patterns from satellites to create even more realistic images by combining real bitmapped data with fractals.

My Fractal Planet Gallery [] might interest some people...

(The most recent one uses another plugin, developed by the same people [] -- to add a nebula background. Yes, I know the planet should drown the stars and nebula out. It looks cool, and I created that pic to be my desktop background image!) :-)

Impacts for Non-computer gaming and other things.. (1)

BluePenguin (521713) | about 13 years ago | (#2410718)

When I read this one of the first things I thought was: "Great, now when I generate worlds for my Rifts/Alternity/Anything group, I can actually give my players something to explore!" In tabletop gaming, one of the great advantages to campeign settings has (IMO) been maps. Maps tend to make any fantasy setting easier to explore, and at 90k, it's fairly easy to e-mail my players and say "Here, DL a copy of the world map!"

It also brings to mind some of the Illustrated Guide to XYZ fantasy universe books that so many fans crave. With software like this becoming more common, could we begin to see CDs o' Fractal images with such publications? Or (again with file sizes of 90k), will we see printed URLs with a "Go here do DL the complete wold..."

Still, while thier limited viewer is free, and the professional viewer (with unlimited resolution) is only $30, I think the $250 SRP (even the $200 intro price)the hobbyist may stay off this platform for a while.


Power of math (1)

bloo9298 (258454) | about 13 years ago | (#2410738)

Is the power of math something like the power of Oxyclean?

Sorry if I'm skeptical (2)

donglekey (124433) | about 13 years ago | (#2410792)

But fractal landscapes? Holy shit stop the presses! Landscapes are the classic use for fractals. This is really nothing special. Sorry to be so harsh.

Want some good rendered scenery? (0)

Anonymous Coward | about 13 years ago | (#2410934)

It might not be fractally generated but who cares, its damn good stuff.

I can see it now... (1)

chinton (151403) | about 13 years ago | (#2410949)

Kirk is preparing a presentation on Genesis. Spock can be seen in the background in front of a bank of computers.

Kirk: Spock, is the Genesis planet demo ready?

Spock: I am in the process of building the last piece of the rendering software now, Admiral. It will be completed in 7.182 seconds...

Kirk: (smirking) Could you be a little more specific, Spock?

Spock: (cock's an eyebrow at something on his display)

Kirk: Problem, Spock?

Spock: Yes, Admiral. The rendering software requires an ancient version of something called "GTK". This is not logical... "GTK" fell out of disuse in the early 21st century following the advent of the Quantum Display...

Hmph (proprietaryware seller!) (3, Informative)

Chris Johnson (580) | about 13 years ago | (#2410957)

I've done this [] too... difference is, when I realised it didn't really lead towards personal Cadillacs etc. rather than immediately decide to take the project proprietary, I just sort of drifted away towards other things... have always meant to return one day, and I will.

What you're seeing in the mpeg videos behind that link is flyover scenes that generate a terrain grid with dynamic level of detail concentrated near the camera, overlaid onto an entirely synthetic and repeatable world which is derived from multiple pointer math on a large (16M) data file. That means FAST- it was only implemented in REALbasic and still runs reasonably fast, and is a natural for C.

I also spent some time producing universe distributions- one stumbling block that I ran into that I hadn't got around to solving was what I was keeping world space in, as the universe is very big and at the same time the actual planets would go down to roughly 1/8" level of detail using some approaches for data synthesis. In particular, one of the techniques for positioning stuff would go down to 1/8" level of detail with four pointer-like operations using no kind of higher math. The difficulty is that you don't get a list of objects- instead if you wanted to synthesise, say, blades of grass, you'd go over a ten mile view by scanning across your view grid and every eighth of an inch, would do the fairly quick lookup of whether there was a blade of grass or some similar object on that eighth-inch spot. On the bright side, it would at least be repeatable, being entirely procedural.

The thing about these projects, and I can see that many people have done them, is that you can get grandiose about them but the bottom line is: this is not a game. This is not inherently fun, or interesting. One thing I'd thought of for _my_ approach is to apply some Warcraft-like game (scaled to MMORG, of course ;) I think that's a rule for all people coding virtual worlds) and make use of the fact that you can have a world-sized area with (perpetual) resources laid out irregularly and down to an extraordinary level of detail. So you could be in a game, and have to dig for gold or iron or something, and go by people's reports of where that resource could be found- including "There's this planet out by Alpha Centauri that's loaded with it". I also had a procedural planet and location name generator that wasn't entirely horrible ;)

Like I said- you get into this sort of thing and totally forget that it's NOT FUN for anybody else, unless there's a plot. I'd suggest that the author of this more recent work, if he seriously expects to earn money off it, should treat it very much like selling an art object: 'here's a viewer through which you can explore millions of worlds much like Bryce, only with less interaction', and not be too haughty about the price, either. This isn't a set of libs that will be useful for anyone creating a game, period. For one thing, you can get the same thing cheaper from elsewhere- it's NOT a unique idea.

90k worlds? Pah! Elite had 8 galaxies in 48 bytes! (4, Interesting)

evilandi (2800) | about 13 years ago | (#2411136)

Elite [] (1980's 8-bit wireframe space trading game) used only 48 bytes to carry names, descriptions, positions and trading data on hundreds of star systems spread across 8 galaxies (see Elite Faq [] question 13).

Elite used Fibonacci Numbers [] with a eight 6-byte seeds, plus a few dozen bytes of look-up tables, to achive this. The principle was very similar to MojoWorld's use of fractals, but Fibonacci series are considerably quicker to process, particularly on an early 80's home computer.

Check out 'The Science of Fractal Images' (1)

webbunny (241863) | about 13 years ago | (#2411151)

If anyone would like to see what Musgrave and Mandelbrot were up to in the late 70's/early 80's with all this stuff (and yes, that makes Musgrave the 'daddy' of fractal landscapes! Loren Carpenter, eat ya heart out :^), you should check out the book they contributed to:
The Science of Fractal Images, edited by Heinz Otto Peitgen.
This book can be considered 'Fractals 101', and when I was doing a fractal related final year university project about 8 years ago, it came it VERY handy :)
However, the images on Musgrave's website don't look much better than the colour plates in that book, so other peoples comments, like 'Big Deal' etc, do hold. I was expecting him to have at least produced better looking images than my team at Uni did :^)
But whatever, the guy still gets major respect from me, he is a true computing pioneer.


Multi-user interactive worlds (1)

betaray (1268) | about 13 years ago | (#2411167)

I work for a game company, and one of our next projects is going to be a multiplayer interplanetary action/advententure style game. I have been looking into ways to fractally generated planets quite a bit. While this software does look cool (especially the textures), it still has the one problem that hurts it's usablity in multi-user worlds, it changes shape dramaticly between certian levels of detail. If I think I'm hiding behind a hill, I should be hiding behind a hill on everyone else's front-ends no matter how far away they are.

I wish I had known about this interview before hand so I could pose this problem to Dr. Musgrave himself, since he seems eager to use this in multi-user worlds.

Starflight (2)

Jace of Fuse! (72042) | about 13 years ago | (#2411172)

Starflight had an entire Galaxy on two 5.25" floppy disks! :P

Starflight was magnificent... (1)

Anonymous Coward | about 13 years ago | (#2411738)

...wonderful plot, funny and alarming aliens, a horrific moral dilemma and a great mix of travel, adventure and exploration. And all in 720K. Where is a game as good as Starflight?

Great Advertising Campaign (1)

BigJimSlade (139096) | about 13 years ago | (#2411345)

Behold... the power of math.

If they can just get that guy from the cheese comercial, I think it'll really sell.

Bah! (1)

kirkb (158552) | about 13 years ago | (#2411471)

I can fit the whole universe in one byte: 42

powerMATH (2)

Satai (111172) | about 13 years ago | (#2411703) uses the power of math..."

POWERmath is a system of high performance
algorithms engineered to meet your
planet creation and design
needs head on. Want to know more?
Follow the equals [] ...
Load More Comments
Slashdot Login

Need an Account?

Forgot your password?