Water

Coordinator
Apr 7, 2011 at 7:48 PM
Here is the start of an interesting discussion about water on IRC :
[15:33] <enomi> maybe water doesnt have to be in cubes, like http://graphicsrunner.blogspot.com/2008/11/water-game-component.html
[15:34] <enomi> just identify the water surface quads somehow from the cube and have an underwater effect
[15:35] <enomi> water surface effect applied to water surface quads and underwater effect applied underwater
[15:37] <jacoo> what about flows?
[15:37] <jacoo> when blocks are removed etc?
[15:38] <enomi> update the surface quads from block array
[15:39] <enomi> there can still be water blocktype blocks in the arrays, its just that only the surface has to be rendered as water
[15:40] <enomi> rest assured, I know its easy to say in therory, I m still a coder not a full time coordinator :)
[15:44] <enomi> could even enable more realistic flow , calculate the volume delta of water when a chunk is changed and adjust the water level
Apr 7, 2011 at 8:04 PM

Have you guys seen Fortress Craft? He's implemmented somthing similar to this.. . though not as nice to be sure.

 

http://www.youtube.com/user/ProjectorGames#p/u/4/vKd6fdiuVhQ

 

I don't know if he supports flowing water though. looks like it just fills a space in an unbelievable way. the look is ok though.

Coordinator
Apr 7, 2011 at 10:56 PM

I was going to post about water earlier - i read an interesting article yesterday about treating fluid blocks as a cellular automaton rather than a queued flow as i'd tried to implement previously in the original techcraft - the article is on the minecraft wiki somewhere but i bookmarked it at work and decided not to post it until we'd got the core engine issues resolved. I'll find it again and post it on here...From the article i get the impression that minecraft uses this already to some extent.

The idea itself is sound and implementing water this way has some intriguing benefits (if done right) like maintaining water volumes so that water doesn't just get created the way it does in the original techcraft code (unless you have an actual source) and will flow from one place to another and deplete the original source.

I've got a copy of Wolframs 'A new kind of science' propping up the bottom of my bookcase - it's a seriously big tome which i've only ever dipped into, but you can do some amazing things with cellular automata and a block world is ideally suited to implementing these types of behaviours. 

At it simplest everyone must have seen the game 'Life' which achieves complex behaviours from very simple rules which would be easy to implement in a block world. Wolframs book expands these ideas to model extremely complex fluid dynamics and other dynamic systems from relatively simple sets of rules. Once we've got a solid core engine in place playing with these types of things should be easy to do and something personally i'm very interested in looking into.

 

Coordinator
Apr 8, 2011 at 12:38 AM

I'm very interested in looking into this subject too :   after water volumes, the next step would be some sort of pressurized lava flowing up, making volcanoes.  It would make digging too low extremely dangerous !