Fractal Geometry: making realistic landscapes

Post » Mon Mar 14, 2011 10:08 pm

I watched a pretty cool show the other day, NOVA's Fractals: Hunting the Hidden Dimension. You can watch it http://www.pbs.org/wgbh/nova/fractals/program.html. You can also find it on Youtube, such as http://www.youtube.com/watch?v=eAAGR_Vr2lU&feature=related. In fact, I recommend watching at least chapter 1 (the first 10 minutes) and chapter 5 (like, the last 10 minutes of the show or something), since they pertain most to what I'm going to talk about.\

If you don't want to watch much of it, just check out the youtube link and skip to about 5:44. You'll see the guy using fractals to make some mountains way back in ye olde graphiks dayes.

So, okay, in Chapter 1 we learn that, way back when computers svcked in the graphics department, a guy used fractals to easily make realistic looking mountains - way more complex than having to manually make polygons and whatever by hand. And in chapter 5 it shows that fractal math can accurately generate/predict natural things like the height distribution of trees in a forest.

This all got me thinking - couldn't the bethesda developers use fractals to swiftly and easily generate realistic forests, river systems, mountain chains, coast lines, etc when they are creating the landmass for the next TES game?

I'm not a developer, I don't really know much of anything about programming and making meshes and all that stuff. But, given the elegant simplicity and astounding connection to geometry seen in nature, wouldn't using fractal geometry to make the stuff I talked about be relatively easy? The devs could write a program, select whatever blob of landmass they want affected, and run the program - and out comes a realistic forest with trees of different heights, and trees with realistic branching patterns, and waterways that have streams and brooks and inlets just like you'd see in nature. No wasting time trying to plop trees down by hand, no fussing around with trying to make that river look natural instead of fabricated. They might even use fractals to generate the distant landscape for mountains! Would that be possible for the devs to do?

Special effects artists use it for pre-rendered stuff, so I know it should be something that could be used by video game devs.
User avatar
Madeleine Rose Walsh
 
Posts: 3425
Joined: Wed Oct 04, 2006 2:07 am

Post » Tue Mar 15, 2011 2:39 am

7 mins into the vid, sounds like pretty old technology, I bet its already in use somehow.
User avatar
Emily Graham
 
Posts: 3447
Joined: Sat Jul 22, 2006 11:34 am

Post » Mon Mar 14, 2011 4:16 pm

Watching right now and HOLY CRAP THE NARRATOR IS THE CODEX GUY FROM MASS EFFECT
User avatar
Vahpie
 
Posts: 3447
Joined: Sat Aug 26, 2006 5:07 pm

Post » Tue Mar 15, 2011 4:00 am

Fractal geometry is common in graphics development these days, it's still used, its not really old tech. Whether they use it or not really depends on the graphics dev programs they are using and whether they are supported, or if they even know (could just be an incorporated feature.)
User avatar
Adriana Lenzo
 
Posts: 3446
Joined: Tue Apr 03, 2007 1:32 am

Post » Mon Mar 14, 2011 11:49 pm

I'm pretty sure they use http://www.speedtree.com/ for making forests
User avatar
Amysaurusrex
 
Posts: 3432
Joined: Wed Aug 09, 2006 2:45 pm

Post » Tue Mar 15, 2011 12:02 am

this just brings up the problem of viewpoint. fractals can make some outrageously beautiful landscapes that look great from a bird's eye view, but are impossible to texture so they look good while standing on the surface.

pre-rendering as used in movie effects is easier, because the viewpoint is fixed before the render. video games have to render landscapes on the spot depending on where the player/camera is and how it is oriented. you've probably heard terms like "draw-distance" and "texture-scaling" that explain this.

basically, current processing power is holding back from rendering complex shapes like this in real time...but it is indeed around the corner.
User avatar
Ebony Lawson
 
Posts: 3504
Joined: Fri Feb 16, 2007 11:00 am

Post » Mon Mar 14, 2011 11:57 pm

Fractals are math, mathematics can never go old. :wink_smile:
User avatar
Shaylee Shaw
 
Posts: 3457
Joined: Wed Feb 21, 2007 8:55 pm

