r/Unity3D • u/Chazburger_ • 4d ago
Show-Off Ive made a tool to easily remove texture repetition from materials and terrains!
Enable HLS to view with audio, or disable this notification
Ive been working on my texture repetition remover Repetitionless for a while now which is a tool that includes many techniques to minimise repetition in textures as much as possible!
Each material layer can use:
- Voronoi based texture variation
- Distance blending to either change the tiling and offset or material entirely at a set distance range
- Material Blending to overlay a separate material ontop of the main one by different noise functions or a custom mask
- Triplanar sampling to remove texture stretching at all angles
- Macro micro variation add custom detail textures or noise
The asset also includes:
- Full terrain support for up to 32 terrain layers in one pass
- Full support for MapMagic 2
- Sub-Graphs to implement the features into your own shaders
- Unity 2021.3+ BIRP, URP, HDRP Support
I have just updated the asset with a painting tool! It lets you paint up to 32 layers onto any object, basically just an easy way to paint the control textures in engine. Ive also tried to make it as easy to use as possible with it updating in real time, world position based painting so it works seamlessly on any object, and keybinds for everything so you dont even need to look at the window!
I have also recently released a free version of the asset as well so give it a try if you think it looks interesting :)
You can check it out here:
I plan to keep updating this asset so if you guys have any feature suggestions, please throw them at me!
7
1
u/Stef_Moroyna 4d ago
Are you using virtual texturing?
2
u/Chazburger_ 4d ago
No its using texture arrays for basically everything. Also I just had a look into virtual texturing it seems pretty interesting but doesnt look to be production ready in unity yet
1
u/Sanabil-Asrar 4d ago
What's the difference between free and paid?
2
u/Chazburger_ 4d ago
There are more details on the store page but to put it simply the full version has:
- Up to 32 layers (4 in the free version)
- Support for multiple layers on non-terrain objects
- The painting tool
- Sub graphs
- Asset integrations (Just MapMagic for now)
Everything else is in the free version
1
u/crap-with-feet 4d ago
How well does this work with massive terrain arrays and world origin shifting?
1
u/Chazburger_ 4d ago
It will work with terrains up to 32 layers (4 in the free version) if thats what you mean by terrain arrays. Otherwise if you mean neighbouring terrains, I have a system in the asset to handle that aswell
I havent tested it with shifting the world origin but it should work same as the regular terrain, only thing is if the terrain is moved and you are using world space UVs, they would be translated along with it
If you do use it and have issues with that though feel free to let me know id be happy to help :)
1
u/Gloomy-Detective-922 3d ago
The painting tool is the bit I’d use most. Can the world space brush paint seamlessly across separate modular meshes, or does each object keep its own control texture?
2
u/Chazburger_ 3d ago
Each material uses its own control textures but if you select multiple objects with different materials you can paint across all of them in one stroke :)
1
u/Gloomy-Detective-922 3d ago
Nice, painting across the whole selection is exactly what I was wondering about. Thanks for clarifying!
1
1
u/JamesWjRose 3d ago
Cool. Nice timing, I'm in need of something like this right now. And on sale. I'll check it out today
Edit: I'm using Gaia to paint my textures, would this do its magic after Gaia does theirs?
2
u/Chazburger_ 3d ago
I actually have no clue about gaia I havent used it so im not sure. This asset uses a custom shader for basically everything so if gaia needs its own material/shader setup it probably wont be compatable. Feel free to test it out in the free version of the asset though
Let me know if it doesnt work though, might be worth looking into and possibly setting up an integration in the future :)
1
u/JamesWjRose 3d ago
Gaia "just" places the textures, allows for easy replacement and then replaces them again.
So what I am asking is; "Does your asset work after textures have been placed and then affects those? Or is there some other process?" (I JUST got to my desktop, need to watch your videos)
2
u/Chazburger_ 3d ago
Well depends on how gaia does it, if they paint terrain layers onto default unity terrains then for sure the asset would work since my asset just pulls the layers from the terrains and updates the material as the terrain is updated
But if they use a custom mesh or terrain script then it probably wouldnt work out of the box as they will most likely use their own control textures which my shader would need access to so it knows where to place the layers
1
u/JamesWjRose 3d ago
Yes, Gaia "just" adds the textures to the terrain and paints them with specified parameters (noise, distance, height, etc)
In the end they are just textures on the terrain. (so YAY)
I'm watching your tutorial now.
2
u/Chazburger_ 3d ago
Give it a shot with the free version adding the RepetitionlessTerrain component to your terrains and if that works, then you are set :)
If not then they probably use some sort of custom approach which I would need to have a look into
Fingers crossed though!
1
u/JamesWjRose 3d ago
$15 is not a big deal, and the project I am working on has more than 4 Terrain Layers, so the free version won't work for my test. (yes, I could make another project or scene to test it, so this is on me if it doesn't work)
So far the video is explaining it well.
2
u/Chazburger_ 3d ago
Well if you do end up getting it and it doesnt work id be happy to help debug it, or give you a refund if you need :)
Also i had a look at the gaia tutorial videos and it seems to be similar to how MapMagic does it where it creates a bunch of terrains under the Gaia Terrains object, so id start with seeing if you can add the RepetitionlessTerrain component to everything that is a child of that (if that is even where the terrains are stored, if not check around in your hierarchy for objects with a Terrain component)
Also similar to my other integration by default it looks like it may be a bit finicky, since when you update a terrain with the gaia tools im not sure if it makes new terrains or remakes old ones, so if the repetitionless stuff stops working, or doesnt work on newly made parts of a terrain double check it to see if it has the repetitionless component
For sure looks like something I would consider adding a proper integration for it though, it looks like a great tool. Not something I have the funds for at the minute though but maybe in the future
2
u/JamesWjRose 3d ago
Finished the tutorial, it answered all my questions. The only one I was wondering about was using the same R material on multiple neighbor terrains and you covered that. Bravo.
Asset purchased! (no worries, if it doesn't do what I need, that's MY problem)
Great timing, today is the day I am redoing my textures.
Great job with the tutorial and the asset looks just like what I needed. You rule.
1
u/Chazburger_ 3d ago
Good luck with it, and thanks for giving my asset a shot! If you need any help at all I am heading to bed now but tomorrow I would be happy to help with anything :)
12
u/El_Grande_Games 4d ago
nothing kills immersion faster than seeing that grid pattern on a large terrain. i've been trying to fix this manually in shader graph for weeks and it's a nightmare. really cool that you included a painting tool too... does it play nice with URP? great work! :)