Grungit - 1-Click Wear And Tear

by Abdoubouam in Scripts and Addons

New in v1.7.x

  • Bug Fixes
  • Added an "advanced mode" 
  • Remade Grungit node: easier to control, better quality, organized inside, and renders faster in EEVEE
  • PBR inputs for the dirt node
  • Quality improvements

More information on the following link https://blenderartists.org/t/grungit-1-click-wear-and-tear-for-blender/1197208/69

What is Grungit?

Grungit is an addon that automatically and effortlessly adds wear and tear to your models with a single click. The result is fully controllable and can deliver anything from imperfections and light wear to heavy damage.

Why Grungit?

Unlike other methods, Grungit has very little impact on performance and it’s fully compatible with EEVEE, but surely the most important benefit is the considerable amount of precious time it saves.

The main goal of Grungit is to assist you, not to dictate a specific style that might not suit your needs, and it doesn't impact your workflow. That makes it very versatile and can deliver all kinds of results : You can use it to add subtle surface imperfections to give your renders an additional layer of realism, or you can make a painted surface for a machine with a lot of grunge, scratches and dirt.

Grungit is a result of over a month of work and went over several iterations and adjustments, and then it was used and tested by several artists. After listening to feedback, I improved the quality of the results delivered by Grungit, and I fixed the reported issues and bugs. I'm excited to announce that it's finally ready to be published. There are several features and improvements planned for future updates, so make sure to grab a copy and you will have access to all future updates for free, even when the price eventually increases.

What are the benefits of Grungit?

  • Very simple and fast: Grungit takes care of all the tedious and repetitive work for you. Even if you are a blender expert and know how to achieve the result, you will still need several minutes to set everything up (assuming your model is simple, and you already have a a node tree ready, otherwise it can take hours!). With grungit, you only need to apply the effect once, and it will take from a few seconds to a couple minutes to prepare your model.

  • High quality grunge, dust and scratches: Grungit comes with high quality shaders and textures, this ensures you get the highest quality of scratches and grunge in your models.

  • It keeps your existing node tree: If you already have a material with textures assigned to it, Grungit automatically takes care of it for you

  • Customizable: Grungit was made with customization and flexibility in mind. The default settings are a decent start and could be what you wanted already, and I added a "Global Control" parameter to control the whole effect to make it simple to use, but I also left all the parameters you need to have full control over the effects. Just make sure to read the documentation if you are not sure about something.


  • PBR : Grungit uses the standard PBR workflow (Base Color, Metalness, Roughness, Normal), which makes baking and exporting to other DCC packages and game engines the same as before. If you use a plugin to bake the maps and it's smart enough to use locate the Principled BSDF node, then it will work without any extra tweaking.

  • Topology-independent : The end result doesn’t depend on the topology and density of your mesh. It doesn’t matter if you prefer subdivision modelling or booleans with a ton of n-gons, Grungit just works out-of-the-box.

  • Compatible with EEVEE: Aside from the ease of use, this is perhaps one of the most important features Grungit offers. To this point there is no simple way to create edge wear in EEVEE since the Ambient Occlusion and bevel nodes aren’t supported in it, and the default pointiness node depends on the topology and doesn’t work well most of the time. Grungit takes care of everything for you.

  • Animatable: The effect can be controlled and animated. This allows you to make, for example, interesting animations or have several variations of the same model.

  • Support for manual masking: if you want to increase or decrease the effect in some areas, you have the possibility to manually paint an additional mask texture. Use white to add wear, black to remove it, and gray to leave it unchanged. 

  • Fast render times: Alternative methods like using the Ambient Occlusion and/or the Bevel nodes in a complex nodetree significantly increases render times and noise. By doing the calculations only once and caching the result, Grungit gets rid of the issue. Some test scenes with the alternative methods took 20 minutes to render in Cycles, but only needed 25 seconds to yield a comparable level of noise when using Grungit, and it made it possible to render it with EEVEE which took about 1 second. In that example the rendering is about 50x times faster, not counting the time it would take to make it from scratch instead of using Grungit.

  • Auto-unwrapping: Sometimes you don’t want to waste a lot of time making perfect UV’s, that’s especially the case if you are working on the high-poly version of a model, or if you have many assets that don’t need to be very optimized where where texture space and seams are very important (mobile games, for example), or when you are in the concept/prototyping phase and you will take the time later to create production-ready UV maps. It uses Blender’s “Smart UV Unwrap” feature to accomplish it, and no user interaction is needed.
    This option is automatically enabled if Grungit detects that your model doesn’t have a UV map.


Limitations:

  • Unexpected behavior on very thin surfaces when the edge wear scale is too big
  • Some users reported that Grungit does not work with EEVEE in macOS. Unfortunately this is due to a bad OpenGL driver by Apple. In order to render with EEVEE, you need to use the PBR baking feature on your materials first.

What do people say about Grungit?

Very easy and straightforward. A simple bake and ready to go with a few intuitive slides.

I like how quickly Grungit lets you test readability in hard-surfaces with the procedural wear, letting you tweak the effect to your liking through several kinds of workflows.

It greatly simplifies and reduces my workload when it comes to adding small detail to my models.

The material works really well and I don't have to make my own materials or import older ones.

It helps me visualize areas of rest vs detail in damaged metal while working on the design. While this would be optimal to do in the finished retopologized mesh, I've used Grungit while working with Hi-Poly before baking.

Roadmap

Grungit is an ongoing project and I'm working on improving it even more. There are several planned features and improvements, some of them are :

  • Multi-object and multi-material support (added)
  • Add oil leaks, paint splatter, leaks and similar effects.
  • Improve grunge
  • 1-click PBR baking (added)

The price will get increased a bit with the additional work and effort I put in it, but if you are already a customer then you will get the updates for free, so make sure to get it as soon as possible.


Your feedback is important, if you have any feature to suggest or a bug to report, or you want to have more information or get support then please get in touch, I read and reply to every message.



Release notes:

v1.6x

  • Bug Fixes
  • Multi-object support
  • Occlusion is now affected by all objects
  • UV Pack by material
  • added 512x512 and 256x256 resolutions
  • "Quick mode"
  • Optix baking workaround
  • 1-click PBR Baking 

v1.5:

  • Supporting objects that have multiple materials,
  • Clearcoat support
  • Improved edge wear quality, it's easier to control and works well by default
  • Quality adjustments
  • "(Re)create UV maps" now packs faces that share the same material (default behavior)


v1.4:

  • Iimprovements to the dirt node, mainly a "contrast" parameter
  • Cracks
  • Minor bugfixes and quality improvements


v1.3:

  • Greatly improved dirt layer, it looks a lot better now and it's easier to control
  • Quality improvements
  • Fixed the randomness (in v1.3.1)