What smooth terrain materials would you like to add?

Transparent ice would be cool, also maybe more of a light coloured dirt, and a grey dirt. More grass and sand features would be great too.

2 Likes

Why not have another “voxel property” (like water direction etc) that’s related to the material’s color?
Have it be (127,127,127) by default, which would make the material look like it is now.
If you change the color of a voxel, the material’s color in that voxel changes too.
That would suddenly “add more materials”, as coloring current materials opens up a lot of possibilities.
We could also have different colored grass with smooth transitioning using this.

It’s not an idea that can implement on a week, but it would be very nice and open up a lot of new terrain stuff.

I can imagine that’s quite a heavy data load if you have millions of voxels (24 bits times millions of voxels is easily tens of MBs of extra data), and if there are any rendering optimizations that assume the colors of certain groups of voxels are the same, that code has to be deoptimized.

2 Likes

ROBLOX has a nice method of “grouping” lots of cells with the same material.
The same can be done with colors, so the data load is a lot less.
(Especially if almost everything is the same color)
(Not to mention you don’t really need to transport the default color)

2 Likes

That is currently optimized for the limited set of terrain materials that are available, no color is being sent right now. It would probably require a lot of engineering work on the data format and whatnot to also transfer the color and take this into account when rendering is performed. If you have differently colored parts with the same texture, you need to calculate the resulting textures for each color in the map. There’s no way it wouldn’t impact performance.

1 Like

How does CellDirection work with the new terrain? Is it still being used?

Random idea, what if water direction was stored as pressures/densities and water would flow from points of high pressure to points of low pressure, and the acceleration of the water graphics would be derived from the pressures, as well as world gravity. This would possibly make the “voxel property” take up less space than a 3D vector.
Maybe that “voxel property” could be applied to the orientation of brick and some of the stone paths @woot3 suggested.

I’m getting a little carried away lol, eventually we’ll need good rivers and waterfalls, and blocky textures aren’t too useful unless we can control their direction somehow.

1 Like

Nope


Not terrible but not awesome… some colors work in really strange ways (which means I should work on the color mixing formula more). No promises thus far :slight_smile:

29 Likes

You’re doing gods work

How’s the api looking so far? I’d understand if nothing is final. Just curious

2 Likes

I assume those are new materials, not the “color the voxel”-thing?
I like the properties you showed there, looks promising and fun.

I think that’s just grass material coloured differently, not ~5 separate materials.

Separate the smooth water from the solid terrain ?
IDK maybe two different terrain / layer.
So the water border when it touches the solid terrain could be clean, and the water shore must be better !

3 Likes

Ideally terrain wouldn’t be a singleton, and you’d be able to move them around like models. One day maybe the water material will work for parts :grin:

If these experiments end up in shipping something then I think there would be another optional 3D array for WriteVoxels (and another return value for ReadVoxels) with BrickColor as the data type. Probably every material would have a “default” color for compatibility with existing content and WriteVoxels calls that don’t specify color array.

2 Likes

Yeah, that would be cool. It’s unfortunate that we ended up with a singleton :frowning: not so easy to change now.

Can we get some sort of metal material that places like brick and wood planks? It could look a bit crumpled and rusted when blended with other things like grass, but in relatively decent shape by itself.

Something like this:

3 Likes

Any updates on this?

Actually yes

2 Likes

We have art for new materials pretty much finalized, working on integrating it into production builds.

7 Likes