In 2015 I created a tool to fill a need I had for a project. I wanted a cheap but effective painting tool that didn't depend on Unity's terrain and could apply randomization.
With all the solutions either being basic or expensive I opted to create my own simple tool.
Since then I have been providing regular updates and support to Prefab Brush+, the tool has been picked on multiple occasions to be included in Unity Sales and has maintained a constant 5 star rating.
Random scales and rotation can be applied to each prefab as it is painted.
Painting can be limited by the angle of the surface.
Prefab Brush+ paints on collision surfaces, there is no dependacy on the Unity terrain.
Layers and tags can be used to restrict painting, this allows the user to restrict paiting to the correct surface and not include walls or buildings.
Auto parenting of painted assets keeps the scene orginized and tidy.
Prefab Brush+ will pick from multiple assets to randomly paint.
Prefab Brush+ includes an erase brush that can be restricted to prefabs that are loaded in the brush.
Brush presets are saved as scriptable objects allowing them to utlize all the features of UnityYAML and be included easly in version control.