[50% OFF] TerraFormer - Advanced Terrain Shader (HDRP/URP)

Get TerraFormer from AssetStore

Join TerraFormer’s Discord Channel

It’s 1/1/24 and Santa came with a present! See yours here: TerraFormer - Advanced Terrain Shader | VFX Shaders | Unity Asset Store

TerraWorld 2023 & TerraLand 4 users will receive 30% discount when getting TerraFormer!

See #discounts billboard here: Discord

TerraFormer is an advanced modular terrain shader with high-end features targeting desktops & consoles to bring realistic visuals in Unity. It’s fully PBR and brings colors & life to your terrains

TerraFormer comes with 2 types of Standard & Tessellated (HDRP Only) versions each supporting up to 8 terrain layers in 1 pass exclusively developed for HDRP & URP.

The package also comes with 2 demo scenes of “Island” & “Mountains” to see the end result and a test-bed for changing terrain material parameters in real-time while targeting fully PBR rendering and high-end graphics.

Features:

  • Draw Instanced option
  • Layers’ Color Tint
  • Layers’ AO (Ambient Occlusion)
  • Heightmap Blending
  • Tessellation (HDRP Only)
  • Procedural Snow
  • Procedural Puddles
  • Colormap Blending
  • Procedural Texturing (GPU Splatmapping)
  • Tiling Remover
  • Terrain Holes
  • Fully PBR via Smoothness/Metallic/Heightmap/AO data taken directly from terrain layers
  • Supports terrain system’s “Draw Instanced” feature to bring smooth and very high performance experience

See it in action

Following screenshots are coming from “Mountains” & “Island” demo scenes that come with the package.

A kindly message to the TERRA community:
These shaders were in development for a full 2 years of work for a team of 3 including GPU programmers and technical artists and we hope you enjoy getting creative with colors & shapes created with TerraFormer.

Enjoy getting creative with TerraFormer in your beautiful scenes :wink:

1 Like

A lot of people asked: How to create terrain layers from Quixel Megascans, or from any other PBR textures/materials?

Here you go:

First of all, a terrain layer is a built-in Unity asset which is used on terrain as materials for texture painting and blend on terrain surface. To create a terrain layer file in Unity follow these links:

Regarding the Mask Map slot in terrain layer which is the key part in PBR workflow rendering, read the following:

If you look at the above picture, you will see that each channel in the mask holds specific data as follows:

  • R = Metallic
  • G = Ambient Occlusion
  • B = Height
  • A = Smoothness

Look for TerraFormer’s included terrain layers in the Island/Mountain demo scenes where all have Mask Maps in their terrain layers so that TerraFormer can use these map types and data for high-end rendering features of terrain surface.

For example, when you use the Tessellation version of the shader on your terrain material, if terrain layer has heightmap data in its B channel of Mask Map in terrain layer, it will displace the terrain surface based on that data and adds another dimension to your terrain visuals with more depth in shape and real-world PBR lighting/shadows.

So you can use any PBR materials on terrain including MegaScans materials/textures or if found online and feed them into Mask Maps’ channels so that you can make a mask out of them to use in TerraWorld layers.

The way we make maskmaps in office to include channels in the mask map from single map files is by this handy tool on GitHub: GitHub - andydbc/unity-texture-packer: 🔨 Utility to combine color channels from different textures into a single output.

Note: Unity’s built-in terrain rendering does not take Mask Map into account for rendering and it only uses Diffuse and Normal Map textures for legacy rendering but if you use TerraFormer on your terrain, then it will handle a full PBR workflow using Mask Map’s data.

Here you can see TerraFormer features which are mostly dependent on terrain layers’ maskmap:

1 Like

That’s not the standard on the UAS and as you’re selling via the Asset Store you’re running the risk of causing us devs a world of hurt. I’m really interested in purchasing, and it looks worth it even at full price, but it’s a hard pass until I know that I won’t be sued by incorporating your work.

9571369--1354435--upload_2024-1-9_13-2-28.png

1 Like

Thanks for bringing this up here, I’ve talked with Andrew about this case and we will update the package by today with no copyrighted content in place so that you can use everything in the package in your games and projects. Hopefully there was only a few minor files which were licensed and they all will be removed.

We will also port the scenes outside the original package so you can access them from our servers directly for a more modular file management and more frequent updates to demo scenes.

TerraFormer 1.0.3 has been released. Here is the changelog for ver. 1.0.3

1.0.3

  • Fixed HDRP Tessellation version when lighting and shadows were not properly rendering when Instanced Drawing option is enabled.

  • Added namespace “TerraUnity.TerraFormer” to all scripts to avoid conflicts and errors when other assets like TerraWorld exist in project.

  • Fixed Satellite Image/Colormap Blending UV issue on tessellated shader

  • Satellite Image/Colormap Blending is improved for better in-out blending

  • Added Color Tint for Satellite Image/Colormap Blending to easily do color correction on colormaps in combination with terrain layers’ overall colors

  • Fixed visual and functional artifacts when there is no maskmap available for any of the terrain layers

  • Added help and warning boxes to the UI when there is no maskmap available for any of the terrain layer assets

  • Fixed NullReferenceException errors when terrain in scene has missing materials.

  • Removed unnecessary files and assets (e.g. SkyandFogSettingsProfile) in HDRP version to avoid interference with user’s project settings.

  • Set proper ranges for some of the parameters in UI for a more straight forward and easier setup

