>>> 64bit Windows or Linux
>>> NVIDIA GPU compute capability 3.5 and above! See this list for compatible NVIDIA GPUs under compute capability 3.5 and above. Also, latest driver is recommended (but not windows insider).
>>> Requires Blender 2.92 and above
If you are not sure is your system supported contact me with your specs (see Contacts below).
>>> If you have any problems or questions I am always there to answer (just give me a day or two).
If you experience issues with the Erosion Node make sure to update GPU driver to the latest version (do not use Windows Insider driver version).
- 8/21/2021 - Added version 1.1.0 Beta 6
- 3/13/2021 - Landscape Output node now updates after each node and during erosion, making it easier to see results. Also several small bugs and stability improvements were made.
- 2/23/2021 - Added new experimental Landscape Output node. This node will be receiving a lot more improvements.
- 2/09/2021 - Added Linux support. Below GIF is a real time simulation and recording using NVIDIA GTX 1070 in Linux Mint:
- Very fast GPU powered erosion on massive scales - Resolution of terrain erosion will depend on GPU RAM. From experiments 2GBs was enough for 4096 x 4096 resolution, but your results may very. On my GeForce GTX 1070 8GB GPU it only takes 3-4 seconds to erode 512x512 terrain, with every erosion setting enabled. Hydro, Bank and Slope erosion on massive 8196x8196 resolution takes about 12-14 minutes, and about half that time on the RTX 2070 8GB.
- Cache system - so that you do not have to recalculate nodes that have not been modified.
- Live View of erosion process and water flow - Amazing for feedback on what is happening. The system stays responsive during erosion simulation so that you can zoom and move around the preview, or switch between view layers.
- Hydro Erosion - 2D water simulation runs down slopes and picks up sediment, slowly (or quickly) eroding the terrain. Sediment is deposited in lower areas or where speed of water flow is reduced.
- Thermal and Sediment Slope Erosion - Thermal erosion erodes steep edges, smoothing out the landscape. Converting terrain and rock to sediment. The sediment slope erosion moves sediment down until a stable slope is reached.
- Dissolution Erosion - Dissolution is chemical erosion in slow moving bodies of water. For example a lake will slowly erode the rock and terrain around it, forming smooth bed.
- Solidification - Over many years sediment begins to harden this converts sediment back into terrain.
- Fast import of ANT Landscape objects, or any object that is a perfect grid when looking from the top view down (so only displaced in z-axis). If you are used to using other landscape generating tools, but not satisfied with their erosion capabilities or level of resolution then this is for you!
- Bake Vertex and Color data to a grid object (like bank to the ANT Landscape mountain).
- Export layers as either single images or as channels packed into an image.
- Procedural Texture Nodes and Math Node for generating complex noise based terrain (there will be a lot more improvements in this area).
- And lots of other small "features", like making sure the user does not crash when running out of GPU ram and so on :)
All future updates for this Add-on will be free!
How Does It Work?
You do NOT need additional Python modules. The GPU code is written in C++ and comes with the Add-on. This Add-on installs just like any other Blender Add-on.
Note that this is NOT (yet) a one click terrain generation tool. However, the erosion is very simple and straightforward, checkout the included Demo files on typical usage.
TerrainNodes takes as input either textures, images or a grid object (like ANT Landscape). See this video for generating terrain using procedural textures made in the shader editor. The resulting output is images or vertex data.
TerrainNodes outputs 32bit EXR images, which can be used for displacement, shading and texturing. The simplest workflow (for now) would be generating base terrain using any other Add-on (such as ANT Landscape) that comes with Blender and then use TerrainNodes advanced erosion capabilities to increase realism and resolution substantially. TerrainNodes erosion is capable of completely modifying your landscape (just crank up the erosion strength).
Why Do I Need This?
Sure, there are other Blender add-ons that have erosion built in for free / purchase, but they all fail in resolution, speed, control and features due to their implementation. TerrainNodes runs on your NVIDIA GPU (and eventually multithreaded on the CPU), which means you can have very high resolution and still get results sometimes in seconds. There are of course much more capable and more popular standalone programs, that also cost much more and are not integrated into Blender. However, I feel that TerrainNodes comes very close to their erosion capabilities and maybe even does certain erosions better.
Links / Contact
Terrain Nodes Website/Docs (still work in progress)
If you experience any crashes / bugs message me on Discord / Twitter or email val.barashkov at Gmail. (Discord is preferred)
How to Un-install old versions
Go to Edit > Preferences > Terrain Nodes and uncheck Terrain Nodes, now close Blender and open Blender again. Now you can click "Remove" to uninstall Terrain Nodes. If you get an error just close Blender, open it again and click "Remove" again.
I would LOVE to see your results, please tag #TerrainNodes or @ValeraBarashkov on Twitter or post to Discord! I will try to answer questions as quickly as possible.