I'm throwing around the idea of a game where the player could dig caves, but I'm wonder what the best approach would be. I'm planning on using the Unity engine because of the price point but I'm not sure where to beginning.
I know how to use the terrain editor, but from what I understand it's basically fueled by a height map, so creating a cave would be impossible.
Has there every been a 1st/3rd person game that gave the player the ability to dig through the earth and how was it handled?
Any help would be appreciated!
Thanks!
Replies
Red Faction.
Yea your not going to get caves with the terrain. There was a neat voxel based terrain thing on the asset store...but unfortunately the guy took it down...
http://forum.unity3d.com/threads/94224-Introducing-Voxelform-voxel-terrain-(Marching-Cubes)-with-real-time-deformation.
A Minecraftish "poxel" (objects generated from voxels) approach would probably be best, but is crazy heavy on both memory and requires frequent geometry rebuilds and uploads, which is why Minecraft often lags when dynamic world elements are in play.
If you don't have a great deal of programming experience, don't try it. You might get away with 2D.
[ame="http://www.youtube.com/watch?v=OSmlrPcXumc"]StarForge - Early Alpha Video - YouTube[/ame]
[ame="http://www.youtube.com/watch?v=zWQl_Fpr9Gk"]Io -Indie 3d platformer- Voxel Level Editor - YouTube[/ame]
[ame="http://www.youtube.com/watch?v=Rc1ztktWxJs"]Voxel terrain engine - work in progress - YouTube[/ame]
I think what you want to work with is a 3D array of points, like minecraft, that get converted into geometry, and then use a smoothing method like tesselation or marching cubes. But to be honest, based on you asking such a generic question, I don't think this is within your reach.
What do you need caves for? How important are caves for gameplay? Can you get away with pre-made geo? How about just using height differences and having the cave 'collapse' through gravity if they try to make an overhang?
It's too bad that voxelform was taken down because that would have been a great start.
Thanks again and I'll let you guys know what we come up with!