Skip to content

River Generator

The River Generator is a geometry nodes-based system that enables you to generate a realistic river, ready to be seamlessly integrated into any environment of your choosing. It comes equipped with a scattering system for rocks and vegetation, a caustics effect, and an animated flow of the water. Here, we describe the functionality of the geometry nodes modifier.

River Generator is optimized for Cycles

While the River Generator is optimized for Cycles, it provides a high-quality preview for EEVEE. Some features, such as fake caustics, are currently not available for EEVEE.

Spawn the River Generator

The quickest way to begin your work is by spawning the River Generator asset is through the engon Asset Browser. This creates a path with an attached aq_Generator_River geometry nodes modifier.

Get more information about Spawning Assets.

Use Edit mode on the path

You can modify the spawned path in edit mode to shape the river according to your needs. Tilt and Shrink/Flatten functionality works as expected.

River Generator Properties Panel

To modify the river object, the aq_Generator_River object and head over to Modifier Properties Panel. Here is a quick explanation of the modifier's inputs.

General

Self Object

This should be set to the object on which this modifier is applied.

Resolution

Determines the quality of the river's mesh. A higher number results in more vertices. Higher Resolution might lead to degraded performance.

Width

Sets the width of the river.

Depth

Sets the depth of the riverbed.

Bank and Riverbed

Bank and Riverbed

Controls the presence of the bank and the riverbed - ground on the bottom and the sides of the river.

Bank and Riverbed UV Scale

Determines the UV scale for the bank and the riverbed.

Bank Height, Bank Width

Sets the dimensions of the bank.

Bank Material

Material assigned to the bank.

Riverbed Material

Material assigned to the riverbed.

Noise Strength, Noise Scale

Controls the random displacement of the riverbed and banks along the flow of the river. Higher values work better with higher Resolution.

Visual Effects

Foam Strength

Determines the strength of the foam effect present on the sides of the river and on the objects.

Caustic Strength, Caustic Scale

Specifies the strength and scale of the fake caustics effect visible on the riverbed. Available only in the Cycles rendering engine.

Animation Speed

Controls the speed of the river animation.

Collisions, Collision Complexity

Objects in the Collision collection create foam on the water surface where they intersect. Increased collision complexity results in a better visual effect but may lead to degraded performance.

Vegetation

Vegetation

Objects in the Vegetation collection will be scattered on the banks. The objects will have random rotation along the Z axis, and limited random rotation along X and Y axis, so the Vegetation objects will be "growing right side up".

Vegetation Density, Vegetation Viewport Density

Specifies the amount of scattered objects from the Vegetation collection. Lowering Vegetation Viewport Density enhances viewport performance.

Vegetation Slope Max

Maximum incline of the ground where Vegetation objects will be scattered. Removes unnaturally looking objects from waterfall-like inclines and steep banks.

Rocks

Rocks

Objects in the Rocks collection will be scattered on the riverbed. The objects will be randomly rotated along all three axes. Instances of these objects create a foam effect on the water surface, where they intersect.

Rocks Density, Rocks Viewport Density

Specifies the amount of scattered objects from the Rocks collection. Lowering Rocks Viewport Density improves viewport performance.

Rocks Slope Max

Maximum incline of the riverbed where Rocks objects will be scattered. Removes objects from waterfall-like inclines.

Rocks Distance Min

Sets the minimum distance between two scattered objects from the Rocks collection. Increasing this value helps resolve clipping issues.

Rocks Scale Min, Rocks Scale Max

Specifies the minimum and maximum values for scale randomization of scattered objects from the Rock collection (how much bigger or smaller the instanced object can be).

Rocks Collision Complexity

Objects in the Rock collection create foam on the water surface where they intersect. Increased collision complexity results in a better visual effect but may lead to degraded performance.

Randomness

Seed

Seed affects Rock and Vegetation scattering and the Noise displacement. You can re-roll the randomness by adjusting this value.