Geologically Accurate Video Games

Started by
10 comments, last by Catmull Dog 11 years, 7 months ago
Hello All: This is the first time that I have posted here, let alone been on this forum, so I hope that I am not shunned out immediately. However, if I am posting in the wrong area, or this topic has already risen before, feel free to flame on. rolleyes.gif

I am a recent graduate and have been looking all around for jobs in my field for the past year with no avail. After coming back from PAX Prime this year, it hit me: Why don't I try and do what I enjoy and not what others want me to do? Sounds like a good plan right? The thing is, my degree is not in programming... or electrical engineering... or anything really related to the video game field. It is in Geology. Don't get me wrong, I love love love love love gaming, but rocks are pretty high up there too. wink.png

After thinking about it, it occurred to me that many games don't get the science correct when it comes to the sciences, specifically the geological sciences. The more and more I play through open world games like Skyrim or even something as simple as Minecaft, some things just don't make sense through my eyes. I want to take the map of Oblivion, and create a geologic map, create a crossection of the land, make up a story of how it was created, but in many ways, I can not, and it always bugs me.

This is me, trying to get the word out there, trying to link the geologic sciences to gaming community, because it is indeed a beautiful thing when it comes down to it. I don't know how to even approach the idea of creating a scientifically accurate game when it comes to geology... I was hoping this is where some of you guys could jump in. Perhaps, some day, I could even become a scientific advisor for some right-minded video game developer out there... who knows?

Thanks for reading, and I hope this gets to the eyes of someone that appreciates it. wub.png

~~Disc07
Advertisement
Dwarf Fortress is about the closest I've seen to what you are talking about. The procedural world generation algorithm generates rock layers, water tables, erosion, etc. in order to populate a life-like world. Pretty cool stuff.

