Survey and Discussion - Built-in Mesh and Greyboxing Tools (ProBuilder)

Honestly, I wish polybrush would be somehow merged with probuilder.

It’s a separate package that attempts to do similar things but with worse execution in every possible way.
I mean, why do the polybrush and probuilder have separate “exporting” tools? There is fbx exporter package.
Or why do you need two separate components for the probuilder and polybrush? Both break prefabs in different ways.

1 Like

For poop sake, PLEASE implement Blender-like shortcuts that are specific to editor context. Coming to Unity from Blender or other 3d editors is just terrible. Allow us all the basic mesh editing tools, especially dissolving and deleting verts/edges/faces. Nobody should have to import something as simple as a subdivided mesh from Blender because Unity isn’t able to do it. Unity should have subdivided mesh primitives, or at least Probuilder should. Absolutely ridiculous. Also, vertex snapping!

Blender shortcuts for scaling, moving, and rotating along the different axis are a great timesaver for me.

4 Likes

It looks very cool, yes! However, it’s just a tad too limited for a full blockout tool. The “simplicity is good” is not lost on us though! :slight_smile:

Yup, those are very high on the list!

Have you seen the new Contextual Tools stuff? It’s very similar - tools only show up when needed, are dynamic, etc, and of course we’ll be using that!

Absolutely. We (team) generally agree that ProBuilder tried to be too many things. The new toolset will be carefully focused on blockout and level design!

Yup, this will remain! Likely much simpler than current tools though - no need to open a big chunky UV editor panel.

Oh no - sorry for the usual question, but can you submit a bug? I don’t see it happening here :frowning:

We’re also looking into this … an important aspect of blockout (for exterior levels, mostly) is small organic bits (garden, graveyard, rock, etc) and that requires some form of “soft” editing. Indeed it should be directly integrated!

This is on the way! Very excited for it also … the shortcut system has been overhauled so that “deeper” contexts win global ones, and you have much, much more control. Yes!

Extreme agree. I’d like to make this very simple, nothing specific to promise yet, but it’s echoed over here.

Have you tried holding V on the keyboard? That should allow you to snap from vert to vert :slight_smile:

2 Likes

edit: @humanoid_unity that’s right, you have a whole forum post on this!

“Enabled by Default” usually means “Adds a bunch of hotkeys that you don’t want, and conflicts with things you already use daily.” Please do not make it difficult to disable it. I have already played with the existing versions and am not interested in scratch modeling inside Unity.

1 Like

Love to see the active responses to the feedback @gabrielw_unity

It’s refreshing seeing lots of older systems come back to life recently, especially in these times divided over render pipeline differences and such :hushed: Keep up the great work!

Also I’m curious… As focus was given to enable developers to extend and take advantage of the recently added Spline tools, has any similar thought been given to enabling certain outlets for developers to extend ProBuilder and give it custom functionality, or is that wayyyy out of scope for what it’s intended for? :smile:

I know about contextual tools. Though the UE’s solution is so good due to a greater execution. They’ve managed to redesign the entire editor, so all you see is a scene view, top bar, inspector, and little hierarchy window. Everything else shows up only when needed.

Also, a feature I think unity doesn’t have right now, is the possibility to edit the pivot position of the mesh (instead of moving an entire mesh).

1 Like

I wish we had something like BakeRS for baking rotation and scale.

Also, plz don’t forget about geometry/prefab painting! Plz make it similar to prefab brush + / YAPP from assetstore! It’s a very necessary tool for level designing! Also plz support terrain for prefab painting, don’t want to use the default terrain painting because it really sucks and poorly developed! If it will support terrain it will be very easy to add scripts/ logic to the vegetation and would finally allow us to align trees/rocks with the slope and use LODS with grass and make it possible to use it with DOTS workflow!

I have a bit more specific feature coming out of a more complex issue. In Polybrush, you can use a tool for vertex painting, then use that feature in a shader. More specifically in the shader graph.

But by default, you can’t make a shader graph that uses vertex painting and supports 2D lights in URP. At leastnot in 2021 LTS.

Either enable that feature or create some sort of solution for painting 2D sprites by editing a texture, for example:

I personally prefer the second option honestly.

Yup! This will “just work” via the Overlays and contextual tooling. Simply hide the overlay you don’t want, and the contextual tool stuff will take care itself (eg, if you never select a ProBuilder thing, you’ll never see tools for it).

Thanks! I’m trying to set dedicated time for discussion here :slight_smile:
Regarding extending ProBuilder - yes, I imagine this will be important! It already is to some extent - I’ve seen some very cool extensions, and the API can be used at runtime also! Were there areas you wanted to see improved for this?

Yeah, a broad-scope (and useful for everyone!) opportunity we’re seeing as part of the Level Design toolset, is making full-screen workflows a real possibility. Not forcing anyone into it - but as you say UE does (agreed, it’s nice!!), we want to make it an efficient option. 90% of time spent in the Scene View, but only 25% screen space generally allocated to it? That’s not a good system.

Hmm. That sounds like it’d be in the 2D or URP/graphics boat. I’ll check with them :slight_smile:

No worries, fast and easy asset placement is a clear opportunity for us here.

Have you tried the ProBuilder “Freeze Transform” action? Should do what you want. Probably needs renaming … definitely needs check-boxes for position, rotation, scale.

2 Likes

Tried Probuilder for some simple box levels, quickly realized simple features are missing and moved to umodeler since I got it randomly from some bundle. Easy way to remove excess geometry?

Hey Kamyker! I dropped a note in that thread, we’re currently in the UX research stage, for rebuilding the level design toolset. Up till now we’ve been mostly building up foundation (which Umodeler can use!) to support consistent, reliable tools. So, we’d love to hear what you found lacking in ProBuilde, and any other toolsets too! :slight_smile:

I’m not sure if anyone has mentioned this, but a big reason we can’t use ProBuilder / Polybrush for our production is that it stores way too much in the main scene file, and generally is not polite with source control dirtying.

Ideally making a small change to the greyboxing should store only a small change in source control. Currently the entire binary data for the meshes and anything else associated is dumped into the Scene file, meaning two people can’t work on the same scenes together.

Ideally two people can move brushes / control points around independently, and it will merge, just like when moving separate Transforms around the scene. Binary meshes and other assets should be cached in the Library folder, not committed to source.

3 Likes

Commented before, I have to mention “remove edges” (and similar operations). If two faces share an edge, removing it should connect the faces. In some cases, all the vertex would be kept, but for some situations, these would be removed. This should work for edge loops and such.

2 Likes

1000%, this is a definite for the new toolset.

However, you can make good use of the “Export to Asset/Prefab” workflow right now! (No, that’s not a full solution, but it can work well!)

https://www.youtube.com/watch?v=Kh0Hc2EqqVc

Agreed! We haven’t been adding features (busy on that foundational stuff, for all toolsets), but this is high on the list.

1 Like

Has any of this been implemented yet?
This thread has gotten pretty long and I don’t want to post requests for things that maybe I can do now.

Also, in the worst case, the idea will end up in the backlog for a few years.