Search Unity

Bug Polybrush Shift click does not erase

Discussion in 'World Building' started by castor76, Aug 6, 2020.

  1. castor76

    castor76

    Joined:
    Dec 5, 2011
    Posts:
    2,517
    Using Unity 2020.2, and not sure if it affects the other versions, but when you press shift and left mouse click, the painted prefabs does not erase, but instead, it keeps painting. And there is no separate erase tool neither so... I am at loss here.

    Anyone with the same bug?
     
  2. ThomasLopez

    ThomasLopez

    Unity Technologies

    Joined:
    Jun 8, 2020
    Posts:
    159
    Hi there,
    I was just checking, the default key to erase in Polybrush should be the CTRL key + clic.
    Please try this and let me know :)
     
  3. castor76

    castor76

    Joined:
    Dec 5, 2011
    Posts:
    2,517
    Right. @ThomasLopez

    Here is what I have found.

    I have tried both CTRL and shift and you are right on that CTRL is the removal key combination. The reason why I thought it was not working was : ( and thought it was Shift instead )

    1. I am using it on 2D scene and for the prefabs that has certain amount of Z distance away from point of plane it was painting on, it didn't work. I manually move some of the prefabs after I painted them for using Z sorting purpose. In case of 2D, it should be better to only consider X and Y coordinates for finding out if brush needs to erase the prefabs or not. Or at least let us have option to ignore Z

    2. Because it was not working as above, I thought I would go and read document on PolyBrush to see what I was doing wrong and found that Shift key combination was to erase. https://unity-technologies.github.io/procore-legacy-docs/polybrush/polybrush-gh-pages/quickstart/ It has Shift key as erasing option all over the place.

    It's either document at above link is wrong / old or I am looking at the wrong document.

    --------- HOWEVER ---------

    The above observation happened on my home PC, but when I tried at work PC, nothing worked even when I used CTRL right after I painted prefabs without moving them along Z axis. So I will need to try again tomorrow at work, to see if it was my oversight or it truly does not work.

    Thanks for looking at it anyway.

    -------- AND ---------

    Also while I have your attention a bit. Here is my feedback on using Polybrush for placing prefabs.

    1. We really need a button / way to clear all brush loadout rather than having to manually click all of the little x marks on the loadouts.

    2. Another button to load all from currently selected palette is must to have.

    3. If all of above is not doable, then we really need some way to save the brush loadout because it's not practical to make correct loadout every time we want to change the loadout. We need to be able to define preset for the loadout and then reuse them. If my suggestion (1 and 2) is possible then it can be used as work around because we can just treat palette as our loadout set and then swap them to quickly load different sets.

    Let me know!

    Thanks.
     
    Last edited: Aug 6, 2020
  4. castor76

    castor76

    Joined:
    Dec 5, 2011
    Posts:
    2,517
    I made some more observation and found following :

    It is really confusing but :

    1. In order to erase something, you have to be selecting the palette that contains the prefab you want to erase.

    2. Even if you do have the correct matching palette selected, you have to at least load one from the palette in to the brush loadout in order to activate correct erase mode. Having nothing loaded into the brush loadout does nothing when trying to erase.

    3. More confusion comes in when your loadout has multiple different prefabs from different palettes. You have to "workout" what is going to be erased based on what you have in your brush loadout and the currently selected palette.

    4. With all of above and Z position problem, it is currently really difficult and confusing to erase properly. Brush load out can be combination from all kinds of different palettes and if you want to erase all under the brush, then it seems like you have to keep swapping palettes in order to do this.

    I can understand that we would want some kind of masking for erasing, and that is ok, but none of this is actually seemed to have explained logically anywhere ( to my best knowledge ) so it would be super useful to update document on how all this practically and really work.
     
    Last edited: Aug 11, 2020
  5. castor76

    castor76

    Joined:
    Dec 5, 2011
    Posts:
    2,517
    Also copy paste (by right clicking on items in the palette) placement setting does not work. It does nothing. So I had to manually edit all of them by hand even if all of their settings were the same. Shift click to select multiple of them and then paste setting does not work neither. Basically copy, paste is broken. ( not sure if multi select paste was even thing that supposed to work neither, but it would be really nice to have )
     
  6. ThomasLopez

    ThomasLopez

    Unity Technologies

    Joined:
    Jun 8, 2020
    Posts:
    159
  7. ThomasLopez

    ThomasLopez

    Unity Technologies

    Joined:
    Jun 8, 2020
    Posts:
    159
    Hi again castor76,

    Following up the bug report on prefab removal! So I did some upgrade in order to use polybrush in 2D mode! This should be soon part of the polybrush package. Here is a little sum up!

    Regarding other elements you pointed out:

    • only being able to remove prefabs from the current palette and brush is a feature by design (if you are painting trees, you don't want to erase your flowers for instance)
    • the point that dealing with brush loadouts and palettes is a little complicated is known and we will try to make this better in a later (non-determined) version of polybrush, usually you would like to make a brush loadout with only a subset of elements of your current palette (you can only put on your 'brush' some painting from your 'palette' right?). The fact he is mixing different palettes in a same brush complicates this I guess
    • regarding copying/paste is also a different problem, I was able to reproduce it and open a bug ticket on this topic: https://fogbugz.unity3d.com/f/cases/1271799/

    Modify the prefab placement in 2D mode:
    - Depth is not taken into account anymore when removing prefab in 2D
    - It is now possible to define a depth offset while in 2D mode to allow painting in different layers and have a better Z-sorting
    - During placement, orientation of the prefab is different in 2D for easier use of sprites

    2D mode vs 3D prefab placement :

    2D prefab placement with depth (for z-sorting):

    2D prefab removal without taking depth (z-axis value) into account

    Hope this helps :)
     
    Last edited: Aug 20, 2020
    Lars-Steenhoff likes this.
  8. castor76

    castor76

    Joined:
    Dec 5, 2011
    Posts:
    2,517
    Thanks for all the responds. Much appreciated!

    With regarding to the brush loadout, the point is that it is not easy to "remember" the loadout even if the loadout was just a subset from the palette. Say for instance, if you have mix of grass, rock and trees in one palette and then choose some grass and some rock and some trees as a brush loadout. Then if you want to change the loadout and then get the first loadout again, you have to "remember" what it was before. This gets worse when the tool's erase mode is designed as such because you have to "remember" the loadout and make correct selection again in order to be able to remove the first paint job. This is why I suggested to either :

    1. have loadout preset
    2. have buttons to load all elements from palette, remove all loadout so that we can use the palette to work as a loadout selection.

    either way, hopefully there will be some improvements in regarding to this.

    Thanks!
     
  9. THE2FUN

    THE2FUN

    Joined:
    Aug 25, 2015
    Posts:
    63
    Undo, redo is broken yeah. CTRL is working horrible i thought there is no remove... final thing in scatter placement mode right click paints. Why? how can i rotate and go somewhere when im painting the world. Like always i'm tired of these little things. Unity why doesn't care? workers what are they doing??? Are they don't looking that simple basics?
     
  10. castor76

    castor76

    Joined:
    Dec 5, 2011
    Posts:
    2,517
    It has been more than 2 years plus, and i still dont see improvements to the loadout issue. So sad.