Feedback is unanimous- the new ProBuilder 2.0 is awesome! Of course, nothing is perfect, and we’ve taken the entire past month to hammer away at ProBuilder 2.0, relentlessly tracking and destroying bugs through nearly 200 code commits.

The user experience has also been greatly streamlined, with improvements such as:

  • Drag selection support for faces.
  • UV2 channel generation now totally automated
  • New face selection graphic system
  • Tweaks to many default settings
  • and much more! Read the full changelog below.

There is also the major feature addition of smoothing- Huzzah! More info on that soon, we promise a tutorial will be out ASAP.

Thanks everyone, and don’t forget to sign up for the newsletter at, if you’d like to stay up-to-date!

ProBuilder 2.1 Changelog:

# Features
– Add Smoothing Group support.
– New face selection graphic system respects depth order + speed boost.
– Add drag selection support for faces.
– UV2 channel generation now totally automated.
– New Lightmap Window exposes UnwrapParam properties per-object for fine-grained UV2 generation control.
– Add smart object naming, with the convention “pb(Shape Type)([Entity Type])-(Object ID)” – ex: pb-Cube[Detail]-1701)
– Add new “Mover” entity type, which is non-static and allows complete control at runtime.
– Add support for n-gon faces.

# Changes
– ‘World’ is now default handle alignment.
– Update default materials with dedicated textures.
– Update QuickStart window with more explicit options.
– Default values for Cylinder are now slightly more sane.

# Bug Fixes
– Fix ProceduralMaterials throwing errors in Texture Editor.
– Fix rare bug where incorrect vertex indices would be selected in an UpdateSelection() call, throwing a NullReferenceException.
– Fix bug where toggling selected faces would not correctly remove vertices from internal selection list.
– Fix bug where pivot would center at 0,0,0 on merging objects.
– Hide ACG property in Inspector window.
– Fix bug where merged objects would lose EntityType information.
– Fix bug where prefab creation would not account for pb_Group data.
– Fix bug where merged objects would lose normal data.
– Fix bug where exiting Texture Mode would not consistently set Edit Mode to Top.
– Fix bug where generating UV2 channel would incorrectly hide NoDraw faces, breaking synchronization with pb_Editor UI.
– Fix bug where ListenForTopLevelMovement would incorrectly fire, significantly slowing scene navigation.
– Fix bug where duplicating multiple objects would result in referenced pb_Objects.
– Fix bug in pb_Group where SetActive would incorrectly be called in Unity 3.5.
– Fix bug where collision meshes would not correctly update after an Undo / Redo event.
– Fix bug where drag selection would not exit properly if a function key is pressed mid drag.
– Fix bug where vertex handles would incorrectly be drawn in Top level editing mode.
– Fix bug where deleting a pb_Object would occasionally cause a NullReferenceError in UpdateSelection().
– Fix bug where Occluder objects would not allow textures to be applied.
– Fix bug where box colliders would not properly inherit trigger boolean value.
– Fix bug where merging objects or creating groups would not snap pivot point to grid (this also introduces centered pivot points).
– Fix rare bug where get_localRotation would fail.
– Fix white flash in Texture Window preview.
– Fix bug where ProBuilder would not remember Handle Alignment setting.
– Fix bug where editor selection property would not correctly update on object deletion.
– Fix minor bug where vertex handles would sometimes not immediately draw on entering Geometry editing mode.
– Fix bug where closing Texture Window manually would not always exit EditLevel.Texture.
– Fix bug where an Undo/Redo event would sometimes cause pb_Editor to attempt to refresh every pb_Object in scene.
– Fix bug where exiting EditLevel.Texture to Geo Mode would not correctly remember the previous SelectionMode.
– Fix bug where cylinder object sometimes initialize with un-even side lengths.
– Fix bug where on deleting a pb_Object’s MeshCollider, ProBuilder would not immediately re-initialize it (prevents common PEBKAC error).

– Integrate Doxygen (Still a work in progress – feel free to drop by the forums with any questions).
– Add SharedTrianglesWithFacesExclusive for extracting shared triangle indices exclusive to passed faces.
– VerticesWithIndiceArray is now VerticesWithTriangleArray.
– Remove pb_Object::CreatePrimitive. Use pb_Shape for object creation, or pb_Object::CreateCube(float scale).
– Add OnVertexMovement EventHandler to pb_Object.
– pb_Object::CreateObjectWithPointsQuads is now pb_Object::CreateObjectWithVerticesFaces.

# Actions
– Update AutoNodraw to cast from all vertices + center point when determining hidden flag.
– In PivotTool.cs, snap pivot point to grid if no vertices are selected.
– Refactor EntityType.Brush to EntityType.Detail.

# Internal
– Add pb_Profiler class
– Add UVee window + ProBuilder specific modifications
– Add internal preference to force update preference when necessary (usually means adding shortcut items).
– Significant performance improvements in handle drawing.