Currently worldmachine create transtion between pixels, when they have difference in height with neighbors
It bad in cases, when you work on maps for blocky-style games, and you need to obtain sharp preview of pixels. For example if you have blocky mountain with block gradient on sides, they mostly become vertical set of triangles, rather than squares - so you can not preview real look of mountain inside blocky game engine
I want to request option to turn off visual transition between neighbors, to see exact hard border of pixel sides
I learned that pixel is not a cell, but just a dot of some value
So for disabling of that transtion, it is possible to round transition upper, or lower
So all spaces will receive value of neigbor, to make all sides looks sharp
I understand that you may accept needs for minecraft maps projects less serious than feature requests for projects of AAA games
But minecraft maps market is built by adults, and have serious weight
So i really decided to write explanation why i ask for that feature
So, this is a fun one, as I don’t think you can do it without writing a special algorithm for it. Because, what we see right now is just plain, simple interpolation/connecting of a vertex plane. What you suggest would require adding another vertex, or you would en up with a hole in your final mesh.
You even see it in your example image. To prevent this, you would need another vertex right below and horizontal to the existing vertices. So now you need an algorithm that can work that out, but also must know when a step is 1, 2 (or any number of blocks) high etc., which may turn out to be finicky.
A good workaround, is to set interpolation to “nearest neighbour” and just up the resolution 2, or even 4 times. The only issue is, that this will increase RAM usage by a lot.
oo
THANKS FOR EXPLANATIONNN
i have one more question -
is new vertex needed to draw custom path?
for example in Shape Node of WM 4030 we did have option to draw two vertex, and set custom path between them, without creating of new vertex (for some reason WM 4030 do not want to launch, but i would like to show what i mean)
So want to ask - is that possible to set custom path without creating of new vertex? Current one looks like linear interpolation and do not use new vertex. Maybe other types also possible?
So, this is interpolating a line (that is, calculating/determining the path of a line) based on properties given to each vertex (often called handles). In 2D space, yes this could maybe work, but in 3D space, you will get the same issue as before. All 3D graphics break down to triangles (okay most, not all), and you cannot have a perfect curve in 3D graphics. It is always an illusion of a smooth curve, that, at the bottom, is constructed from triangular surfaces.
So, in order to create a sharp 90 deg angle, instead of a slope (which consists of 2 triangles to make a rectangle), you now need 4 triangles to make two rectangles. And for that, you need 2 extra vertices.
There’s no way to represent a 90 degree angle with a heightfield - even a high resolution heightfield will always have a <90 degree slope.
It WOULD be possible to write a code device plugin that takes a heightfield and outputs a mesh with sharp edged features. Not at the moment, in 4050, as this would require support for the mesh datatype in the code device - but that is a planned feature for the next version.
Potentially I could write a special “voxel style” output path that would do a conversion, but I would need to see a lot of interest in such a feature to consider it.
There might be an easier way to achieve this in the next version.