Mathematic Operations on Curve Nodes

This is probably a niche subject/idea, but I think some very interesting results would be possible if curve nodes could be further edited by various mathematical processes, or if you could directly input a mathematic equation to a curve node. As they appear to (functionally) be a graph, being able to graph any equations (provided the resulting graph doesn’t curve negative in the X-axis) could be very helpful in attempting to create specific shapes in the terrain.

I thought about this while viewing the topic on creating a dunes macro. In Terragen, a lot of people create procedural sand dunes through pure math, and feeding that into the terrain. It would be cool if something similar could be achieved in World Machine.

As an afterthought, here is a link to a research paper on the formation of sand dunes, including the math involved in the shape. For use-case scenarios like this, I think it would be a cool and useful function of World Machine to be able to directly input equations such as those presented in the article into a curve node.

2 Likes

This sounds like a very useful idea, especially since the curve devices can be linked to the River device.

Current curves can have negative values, though I’m not sure how WM handles those, I think just flooring them to 0. To me, the curve devices can have some more control overall, as they now seem to be a bit wacky implemented. It is difficult to tell what the amplitude of a curve is, it is not possible to normalise a curve and clamping a curve is a cumbersome experience. It would also be cool if we could apply some logic to curves and maybe change the behaviour of a curve if it goes above a certain value, or choose to mix in a different curve.

1 Like

By negative values, I mostly meant any kind of graph that, when applied to a terrain, would result in overhangs, since that’s not possible in World Machine. So, visually, no point on the curve should be able to move any further left (negative on the X axis) than the previous point.

Ah like that, I see. That makes sense yes. Maybe let users choose what point should be hidden, something like a Min Max method.

1 Like