Sign in to follow this  

Fully dynamic worlds

This topic is 3846 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

So, I'm cooking up this idea in my head of a fully dynamic world that can be manipulated by players and I'm looking for feedback on some of the ideas. The basic idea is to build up the world from nodes of different "elements" (for the sake of giving it a name). A simple example: 10 nodes of "life elements" stacked on top of each other would be rendered as a tree. And a lot of "earth elements" clustered together would be a mountain. Something along the lines of that. In case of the 10 "life elements" stacked on top of eachother, the way they are stacked could even represent the shape of a tree. For example, if the third node is displaced a tad to the right that would be a branch. I believe you can get quite a versatile world like this if you made them modify themselves, such as a tree generating new nodes over time. The game element would be achieved by giving players the ability to manipulate these nodes or generate new nodes of a certain type. This is very vague, but think of things like a player/magician manipulating the earth nodes around him to create a wall of earth. Or have the player throw fire nodes that consume life/tree nodes. Ofcourse everything would have to be rendered procedurally and it could be slow as hell. Perhaps I could generate meshes in memory on the client side to speed that up. Memory usage would be OK-ish I guess since I will not have an extensive set of meshes and textures in memory, since most of it will be rendered procedurally. A node (or a lot of nodes) would not take up much memory compared to a mesh. CPU load might become a problem if the nodes are going to interact with eachother. Such as water falling from the sky, landing on the earth and moving to the lowest point. And last but not least, networking such a huge amount of data is something different than sending the position of a player once in a while. This whole idea is radically different from existing main-stream technologies and my goal is to find a way to make a game world more dynamic without sacrificing too much performance or gameplay. But I foresee a tonne of problems concerning performance mainly. If you have any idea how to tackle any of these problems, or if you have completely different ideas on how to achieve a fully dynamic game world, then I would love to hear.

Share this post


Link to post
Share on other sites
It's not an entirely new idea, it seems to have a lot in common with deformable terrain (in this case, additive instead of purely subtractive), which is certainly doable -- and some overlap with procedural model generation (think Spore).

Entirely elemental nodes might be interesting for a toy/simulation type deal, although an extendable hybrid system might be even more so. A "genetic" system might work though. I'd probably use a pixel or voxel based system for prototyping the idea on. Think worms, only with a lot more than just the dirtbomb.

Share this post


Link to post
Share on other sites
Alright, so I was a bit too quick calling this "new". Your voxel suggestion is interesting though. I heard the word before, and now I'm reading up on what it exactly is it seems as if it is what I'm looking for for rendering purposes.

Share this post


Link to post
Share on other sites
At risk of making a shameless plug have a look at my project here - it uses a volumetric representation (voxels) for the world:

http://david-williams.info/index.php?option=com_content&task=view&id=24&Itemid=37

and also here:

http://www.ogre3d.org/phpBB2/viewtopic.php?t=27394

If you want to see a more substantial (though older) engine then have a look at Ken Silvermans Voxlap here:

http://advsys.net/ken/voxlap/voxlap05.htm

Feel free to ask any questions about it...

Share this post


Link to post
Share on other sites

This topic is 3846 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this