*(Using Blender 3.6.5)* #### Objective #### To model the water surface of a stream flowing downhill. [![Results][1]][1] #### Approach #### Extrude a Bezier curve following the bottom of the stream, after a slight vertical shift, to generate a surface larger than the valley. #### Procedure #### ##### Step 1: Visualise the slope ##### [![Shading][2]][2] <b>1. </b>In the <i>Shader Editor</i>:<br> <b>1.1. </b>The vertical coordinate Z of the landscape is recovered by combining <i>Texture Coordinate</i> and <i>Separate XYZ</i> nodes.<br> <b>1.2. </b>Z is input in a <i>Wave Texture</i> node which <i>Scale</i> parameter is adjusted to sample the valley of interest.<br> <b>1.3. </b>The result is iso-elevation contour lines.<br> ##### Step 2: Draw the curve following the valley ##### [![Bezier curve first edition][3]][3] <b>2.</b> In <i>Edit Mode/Top view</i>:<br> <b>2.1.</b> Add a <i>Curve/Bezier</i> object above the landscape.<br> <b>2.2.</b> Add more control points above the landscape also. Move these in (X,Y) directions and adjust tangents to follow the valley floor, using the contours as guideline.<br> <b>2.3.</b> To put these control points on the landscape mesh, add a <i>Shrinkwrap</i> modifier. Set <i>Wrap Method</i> to <i>Project</i> along <i>Negative Z Axis</i>. Select the landscape as <i>Target</i>. <b>Check the <i>Apply on Spline</i> icon to project the control points rather than the curve</b>.<br> <b>2.4.</b> Duplicate this Bezier curve (to keep a copy before destructive actions) and <i>Apply</i> the modifier to the copy. ##### Step 3: Extrude the duplicated curve to model water surface ##### [![Edit copy][4]][4] <b>3.</b> In <i>Edit Mode</i>:<br> *(to be continued)* #### Resources #### [<img src="https://blend-exchange.com/embedImage.png?bid=4RrEDQMd" />](https://blend-exchange.com/b/4RrEDQMd/) [1]: https://i.sstatic.net/qwWz7.jpg [2]: https://i.sstatic.net/MP6J9.jpg [3]: https://i.sstatic.net/SNnBg.jpg [4]: https://i.sstatic.net/NXJui.jpg