Post » Tue Mar 15, 2011 3:13 am

Don't people already do this in video games...?
User avatar
Darren
 
Posts: 3354
Joined: Wed Jun 06, 2007 2:33 pm

Post » Tue Mar 15, 2011 5:09 am

This is pretty interesting - could be an interesting alternative to soulless heightmapping when it comes down to procedural terrain. Just swap out those solid colors with an alpha map.
User avatar
Gisela Amaya
 
Posts: 3424
Joined: Tue Oct 23, 2007 4:29 pm

Post » Mon Mar 14, 2011 4:44 pm

Don't pin me down on this, but i think the construction set heightmap editor uses some sort of fractal design. In the heightmap editor you can "auto-generate" some landscape, complete with something called "seeds" and "generations". Which is a sort of mathematical formula comparable to the basis of fractals (Take the answer and insert it again, compute, answer, insert it again etc. etc.) Seeds and generations are also used in evolutionary mathematics. The function to auto-generate has, i think, also been used in the shivering isles expansion, which imo was a bit dull.
User avatar
Peter lopez
 
Posts: 3383
Joined: Mon Sep 10, 2007 5:55 pm

Post » Mon Mar 14, 2011 6:36 pm

The use of fractals to pre-generate large areas is good as a "starting point", but still needs to be hand-tweaked. On average, or at a distance, a fractal-generated heightmap or forest looks good, but there are a lot of individual "anomalies" that become apparent when viewed closer. Since the player will generally be wandering around and viewing everything from a much closer perspective, everything would have to be manually checked and tweaked where necessary, before using it in the game. That's a lot faster than manually placing everything, but still a lot of tedium and time (time = money) for the developer in order to create large areas of generated landscape.

A more simplified set of routines for things like grass and tree placement (or housing, etc.), using a grid with both fixed and random offsets where needed to avoid obvious "rows and columns" might be more practical in actual use, for most applications.
User avatar
Honey Suckle
 
Posts: 3425
Joined: Wed Sep 27, 2006 4:22 pm

Post » Mon Mar 14, 2011 9:44 pm

IMHO the best solution is in fact a fractal landscape created in real time but with a tweak.

I mean, the landscape should be a hierarchy of object oriented landscape generators, each class fine tuned for a style of landscape, (like mountains, ravines, jungles, beaches, swamps, and so on...).

Those landscape generators, could use fractals to build infinitely detailed stylized areas which could blend seamlessly, (as they are generated in the real-time, they can adopt to each other), and they could use sub-landscape generators, to fill their inside areas, like the detailed and stylized small parts of a bigger area.

The end result can be tweaked and fine-tuned manually by designers and if you raise a point, the nearby area could raise to adopt to the change, (as plasma fractals would do so), or the designers could change the shape of the generators, move them around, or alter them in any way the parameters would allow.

Those object oriented landscape generators would paint and texturize their supported areas the style that would be suitable, but then again the designers could change the textures as they like, like the current editor, but with the difference that the areas are rendered in the real time and the changes are applied after that.

This would allow making a vast but infinitely detailed landscape, that is generated on the fly, but the key places, which could be as large as the cyrodiil province, can be hand designed to the last detail, and the rest are not left under-detailed, but fully detailed to any distance that the designers like.

If we place a static object in a place, it could have anchor points that would dictate the surrounding landscape to change shape and snap to the object in the right places, so that it would fit perfectly to the landscape.

If a mod (or more), changes a place, the surrounding landscape would adopt to the changes, so that the landscape tears would become something of the past.

For instance in a village generator, we can have roadway generators that are stylized to cobble-stone roadway generators, dirt road generators and so on...

If we place a building to a side of the road, that building can have a mark that defines it's entryway, and this mark can communicate with road generator to change its shape and give a branch to the front of the door-way, and so on...

That's how two side-by-side landscape generators would adopt to each other.I can go on forever with this theme as I have thought about these ideas for a long time.

Just think of the possibilities... :whistling:
User avatar
Juan Cerda
 
Posts: 3426
Joined: Thu Jul 12, 2007 8:49 pm


Return to The Elder Scrolls Series Discussion