Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

[RELEASED] YAPP - Yet Another Prefab Painter

Discussion in 'Assets and Asset Store' started by Rowlan, Jun 4, 2022.

  1. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    YAPP - Yet Another Prefab Painter got released to the Asset Store and has a -50% release discount!

    The development of YAPP is based on real use cases, tools which make your workflows easier while creating scenes for your games. It started as free GitHub project and found excellent recognition from the community. Over time more and more requirements and requests came up and so YAPP became to be a lot more than what was initially intended.

    In order to make it available to an even larger user base YAPP has landed on the Unity Asset Store. However supporting an asset and updating it requires time and effort, that's why it had to become a paid asset.


    Thank you very much everyone who has been using my free asset for years, that's very motivating to keep on extending it :)

    Among many of its features the core features are:

    • Container based
    • Paint modes Brush and Splines
    • Prefab instantiation
    • Supports any prefab: rocks, plants, trees, houses, humans, animals, etc
    • Custom templates
    • Batch operations
    • Interactive operations like Anti Gravity, Magnet, Scale changes (eg Forest tree height while painting over the trees)
    • Physics (see the videos, they speak for themselves)
    • Vegetation Studio Pro integration
    • Terrain Trees integration
    • ...

    A few use case examples combined with AAA assets from the Asset Store.





     
    Last edited: Jun 4, 2022
    Lars-Steenhoff and OccularMalice like this.
  2. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    Some more:



     
  3. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
  4. florianalexandru05

    florianalexandru05

    Joined:
    Mar 31, 2014
    Posts:
    1,794
    Actually, what I was looking for, I just bought it, I'll give you my review on it after I tried it out.
     
    Rowlan likes this.
  5. HIBIKI_entertainment

    HIBIKI_entertainment

    Joined:
    Dec 4, 2018
    Posts:
    594
    It's great to see you venturing more into the asset store with all your fantastic tools @Rowlan, they arrive with so much fun and passion too I bet!
     
    Rowlan likes this.
  6. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    YAPP made it to the front page of the Unity Asset Store. I honestly didn't expect that, that's super awesome. Thank you very much everyone for your support! :)

    frontpage.jpg
     
    J2T and HIBIKI_entertainment like this.
  7. radsburied

    radsburied

    Joined:
    Jul 14, 2021
    Posts:
    4
    Hey Congrats! I bought it, seems very useful!
     
    Rowlan likes this.
  8. bvonline

    bvonline

    Joined:
    Feb 27, 2021
    Posts:
    84
    Does it work with Unity 2020? I use the latest version of 2020.
     
  9. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    Yes. Works with 2019.4+
     
  10. bvonline

    bvonline

    Joined:
    Feb 27, 2021
    Posts:
    84
    bought ;) Maybe update your description to 2019.4+? "+" is missing. Thx you for your work! :)
     
    Rowlan likes this.
  11. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    Thank you very much :) It's there on the website: 2019.4.31 or higher

    Text is beyond me unfortunately, Unity does that automatically and it depends on the version you upload the asset with.
     
  12. JediNizar

    JediNizar

    Joined:
    Nov 13, 2016
    Posts:
    111
    Hi,
    it's looking fantastic, what about the performance?
     
  13. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    It's an editor extension for prefab placement in terms of "fire & forget", ie after placement your're independent of YAPP. Runtime performance isn't affected. I haven't received editor performance complaints yet.
     
  14. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    It's the last day of the initial release sale. So I thought I'd show that YAPP isn't just for vegetation. I was using the awesome assets from Asset Maiden and Malbers combined to re-populate the western town. Really good assets, for links check out the description of the video in case you don't have the assets yet:

     
  15. kdgalla

    kdgalla

    Joined:
    Mar 15, 2013
    Posts:
    4,616
    Rowlan, I bought this with the discount and can't wait to try it out! I'm confused about one thing, though. I may be remembering wrong, but I could've sworn someone announced a product with the exact same name several years ago. Was there a previous version?
     
  16. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    Thank you very much! I had it for free on github before. But over time it turned out to not be doable in my spare time alone anymore, eg feature requests, let alone supporting older Unity versions. So I pushed it to the Asset Store. And here it turns out to have a much bigger audience than just an asset on github. It's so much more motivating to have even more people use my work. And I definitely didn't expect to be featured on the front of the Unity Asset Store. It's just awesome, so is the support from everyone who purchased YAPP so far :)
     
  17. profuzzy

    profuzzy

    Joined:
    Mar 13, 2015
    Posts:
    46
    Hi Rowlan, I have a question.
    In the videos where the rocks were painted, or where the spline lanes painted rocks/gourds... these items fell to ground, collided as physics colliders, then settled to be still from movement...
    I noticed that Physics sim is either continuous or none. ..and so this brings me to the question;
    • Have you built in a feature which would remove the physics component from the objects either upon user demand or when objects settle from movement *and then mesh combine those objects (if they are of same mat or at least the same object, or ..?? ) ?

    Thank you for your time.
    // The tool looks nice and I suppose that I could always add my own forms of mesh optimizations.
     
  18. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    Continuous is for a given time, so that you don't have to press dedicated buttons. Can't have the physics run permanently in the editor. There's an option though to have it run until you press stop.

    Rigidbodies and Colliders are added dynamically in case the objects don't have them. They are removed after phyiscs simulation completed.

    Mesh combination isn't implemented. I leave that to dedicated tools.

    An important thing to notice: This runs Unity's own editor physics. Whatever is affected, is affected, not just the painted gameobjects. I didn't get any reports about problems so far, this has been implemented for a few years already. However, I could scan all objects and store their state and restore it afterwards as well. There hasn't been a necessity for this so far.
     
    profuzzy likes this.
  19. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    Last day of the sale and YAPP is First in Relevance

    yapp relevance.jpg
    and among the Top 10 in Popularity

    yapp popularity.jpg
    I honestly didn't expact that at all.

    THANK YOU VERY MUCH EVERYONE!!!
     
    profuzzy likes this.
  20. profuzzy

    profuzzy

    Joined:
    Mar 13, 2015
    Posts:
    46
    Thanks Rowlan.
    "Rigidbodies and Colliders are added dynamically in case the objects don't have them. They are removed after phyiscs simulation completed."
     
  21. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    Seta - Level Design is creating a scene using YAPP here:



    The work is just awesome, please check out the other videos in their channel well. They are a true inspiration. So much love to detail, truly impressive, lots to learn from :)
     
    Acissathar likes this.
  22. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    I purchased the current Mega Bundle and wanted to see how Jungle - Tropical Vegetation looks like populated on an island. In case anyone is interested:

     
  23. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    An update went live, it contains implementations depending on feedback (thanks everyone!)

    Version 1.4.0
    * enhancement: prefab toolbar
    * enhancement: apply first to all: apply the settings of the first prefab to all prefabs in the list
    * enhancement: clear list: remove all prefabs
    * enhancement: distribution mode center: check collider options: none, container, all
    * change: align to terrain is now called align to surface
    * enhancement: slerp randomly between vector3.up and the surface normal
    * enhancement: slerp explicitly between vector3.up and the surface normal

    Version 1.3.0
    * enhancement: slope as option
    * enhancement: implemented slope range distribution
    * enhancement: poisson raycast against layer
    * enhancement: individual poisson disc raycast
    * enhancement: link buttons for asset store, forum, documentation
    * bugfix: interaction brush not always painted

    Or in other words, the important things:
    • The first prefab setting can be applied to all other prefabs via button click.
    • When you have a small brush and a big prefab, then you can define that new prefabs that collide with previously painted ones will be ignored. Meaning placement one after the other as well as new prefabs won't be painted on existing ones.
    • Alignment to terrain can vary now, eg you can get nice varying rotations of trees down a slope.
     
    ratking likes this.
  24. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    HIBIKI_entertainment likes this.
  25. HIBIKI_entertainment

    HIBIKI_entertainment

    Joined:
    Dec 4, 2018
    Posts:
    594
    Well deserved exposure
     
    Rowlan likes this.
  26. bvonline

    bvonline

    Joined:
    Feb 27, 2021
    Posts:
    84
    Errors (Unity 2020.3)

    Hint: it is a Mac / PC Issue.

    There are inconsistent line endings in the 'Assets/Rowlan/YAPP/Runtime/Scripts/Settings/PhysicsSettings.cs' script. Some are Mac OS X (UNIX) and some are Windows.
    This might lead to incorrect line numbers in stacktraces and compiler errors. Many text editors can fix this using Convert Line Endings menu commands.

    There are inconsistent line endings in the 'Assets/Rowlan/YAPP/Editor/Scripts/Extensions/PhysicsExtension.cs' script. Some are Mac OS X (UNIX) and some are Windows.
    This might lead to incorrect line numbers in stacktraces and compiler errors. Many text editors can fix this using Convert Line Endings menu commands.

    There are inconsistent line endings in the 'Assets/Rowlan/YAPP/Runtime/Scripts/Common/LayerUtils.cs' script. Some are Mac OS X (UNIX) and some are Windows.
    This might lead to incorrect line numbers in stacktraces and compiler errors. Many text editors can fix this using Convert Line Endings menu commands.

    There are inconsistent line endings in the 'Assets/Rowlan/YAPP/Runtime/Scripts/Debug/DebugBounds.cs' script. Some are Mac OS X (UNIX) and some are Windows.
    This might lead to incorrect line numbers in stacktraces and compiler errors. Many text editors can fix this using Convert Line Endings menu commands.

    There are inconsistent line endings in the 'Assets/Rowlan/YAPP/Editor/Scripts/Physics/AutoPhysicsSimulation.cs' script. Some are Mac OS X (UNIX) and some are Windows.
    This might lead to incorrect line numbers in stacktraces and compiler errors. Many text editors can fix this using Convert Line Endings menu commands.

    There are inconsistent line endings in the 'Assets/Rowlan/YAPP/Runtime/Scripts/Settings/PrefabSettingsTemplate.cs' script. Some are Mac OS X (UNIX) and some are Windows.
    This might lead to incorrect line numbers in stacktraces and compiler errors. Many text editors can fix this using Convert Line Endings menu commands.

    There are inconsistent line endings in the 'Assets/Rowlan/YAPP/Runtime/Scripts/Common/MeshUtils.cs' script. Some are Mac OS X (UNIX) and some are Windows.
    This might lead to incorrect line numbers in stacktraces and compiler errors. Many text editors can fix this using Convert Line Endings menu commands.

    There are inconsistent line endings in the 'Assets/Rowlan/YAPP/Editor/Scripts/Utils/TerrainLayerUtils.cs' script. Some are Mac OS X (UNIX) and some are Windows.
    This might lead to incorrect line numbers in stacktraces and compiler errors. Many text editors can fix this using Convert Line Endings menu commands.
     
  27. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    Thanks for reporting this. Which minor Unity version are you using? I had that same recently with the 2020 LTS after fetching from github, not with the package. Didn't notice it with 2019. I needed to click Assets/Rowlan/YAPP and Reimport, then it worked. I wonder if it's a Unity bug. Can you please confirm that Reimport works or doesn't work? I'll file a bug report then with Unity.
     
    Last edited: Aug 6, 2022
  28. bvonline

    bvonline

    Joined:
    Feb 27, 2021
    Posts:
    84
    I had this issue with other assets too. I found out, that saving the same text in the files in a new file which is created on my windows system solves the problem, it seems just to be a formatting issue by text programs (I assume generated on MAC).

    I opened my project, and the problem did not occur anymore. Don't know what happened, maybe it is just as you said: if loading / reimporting these files, it might disappear. But I can not grant that. I used 2020.3.34f1. But the problem's gone.
     
  29. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    You wrote "Errors". Did you actually get Errors or did you get Warnings on Mac? In the Unity version you mention I get only Warnings on Windows. I just submitted an update for this in case it confuses people.
     
  30. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    Update with the warnings removed is live now.
     
  31. bvonline

    bvonline

    Joined:
    Feb 27, 2021
    Posts:
    84
    It have been just warnings. So, thanks for the update! :)
     
    Rowlan likes this.
  32. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    Here's how to quickly build a ramp for trial biking:

     
  33. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    And of course one could always distribute trash bags below the ramp later :D

    yapp ramp flight.jpg
     
  34. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    YAPP is featured in 30 top assets for game developers on the Asset Store:

    list.jpg

    Here's the video:



    Awesome! :)
     
    ratking likes this.
  35. olivecrow

    olivecrow

    Joined:
    Jul 15, 2017
    Posts:
    24
    Hi Rowlan. I found some bugs while using YAPP. I hope these bugs are fixed and applied soon.

    1. In Fluent mode, part of the GUI goes out of the screen and is not visible.

    2. Enabling physics simulation in Fluent mode causes the preview and instance to collide when creating the prefab, causing the instance to fly in a strange direction.

    3. Physics simulation of objects with rigidbody does not work. More precisely, rigidbody objects created at the time of painting collide with each other (during simulation time), but not with other Rigidbody objects. I've attached a video about it, so please check it out.

     
  36. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    What exactly do you mean, the help-text in the scene? If so, which screen resolution do you use? I have a 4K screen and everything looks fine for me. And which Unity version are you using? There was an issue with cut-off text which is supposed to be fixed. Might be this fix doesn't work on other screen types. In that case I should investigate.

    Fluent mode is intended for fluent manual placement, ie positioning, rotation and scaling. I should disable physics in that mode.

    Hi, thanks for taking the time to create that! The thing is that I have to deactivate the rigidbodies and re-activate them. The physics in the editor uses Unity physics. If I wouldn't deactivate them temporarily all the other objects in the scene would have their physics applied as well. You wouldn't want that. But the collision should of course work on all children of the container, I'll look into that. Thanks for reporting this :)
     
    Last edited: Sep 23, 2022
  37. olivecrow

    olivecrow

    Joined:
    Jul 15, 2017
    Posts:
    24
    The bottom line is hidden like the image I attached. I tested in 2560x1440 and 1920x1080 screen. And unity version is 2021.3.10.

    gui.jpg




    It would be nice to use physics simulation and preview together. Dropping objects exactly where I want them will be very helpful for a natural look. I modified the source code by disabling all colliders in the preview instance, and it seemed to work without problems.

    Thanks for the quick response!
     
  38. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    Are you by any chance on a Retina display? It's something I couldn't test. Just wondering because I had some pixel per point issue that I had to resolve at the time. I don't have that issue either on my 2560x1440 screen. Either way, I lifted the info a bit up, so should be visible then.

    Ok, added that feature and submitted to the store. Here's the list of changes:

    Version 1.4.4
    * disable colliders on fluent preview gameobject
    * option for physics auto-collider, spawned only or container
    * moved gui info a bit higher to ensure text isn't cut off

    Version 1.4.3
    * option for collision detection mode, default is continuous

    Version 1.4.2
    * physics filter

    The "Spawned only" vs "Container" option should solve your problem with the collision of a prefab in the same container, ie you should choose "Container". It's a performance thing. The usual case is you just drag around and when you release the mouse button the physics starts. But your case is also a valid one, so it made sense to give an option.

    Thank you very much again for your feedback! :)
     
  39. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    YAPP is in the Asset Refresh sale available at 40% OFF:

    af.jpg
    Enjoy! :)
     
  40. SwenSVK

    SwenSVK

    Joined:
    Apr 3, 2020
    Posts:
    6
    Hello Rowlan, any chance you will be integrating YAPP with Unity Terrain details as you did with Terrain Trees?
    I find really panful to paint grass type by type without ability to choose set of grasses / flowers to spawn at the same time.

    Thank you for the reply!
     
  41. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    I'll investigate, but I can't make promises. The API that Unity has for Details is bad. They only started updating it in recent Unity versions.
     
    Lars-Steenhoff likes this.
  42. SwenSVK

    SwenSVK

    Joined:
    Apr 3, 2020
    Posts:
    6
    Ok, thank you for the reply anyway and we will see in the future :)
    I hope it would be possible somehow.
     
  43. SwenSVK

    SwenSVK

    Joined:
    Apr 3, 2020
    Posts:
    6
    @Rowlan one more question regarding the terrain trees integration. How does it work?
    Do I manually drag prefabs to painter that I want to paint as trees and the painter convert the prefabs to unity tree once placed? Or do I choose from the current trees in terrain "Paint Trees" but paint them with YAPP instead? If the second is the case how does it work with multiple terrains having different trees in memory? GeNa has struggles with this and messing prefabs heavily.
     
  44. ratking

    ratking

    Joined:
    Feb 24, 2010
    Posts:
    349
    Using Unity 2021.3.11f1, YAPP crashes when painting some things and then pressing Ctrl+Z. Is this a known problem? If not I can send you the Editor.log.
     
  45. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    Not that I know. Yes, send the log please and details. Do you mean it crashes in that unity version now with the same setup as an earlier version? I didn't have problems so far with undo. Gonna install that explicit Unity version and test.
     
    Last edited: Oct 5, 2022
  46. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    @ratking no need to send anything. I installed it and got the same. I'll keep you updated. Thanks for reporting this!
     
    ratking likes this.
  47. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    @ratking I created a minimal verifyable example and submitted a bug report. It goes down to 2021.3.9f1. Here's the example in case you are interested:

    Code (CSharp):
    1. using UnityEngine;
    2. #if UNITY_EDITOR
    3. using UnityEditor;
    4. #endif
    5.  
    6. public class UndoExamples : MonoBehaviour
    7. {
    8.     public GameObject prefab;
    9.  
    10. #if UNITY_EDITOR
    11.     [CustomEditor(typeof(UndoExamples))]
    12.     public class UndoExamplesEditor : Editor
    13.     {
    14.         public override void OnInspectorGUI()
    15.         {
    16.             DrawDefaultInspector();
    17.  
    18.             if (GUILayout.Button("Add Prefab"))
    19.             {
    20.                 GameObject instance = PrefabUtility.InstantiatePrefab((target as UndoExamples).prefab) as GameObject;
    21.                 instance.transform.position = Vector3.zero;
    22.  
    23.                 instance.transform.parent = (target as UndoExamples).transform;
    24.  
    25.                 Undo.RegisterCreatedObjectUndo(instance, "Instantiate Prefab");
    26.  
    27.             }
    28.         }
    29. #endif
    30.     }
    31. }
    So not really anything sophisticated. Definitely a Unity bug and will affect other publishers as well. Seems to be related to 2021.3 though, didn't encounter it in the other versions I tested.
     
    ratking likes this.
  48. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
    Bascially you need to have the prototype in the terrain trees as well as in the prefab painter. I can add to make this work in the future (no guarantees about the when), but as long as Unity doesn't support their terrain and details properly and make that API publicly properly open one is really limited to newer Unity versions.
     
  49. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,200
  50. Vaupell

    Vaupell

    Joined:
    Dec 2, 2013
    Posts:
    302
    Is it intended when i adjust the brush size that is also scales the obejcts i spawn with the tool`?

    Though brush size was like unity tools, if the brush is big enough i could just paint randomly with the prefabs added.
    My experience: When i change brush size, i also scale the object.