Hey, really like the shader but i have few issues with it. So after i reload the scene terrain material fallbacks to default HDRP one.


I get failed to compile shader error because of this red error, thats probably why it fallbacks to default one after reload.

Since Unity is still experimental with Shader Graph and DX12, please make sure that your project is set to DX11 for the best compatibility and avoid these conflicts until Unity comes with a stable release with DX12.

1 Like

TerraFormer 1.0.4 is now live!

While it is still on AssetStore’s Flash Deal for extraordinary 60% discountTerraFormer - Advanced Terrain Shader | VFX Shaders | Unity Asset Store

It comes with “TerraFormer Manager” component that can be loaded from menus to handle all terrains, materials and terrain layers from one place to include/exclude certain tiles, set materials and assign terrain layers easily.

Another major improvement is that no matter how many terrains you have in your scene, they will only use one TerraFormer material for the best performance and consistency between settings and TerraFormer automatically sets terrain layers and splatmaps internally. You can still have multiple TerraFormer materials for your terrains in scene if needed and duplicated materials can have their “Global” option in settings set to off to make sure those specific settings only work for that material.

We have added Forward Rendering support for HDRP pipeline and made it compatible with SRP batcher.

Watch TerraFormer features in form of shorts:

TerraFormer’s 70% discount on Flash Deals offer starts in a few hours…!

Life is too short and so the Flash Deals :wink:

1 Like

Hello, very interesting asset, does the terraformer work with only unity terrain, or it also works with procedurally generated mesh like map magic or other similar assets?

1 Like

I pick it up this morning, only had a bit of time to play around with it… ( IN HDRP ) it looks great!!!
It was so far pretty easy to figure out… I used Gaia, But have [TerraLand 3 - Real-World 3D Terrain Tool](http://TerraLand 3 - Real-World 3D Terrain Tool) As well and
will be using it a far amount too!!! Once I have time I will leave some reviews for the better Devs in Unity …

I have one quick suggestion, I believe GTS does this automatically … Will it be possible for TerraFormer to more or less " auto get " the terrain layers from the terrain, instead of having to assign them by hand ?

So far from the very small time I have had with it… it is great!!! no regrets :slight_smile:

Thanks

1 Like

This TerraFormer version is made specifically for terrains since it links to terrains’ data to setup splatmapping and terrain layers based on whatever painted on terrain and some other terrain related stuff such as Instanced Drawing on terrains.

But we are working on a Procedural version of TerraFormer which does not need any terrain data (e.g. splatmaps) and works fully on GPU to automatically paint texture layers based on various conditions (e.g. height, slope, flowmaps, cavity…) on top of the mesh surfaces no matter how these mesh-type terrain surfaces are created. Please stay tuned for latest announcements and TerraFormer line releases.

Join our Discord server here: https://discord.gg/QgPpNpE

2 Likes

Thanks for the good vibes and energy, we are so lad you liked it so far :slight_smile:

TerraFormer already gets terrain layers automatically when assigned to a terrain and no extra steps are needed at all. I suppose you are referring to the “TerraFormer Manager” component which is an optional component in scene when you are dealing with multi terrains in scene where you can have an arbitrary list of terrain layers which can be assigned on all terrains in scene automatically if you haven’t set them for your terrains in scene.

So if you already setup your terrain layers and painted them on your terrain, then it’s only a drag & drop of material on your terrains.

1 Like

Thank you. Glad to hear you are working on a procedural version, bought the asset to support the endeavour.

1 Like

@Tsilliev Thank you so much for the great support, hope you like it and please share your creations with us on our Discord server here: TerraUnity

I will look around more… I assume it gets the terrain layers from Terraland 3 The button has pick terraland OR an other terrain not made by Terraland … then it does not seem to work … I probably then am doing something wrong .

Oh ok, TerraLand 3 does not generate or assign any terrain layers (grass, rock, stone, pebbles…) on terrains and only paints satellite images as base textures, so there are no terrain layers painted on terrain at first place to pass it to TerraFormer.

So you either have to assign and paint terrain layers on TL3 generated terrains or use another asset like TerraWorld which also generates splatmaps and assign terrain layers automatically so you only need to insert TerraFormer material on your terrains.

1 Like

Here is a screen shot of all the assets so far… ( templates still to go ) … I can say this for sure… Of ALL the terrain shaders I have, THIS is simply the easiest ( and Best ) I have ever used… in Unity … and I know I the default setting are just that and WOW on that even :slight_smile:

9822195--1411884--upload_2024-5-8_7-22-29.jpg

1 Like

Wow, this is amazing Mark, huge thanks for the purchases and nice complements, you have no idea how appreciated your words and feedback are here which gives us so much energy to continue. I hope they will get better with every update and become useful in your projects.

Please share with us your creations with TerraFormer or other TERRA assets at your convenience :slight_smile:

Also send me a PM here for the TerraWorld Templates voucher :wink:

1 Like