Search Unity

Easy way to remove excess geometry?

Discussion in 'World Building' started by Sun-Dog, Jun 20, 2018.

  1. Sun-Dog

    Sun-Dog

    Joined:
    Mar 23, 2009
    Posts:
    144
    I'm just experimenting, but let's say I have this bit of geometry:

    62283db1035bfef609f60905984949a9.png

    There are quite a few unnecessary vertices.

    Is there an easy way to remove these, rather than selecting, say, two verts at a time and then "collapsing to first" on each pair?

    Or deleting the unnecessary vert (and therefore faces) and rebuilding?
     
    UnderscoreA likes this.
  2. Sun-Dog

    Sun-Dog

    Joined:
    Mar 23, 2009
    Posts:
    144
    Oddly, selecting a set of faces:

    d725aab233a35a5a4fdff1fc50befc7a.png

    and then selecting "merge faces" seems to merge the face, but not remove the vertices:

    27fab532c285810c5c1448d92378dd41.png

    and even though there is only one "face", I can still manipulate the verts:

    6f83834d808383d2d62e3557e5a358bc.png

    and the face still selects the entire area:

    aadfa9c792b0cb7c390b4017fd2088f9.png

    I had always assumed a face was defined as a tri or a quad. So, in ProBuilder, is a face something else?

    I also did notice I couldn't delete edges or vertices, but only faces, so does ProBuilder have a special way of defining a face?
     
  3. yahodahan

    yahodahan

    Joined:
    Apr 26, 2009
    Posts:
    1,380
    Hi! Yep, this is big on our "To Do" list- a tool for "Remove Selected Vertices/Edges".

    Currently, "Merge Faces" does exactly what it sounds like...merges the faces into one, without affecting the verts or edges. That's useful for smoothing, UVs, some other things. Not so useful if you are trying to pare-down geometry :D

    However, you can also use "Collapse Vertices" to smush all those verts down to one (a specific corner, for example).
     
  4. MrG

    MrG

    Joined:
    Oct 6, 2012
    Posts:
    368
    +1 for this. @yahodahan

    Spawn a cylinder:

    upload_2018-8-6_13-25-45.png

    1. Select and remove the faces at the ends so you have an open pipe.
    2. Duplicate the pipe so there's 2 in the scene.
    3. Rotate one of hem 90° around Z axis and re-position to 1,1,0
    4. Select both pipes and do Merge Objects.
    upload_2018-8-6_13-29-47.png

    Now how do I get rid of all the interior geometry?
     
  5. yahodahan

    yahodahan

    Joined:
    Apr 26, 2009
    Posts:
    1,380
    That'd be a question for another post :) Easy answer though- delete all the faces selected in your image, then hold V and snap the vertices on the Y axis to the vertices of the horizontal tube :)
     
  6. SonGoku10c

    SonGoku10c

    Joined:
    Dec 9, 2017
    Posts:
    77
    Any new news about the "Remove Selected Vertices/Edges" tool? It still isn't in version 3.0.9 or?
     
    awesomedata likes this.
  7. Singtaa

    Singtaa

    Joined:
    Dec 14, 2010
    Posts:
    492
    I've been personally waiting for edgeloop removal from ProBuilder since 2015 haha :) Is it finally coming? Soon'ish?
     
    awesomedata likes this.
  8. awesomedata

    awesomedata

    Joined:
    Oct 8, 2014
    Posts:
    1,419
    Blender is open source.
    Might be good to study how they handle these operations. Python isn't that hard to learn either.

    I genuinely wonder why features like these are difficult to implement. We're not reinventing the wheel again, are we?
     
    HyperBrid likes this.
  9. andyz

    andyz

    Joined:
    Jan 5, 2010
    Posts:
    2,276
    Still no delete vertex?!
     
    HyperBrid likes this.
  10. CaseyHofland

    CaseyHofland

    Joined:
    Mar 18, 2016
    Posts:
    613
    Same Question, delete vertex & edges would be an incredibly useful tool for all those times I decided that my model should be 'just' a little different and I ended up with crazy UV maps because removing that face wasn't such a good idea after all.
     
    HyperBrid likes this.
  11. Invertex

    Invertex

    Joined:
    Nov 7, 2013
    Posts:
    1,550
    It's really quite odd they still haven't managed to implement such an essential and basic modeling feature.
     
    HyperBrid likes this.
  12. Dabartos

    Dabartos

    Joined:
    May 26, 2016
    Posts:
    33
    deleting vertices is the first thing anyone would expect a modelling tool to be able to do, yet ProBuilder somehow manages to subvert expectations.Deleting it from my project and never touching it again.
     
    HyperBrid likes this.
  13. awesomedata

    awesomedata

    Joined:
    Oct 8, 2014
    Posts:
    1,419
    A year later now.

    I'm starting to wonder about the new github thing. Is this where projects and features go to die now?



    Maybe this really wasn't "big" on their "To Do" list...? -- I dunno.


    Empty promises, Unity. Just be honest with us.

    Also, be careful about "subverting expectations" -- It didn't work for The Last Jedi, and it rarely gets you anything but a pissy audience if you do it the wrong way. The reward comes only when your audience feels like they've been heard... Fail them -- and may your audience have mercy on your soul...
    Thin ice, you are still on with this "hearing" thing. Caution to you, Unity, Yoda would advise... o_O
    You might be the only game in town, but after enough abuse, people will always find something else to do with their time...
     
    Reahreic likes this.
  14. Tortuap

    Tortuap

    Joined:
    Dec 4, 2013
    Posts:
    137
    No easy ability to remove vertices is clearly a blocker for serious workflows.
    Well, to me ProBuilder has been a huge deception. And this was the last straw on camel's back, with it's really poor UI design.
     
  15. frarf

    frarf

    Joined:
    Nov 23, 2017
    Posts:
    27
    That's unnecessarily threatening. Plans are reassigned, priorities change, and not everyone has time to respond to an obscure forum post. I do think that ProBuilder is overall poorly designed but there's no need get so rude towards the developers.
     
    YevhenKut, Vagrantin and HyperBrid like this.
  16. awesomedata

    awesomedata

    Joined:
    Oct 8, 2014
    Posts:
    1,419
    Definitely wasn't intended to be 'threatening' -- but it was definitely meant to be pointed.


    Still though, I agree with you. -- I probably was too pointed, and toward the wrong people too.

    I apologize if I seemed unnecessarily offensive to any developers who had no say in the github plan. I know it's really not the developers' fault things at Unity have been this way. Somebody higher-up had to sign off on this stuff. Unity management is probably stretching their developers too thin. And this sucks for everyone -- especially the Unity development team.
    That being said, everybody makes mistakes -- even bosses.
    I was probably just angry this kind of mistake seems to keep happening over and over. I am aware Unity has tried many different feedback mechanisms over the years (and they are also in the middle of a core rewrite of Unity), but developers (like any technology customers) are busy and rarely participate in feedback sessions until something ends up breaking their workflow. This just can't be avoided. So just "making something" to use until it breaks is a bad idea because, generally, only forum-users/enterprise-level customers get a say due to this. Everyone else is relegated to the aftermath.

    I agree though. A random forum post isn't a great way to get frustration across to the (correct) Unity development team's bosses. No avenues for this are all that productive though. In some cases, fiery language in a random forum post could better convey someone's frustrations as a real problem. Maybe a random employee who caught on to these frustrations might mention one or two of them at a random department meeting. Maybe those will be put on an agenda to be fixed.
    In the end, silence does nothing. Some people will get loud or obnoxious because they are simply desperate to be heard.


    Again, I apologize to anyone I've offended.
    I was just sharing my two-cents. So thanks for yours. :)
     
    YevhenKut and frarf like this.
  17. North_bear

    North_bear

    Joined:
    Aug 4, 2020
    Posts:
    1
    Wellp. Still no remove option.
     
    DrMeatball and awesomedata like this.
  18. Nekkowe

    Nekkowe

    Joined:
    Jun 10, 2019
    Posts:
    1
    This is a pretty big issue. There's a reason every 3D modelling program has this functionality.
    Is this still in the works? What's happening?
     
    awesomedata likes this.
  19. awesomedata

    awesomedata

    Joined:
    Oct 8, 2014
    Posts:
    1,419
    Maybe Unity should have just bought @UModeler -- eh?? ;) ;) ;)
     
    UModeler likes this.
  20. marcospgp

    marcospgp

    Joined:
    Jun 11, 2018
    Posts:
    194
    So there's no way to delete vertices in probuilder? Or is there no way to automatically remove redundant vertices from flat surfaces?

    Edit: There seems to be a way to delete vertices at least, mentioned here
     
    Last edited: Dec 15, 2020
    Proto-G likes this.
  21. oleg_v

    oleg_v

    Joined:
    Nov 10, 2017
    Posts:
    68
    Lack of improvements is a pitty :(
    Example: i have a wall with two windows, CSG is not working for me at all - Unity 2020 (just crash).
    Tried to subdivide faces and split vertices to remove faces in place of windows.
    After 1st window completed, remaining part is not correctly subdivided (because of extra vertices). Split again to form separate square region for 2nd window, delete vertices and... I got face with 2 trianges and can't imagine how to subdivide it correctly with mouse :(
    Collapse vertices is not working leading to extra edges.
    What is really needed for my case are:
    1. CSG (ok, let's drop it if it's hard)
    2. Ability to add vertices on edges (with full creation of new edges, subdivide edges is not working this way)
    3. Ability to re-triangulate face to convex countour (with further correct "square" face subdivision)
     
  22. Rodolfo-Rubens

    Rodolfo-Rubens

    Joined:
    Nov 17, 2012
    Posts:
    1,197
    Sorry to necro this.

    Unity just stopped adding new features to ProBuilder? I found a 5 years old thread on ProCore forum of a guy complaining about this but still nothing.
    Do people really use this tool in production aside from creating the collision for their maps? Because honestly, that state that it currently is it doesn't look like it has much use (aside from authoring level collision)
     
  23. awesomedata

    awesomedata

    Joined:
    Oct 8, 2014
    Posts:
    1,419
    Honestly, I'm curious about this too.

    I've seen people do grayboxing for level design with it, and that's useful, but there are MUCH better tools for that that sort of integrate almost directly into Unity these days if you want to use it seriously for that. Not having CSG capabilities really hurts its speed and usefulness as a grayboxing tool. Even modders in the 90's had basic CSG support. :(

    I hadn't heard Unity was stopping adding features to Probuilder, so this is news to me. They just got done adding some procedural tooling support for basic shapes. Seems like a waste to just stop there.
    I can see Probuilder's potential use as an in-game geometry generation tool, assuming they let the API be that flexible. Grayboxing is a very limited use-case though that is better done by other tools -- but a procgen meshing API -- even a simple one like Probuilder -- now THAT is another story.
     
  24. gabrielw_unity

    gabrielw_unity

    Unity Technologies

    Joined:
    Feb 19, 2018
    Posts:
    963
    Whoa, I'm going to necro a necro :D

    Just to provide info (lots of folks here might at least be curious), we did add a few new features (cut tool, some selection tooling, the new shape drawing feature) and of course fix various bugs. However, yes, overall ProBuilder hasn't changed much ... but why?

    Short answer is, we realized early on, this was a "build your castle in a swamp" situation. Also, it wasn't just us ... every tool system, internal or external, was severely limited by foundational issues. So we set about fixing that, and it was (note the past tense!) a very large bit of work. For most part invisible ... but we now have a proper tools api, the overlays, tool context, contextual tooling ... all the basics for anyone (again, both us and other fine folk like Umodeler, etc!) to build really, really good toolsets, on a shared foundation. With shared UX. Everybody wins :)

    So, past tense, I said - we're now working on the next stage! You might have noticed (or not) the various pokes for feedback and insight regarding UX research for level design tools. We're starting with gathering info and building prototypes, trying lots of avenues and working to make something really awesome, and really well considered. Will it be voxels, CSG, modeling, some mix of it all? No idea. Exciting new world!
     
    PNUMIA-Rob, CaseyHofland and Invertex like this.
  25. CaseyHofland

    CaseyHofland

    Joined:
    Mar 18, 2016
    Posts:
    613
    The biggest thing I would like ProBuilder to focus on is modification. It's easy to set up a quick ProBuilder scene, but it's a pain to modify it. "Can I get a door here?" should simply not take 5 minutes - harsh, but it's really annoying when you want to just go fast fast fast to get stuck up with these tiny issues.

    And for a special feature request, can you add generators? I imagine you've heard of chisel, an in-development CSG level editor, and they have this awesome feature called generators where you pick a shape and you can still modify it based on a few parameters. So a linear staircase gets a "Linear Stairs" component and if you'd like to change the number of steps you just change that value in the component. You can't modify the component like you normally would until you remove the "Linear Stairs" component. This helps to quickly modify simple shapes and goes a long way in making things easier to use.
     
  26. gabrielw_unity

    gabrielw_unity

    Unity Technologies

    Joined:
    Feb 19, 2018
    Posts:
    963
    Hey, thanks Casey! Absolutely, non-destructive editing is a clear priority for this. It should absolutely be quick and easy to:
    1. Build complex shape
    2. Place a door in the side
    3. Nah, I want the door on a different side

    Same for the stairs example. However ... can you help me out with the difference of that, vs the shapes that ProBuilder has?
     
  27. CaseyHofland

    CaseyHofland

    Joined:
    Mar 18, 2016
    Posts:
    613
    Here's a video showing off generators.

    So just like ProBuilder, Chisel has stairs, but you can still change all of its settings in realtime through a component.

    The button labeled "Convert to Brushes" will remove the generator component and allow for "normal" editing of the stairs.
     
  28. gabrielw_unity

    gabrielw_unity

    Unity Technologies

    Joined:
    Feb 19, 2018
    Posts:
    963
    Oh, yup, standard ProBuilder shapes do that already! :) Maybe it's not clear how - see the GIF below. We don't have as many fancy options, but the functionality is the same. Add the shape, modify params anytime you like, and you do "normal" editing anytime. Bonus with ours - you don't have to remove the "Generator". You can just dive right into editing ... and if you decide the edits were bad, you just want the Generator/Parameters, you revert anytime to that as well :)
     

    Attached Files:

  29. CaseyHofland

    CaseyHofland

    Joined:
    Mar 18, 2016
    Posts:
    613
    :rolleyes:

    welp… I’m about to jump off a cliff

    Thanks for clarifying, I have no idea how I missed that.

    Perhaps the ProBuilder Shape Script could get an icon. I tend to ignore the “C# Script” icon if it’s not my own code or I know what I’m doing.
     
  30. gabrielw_unity

    gabrielw_unity

    Unity Technologies

    Joined:
    Feb 19, 2018
    Posts:
    963
    Hehe, no worries, you are right it's easy to miss that!! Not helpful immediately, but we are upgrading the Tools Overlay to help with this - so when you select a PB shape, the "edit parameters" tool ought to be more noticeable :)
    upload_2023-2-1_13-54-32.png
     
    CaseyHofland likes this.