Tristam MacDonald. Ex-BigTech Software Engineer. Future farmer. [https://trist.am]


Dwarf Fortress is about the closest I've seen to what you are talking about. The procedural world generation algorithm generates rock layers, water tables, erosion, etc. in order to populate a life-like world. Pretty cool stuff.


Seconded. It also includes real-world minerals, so instead of "Zinc Ore", you find "Sphalerite". Before I played DF I didn't realise there were so many different metal-bearing minerals.
[size="2"]Currently working on an open world survival RPG - For info check out my Development blog:[size="2"] ByteWrangler
It sounds like you might be into procedural terrain creation tools, or perhaps voxel-based games. I did see a tool someone was creating to create terrain using physically based tectonics.
If you read the book Texturing and Modeling: A Procedural Approach, in Chapter 14, F. Kenton Musgrave talks a bit about the differences between teleological and ontogenetic modeling. Specifically, teleological is "a) the study of evidences of design in nature... c) a doctrine explaining a phenomena by final causes" whereas ontogenetic is "based on visible morphological characters". In essence, it is the differences between generating, say, a terrain using precise modeling of real-world tectonic and erosive forces, as opposed to modeling a terrain using random crap that happens to create something similar to what you are trying to achieve; ie, noise fractals and other techniques.

It's a discussion that has been occurring for a long time now; since the earliest days when modern graphical techniques were being pioneered in the 70s and 80s. While advances in hardware and computation speeds have been astounding, there are still very real, practical limitations on the available computing power. There are other constraints as well, especially in a game, where the (im)patience of the player is the key constraint. The aforementioned book has a number of quotes that I find to still be relevant, even in this day and age.

"Scientific models, or 'physical' models in computer graphics parlance, do not generally map well into efficient algorithms..."
"When you use a physical model... you often waste time computing the answers to questions about which you care not."
"Ontogenetic models tend to be--indeed ought to be--simpler and more efficient, both in programming and execution time, than corresponding physical models."

I remember once generating a new world in Dwarf Fortress. I love that game, but sweet hell was that generation process an onerous and frustrating expenditure of time. It even "failed" a couple times, forcing me to restart the process. I can only imagine how much longer it would have taken to generate it using more physically accurate processes, rather than the crude and error-prone processes being used.

Of course, for offline tools (such as those employed in making a game like Skyrim), I am certainly very much in favor of more accurate simulations. However, you also have to understand that extreme "realism" might ultimately run completely counter to the core idea of games, which is fun. Certainly, detailed and precise physical models are kind of cool, but you have to wonder if it is worth pouring hundreds of hours of design and execution time (detailed physical models can be VERY computationally expensive) for something that the vast majority of players are just going to charge across, guns blazing, far more intent on gibbing the enemy noobs than in studying the terrain around them for physical accuracy. That time might have been better spent adding more areas or maps, or in other ways enhancing the gameplay and "fun".

Eventually, I think, a team can abstract away a lot of the design for the physical processes, and amortize that expenditure across several projects, but it will always be a balancing act, and one in which fun and gameplay must always take precedence over physical accuracy. I think it is a worthy goal, what you want to achieve, though. I do recommend that book, though. It's a very enlightening read.
My feeling is that physical processes are best suited to generating finite sized play areas at design time. Unlike fractal methods, they can't be easily tiled and generated at runtime from a seed, so "infinite" play areas are out. I think the results can be great, and take a lot of load off the artists. Not having to create every cave by hand must be a relief! I imagine they work better for sandbox type games, as in story driven games a player may be confused by an interesting looking feature that has no purpose, or conversely the designers may want more control of the placement of features. And most importantly, at design time speed is not such a big issue.
Wow, JTippets you hit that right on the nose. The way you speak of it, I understand that the ontogenetic modeling would be more fit to the randomly generated sort of games like that of online Minecraft or even those that are much too large and very much encumbered by the many various repeatable models (mmorpgs come to mind here).

I would love to see a game like that of the Elder Scrolls, or really any that are set within certain attainable boundaries, to add some sort of realism to the nature surrounding the area. Active tectonics, rifting valleys, erupting volcanoes, hydrothermal activity, etc. I can see the whole mining aspect really thrown askew however since in reality, ores, especially that of various precious metals don't occur in such close distance from eachother... haha.

I feel like the teleological mindset of modelling would have to begin in a certain genre like you mentioned. There is no way a normal run and gun sort of genre, (or gamer for that fact) would stop and admire the nature of the region. It would have to be on a much more grand scale. It brings me to mind of many fantasy authors out there. Tolkien for instance almost had the entire region of Middle-Earth naturally and scientifically accurate down to a tee before any of the Fellowship ventured through its valleys, swamps, or mountain tops.

edit: I ordered a copy of that text on Amazon; i now have something new to read in the coming weeks. Thanks for the recommendation.

My feeling is that physical processes are best suited to generating finite sized play areas at design time. Unlike fractal methods, they can't be easily tiled and generated at runtime from a seed, so "infinite" play areas are out.

Not necessarily "out", geological effects decay with distance, so you might be able to dumb down simulation more and more as the distance to the player increases, eventually stopping all simulation at a given range. Other persistent effects like erosion with time are a problem though, since they would have to be started all over again if the player changes region. They could be faked though, perhaps.

This isn't trivial though, unlike fractal methods... I agree that this would work better on a limited map - but the map needs to be big enough to be convincing.

I feel like the teleological mindset of modelling would have to begin in a certain genre like you mentioned. There is no way a normal run and gun sort of genre, (or gamer for that fact) would stop and admire the nature of the region. It would have to be on a much more grand scale. It brings me to mind of many fantasy authors out there. Tolkien for instance almost had the entire region of Middle-Earth naturally and scientifically accurate down to a tee before any of the Fellowship ventured through its valleys, swamps, or mountain tops.[/quote]
I'm picturing an adventurer, fully clad in hardened steel armor, reaching the edge of a huge cliff and revealing dozens of squared miles of incredibly physically accurate snow-covered terrain, with misty swamps visible at the horizon, complete with the loud rumbling of the wind as it gushes through the trees, and the sound of little rock pebbles tumbling down the surrounding cliffs. tongue.png

“If I understand the standard right it is legal and safe to do this but the resulting value could be anything.”


Not necessarily "out", geological effects decay with distance, so you might be able to dumb down simulation more and more as the distance to the player increases, eventually stopping all simulation at a given range. Other persistent effects like erosion with time are a problem though, since they would have to be started all over again if the player changes region. They could be faked though, perhaps.


By all means, actions don't have to be real time, and I wouldn't expect that sort of realism in any game; possibly after certain parts of the story are finished the terrain changes slightly to show that time has passed. Much like the change of seasons or weather. But alas, this would require much more computations since the models would have to continuously be changing... hmmmm maybe that wouldn't work quite as smoothly as I'da hoped.
Some aspects of change could be slow-paced enough that you wouldn't have to spend game time on them every single frame, or the updates could be spread out across multiple frames. For example, consider hydraulic erosion. The Navier-Stokes equations for hydraulic flow and erosion have already been approximated on the GPU,. That could be an on-going task that is incremented in small bits each frame, and could even be implemented on the GPU using OpenCL if desired. Thermal erosion could be done in a similar manner. As Bacterius indicated, though, it would be tricky having "persistent" erosion in a large-scale world. Procedural methods compress very well; you can represent an entire world using a single integer seed to give to the generator. However, when changes are imposed upon the generated data set, there needs to be a record made of those changes stored to disk. Something like erosion causes changes across the entirety of the data set, which can result in a very large chunk of change data that must be stored to disk in order to maintain persistence. This could easily result in hundreds of gigabytes of data, even compressed, with a very large world.

BTW, someone earlier in the thread made mention of a plate tectonics thread. That thread is http://www.gamedev.net/topic/623145-terrain-generation-with-plate-tectonics/ and it looks mightily interesting. The guy even posted a link to source code. I haven't fiddled with it yet, but I might have to download it and tinker for awhile. This thread has got my brain fired up for procedural stuff again.

This topic is closed to new replies.

Advertisement