Archived Terrain ideas

Nym Traveel

Active Member
Contributor
Art
World
To start it of: I have no idea if this way is intended or not - this would be a rather drastic step away from the current looks of the game.
Also I have to annotate that I have not much clue about the whole voxel and rendering stuff, this is just an idea which came to my mind lately.

Enough babbling, lets go:
So, voxel based terraingen looks quite awesome, regardless of whether i look at Terasology, minecraft, cubeworld or whatever. But they have one downside:
even the biggest mountain looks not natural if it's blocky (really?! :O ).

technically speaking: voxels are just 3-dim arrays of points in the cloud and a (arbitrary complex) discrete noise gives them values based of which the mesh is generated.
Now comes the part where my understanding of this topic get's quite low.
What if one would let run a subdivision algorithm (e.g. Catmull-Clark to name a prominent one) over this mesh and generate a smoothened one? Of course the polygon cound would get quadrupled (if my math is correct :) ) but I doubt this would kill an average computer.
(Exept if you planned to implement a mesh simplification like proposed in -this- thread)
This would result in a way more natural looking landscape (which is still totally random!).

Some Problems:

  • Some things will get too even, e.g. caves with harsh rock formations. This could be resolved with a weightened subdiv that some materials like stone don't get smoothened as much as grass/dirt (or even negativ smoothing - take the offset vector for the smoothened edge and apply it backwards; I have no idea what fancy looks this would give^^). Perhaps even build a suddle noise in so that a straight cliff is slightly broken up
  • Block updates: A technical issue I have again no clue about. When a block/voxel is harvested or destroyed the surrounding needs to be updated.
  • Block updates: block/voxel gets placed: same as above
  • definately not smoothened blocks: Not really a problem, a small detection whether a Block shall be smoothened or not. Candidates are building-bricks or maybe stairs in the future.
  • Textures: i have no f*king clue about texturing subdiv surfaces properly :O
  • There's certainly something I missed here
Biggest problem:
Who's gonna implemet it? :O
So, this would be a rather drastic change but if you ask me it's worth a thought.
Let me hear your opinions
Nym
 

Cervator

Org Co-Founder & Project Lead
Contributor
Design
Logistics
SpecOps
I was with you for the first bit until you got technical, then suddenly there were fancy terms all over! :D

I recall that there's a non-blocky procedural game out there, saw a demo on YouTube, but can't remember the game. Works on the same blocky sandbox principle but makes everything very "bubbly" instead.

That would be drastic but also very neat! But yeah, would need somebody with a lot of time and skill to play with that in a branch, maybe as a highly advanced and optional graphic toggle :)
 

Nym Traveel

Active Member
Contributor
Art
World
Didn't thought that i'm getting too fancy for u guys :D
I wouldn't say to go into the way of making everything just bubbly but enhancing the blockiness with a few more (but procedurally calculated) polygones.
Ok, I admid this last sentence was a bit strange... :rolleyes:
Hmm, let's just say i give you a handmade version of my idea on monday evening (german time), I am at the moment on a too weak pc :)
 

Kai Kratz

Witch Doctor
Contributor
Architecture
Logistics
I was with you for the first bit until you got technical, then suddenly there were fancy terms all over! :D

I recall that there's a non-blocky procedural game out there, saw a demo on YouTube, but can't remember the game. Works on the same blocky sandbox principle but makes everything very "bubbly" instead.

That would be drastic but also very neat! But yeah, would need somebody with a lot of time and skill to play with that in a branch, maybe as a highly advanced and optional graphic toggle :)
Dont worry your idea was well understood but, well it would distinctively change the current setup. And looking at other MC clones who tried similar stuff im not too convinced that this is the right direction.

:)

Still feel free to show some stuff!
 

Nym Traveel

Active Member
Contributor
Art
World
Can you post one or two examples; I have not much experience with mc clones (this here is not a clone ;) )

Edit: and I thought this would be sth. new... :cry:
 

Immortius

Lead Software Architect
Contributor
Architecture
GUI
There is the Marching Cubes algorithm.

This is possible to do. At the least I was thinking of adding some sloped blocks. This has been partially waiting on the physics arc so that we could handle non-cubic collisions. We're almost where we need to be for this though.
 

begla

Project Founder and Lead Developer
Contributor
Architecture
Logistics
I've worked on various ways to visualize voxel-based terrain - one uses the mentioned Marching Cubes algorithm. I could contribute my C++ or C# implementation. I combined that experiments with various local and global lighting approaches and many experiments plus research to make the texturing look good.

But I'm not the greatest fan of using that kind of terrain for Terasology to be honest. I would like the base game to be solely block based with some sloped blocks here and there. Using this completely different approach will create many new problems and might change the gameplay and - of course - the visual look completely. But creating a addon later on that supports this rendering approach. Why the hell not?

I would suggest focusing on multiplayer and gameplay elements at the moment and not to start working on a completely different rendering and world generation approach. It was completely intentional that the game has a similar look compared to Minecraft because I actually enjoy that visual style! :)
 

Nym Traveel

Active Member
Contributor
Art
World
As far as i understand the Marching cubes this is another approach to generate the terrain in first instance out of the generating noise - my suggestion would let the terrain generate and then subdivide/smoothen it. This would have the advantage (from my view) that different materials can be handled differently and placed blocks would be easier to process. If you don't mind I will anyway post some screens next week :D

As I posted this I certainly was aware of it beeing a huge cut ;)
Just wanted to get your attention on this topic (as I know by now it was already there :D ).
So, year maybe sometimes as a mod or sth. similar and when it will get popular why not a switch to turn it on or off? :)
(year I certainly cross my bridge before I come to them - and i hope dict.cc translated this saying right :) )
 

Immortius

Lead Software Architect
Contributor
Architecture
GUI
Marching cubes is actually an algorithm to do the smoothing when rendering an already generated voxel world. It isn't a replacement for noise or anything. See Star Forge, it uses that technique.

It would be too much work to do just to have off until someone wants to use it.
 
Top