Skip to content

Action ref PR #3 #561

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 8 commits into from
Sep 4, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions Documentation~/Edge_Bevel.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ To bevel edges or faces:
1. Do one of the following:
* Right-click (macOS: **Ctrl**+click) on the selected face or edge and select **Bevel Edges**.
* From the main menu, select **Tools** > **ProBuilder** > **Geometry** > **Bevel Edges**.
1. The **Bevel Edges** overlay opens and a new face is created.

## Bevel Edges options

Expand Down
15 changes: 0 additions & 15 deletions Documentation~/Edge_FillHole.md

This file was deleted.

21 changes: 21 additions & 0 deletions Documentation~/FillHole.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Fill Hole

In ProBuilder, a hole is a missing face. The **Fill Hole** action creates a face between existing edges or vertices that touch the selected hole.

> **Tip:** You don't need to select all edges or vertices around a hole. Selecting only one edge or vertex is enough to fill the hole.

To fill a hole:

1. In the **Tools** overlay, select the **ProBuilder** context.
1. In the **Tool Settings** overlay, select either:
* The **Vertex** edit mode.
* The **Edge** edit mode.
1. Select an edge or vertex along the hole. <!--the tooltip on Fille Entire Hole says you can get all the holes at once by not selecting anything - same as Select Hole - but I can't get the Fill Hole option clickable without selecting something-->
1. Do one of the following:
* Right-click (macOS: **Ctrl**+click) select **Fill Hole**.
* From the main menu, select **Tools** > **ProBuilder** > **Geometry** > **Select Hole**.
1. The **Fill Hole Options** overlay opens.
By default, ProBuilder fills the entire hole. If you want to fill only part of the hole, disable the **Fill Entire Hole** option and select the edges you want to build along.
For example, if you have a missing quad, and select to adjacent edges, ProBuilder creates a triangular polygon that covers half of the hole.

![On the right is a shape with a hole. On the left, the hole is filled.](images/FillHole_Example.png)
23 changes: 23 additions & 0 deletions Documentation~/Selection_EdgeLoopRing.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Select Edge Loop or Edge Ring

To add edges to a selection, you can use the **Select Edge Loop** or **Select Edge Ring** actions:

* The **Select Edge Loop** action adds edges that touch your selected edge.

![On the left, a single edge is selected. On the right, all touching edges are selected, forming a closed loop.](images/Selection_LoopExample.png)

* The **Select Edge Ring** action adds edges that touch the same faces as your selected edge, but that don't touch the selected edge itself.

![On the left, a single edge is selected along two faces. On the right, all edges that touch the same two faces are selected.](images/Selection_RingExample.png)

To grow an edge selection:

1. In the **Tools** overlay, select the **ProBuilder** context.
1. In the **Tool Settings** overlay, select the **Edge** edit mode.
1. Select an edge.
1. Do one of the following:
* Right-click (macOS: **Ctrl**+click) and click **Select** > **Select Edge Loop** or **Select Edge Ring**.
* From the main menu, select **Tools** > **ProBuilder** > **Selection** > **Select Loop** or **Select Ring** (these option names don't include the word "Edge").
1. The **Select Edge Ring** or **Select Edge Loop** overlay opens and the selection is expanded to match the default settings.
The **Iterative Selection** option is available for both actions. When you select it, the selection grows to include edges that are next to the edges it just added, and not just the edges next to the original selection.

24 changes: 24 additions & 0 deletions Documentation~/Selection_FaceLoopRing.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# Select Face Loop or Face Ring

To add touching faces to a face you've selected, you can use the **Select Face Loop** or **Select Face Ring** actions:

* The **Select Face Loop** action follows the z-axis.

![On the left, a single face is selected. On the right, the selection grows along the z-axis.](images/SelectFaceLoop_Example.png)

* The **Select Face Ring** action follows the x-axis.

![On the left, a single face is selected. On the right, the selection grows along the x-axis.](images/SelectFaceRing_Example.png)

> **Note:** Both actions work only on quad faces (each face has four sides).

To grow a face selection:

1. In the **Tools** overlay, select the **ProBuilder** context.
1. In the **Tool Settings** overlay, select the **Face** edit mode.
1. Select a face.
1. Do one of the following:
* Right-click (macOS: **Ctrl**+click) and click **Select** > **ProBuilder Slection** **Select Face Loop** or **Select Face Ring**.
* From the main menu, select **Tools** > **ProBuilder** > **Selection** > **Select Loop** or **Select Ring** (these option names don't include the word "Face").
1. The selection is expanded. There are no settings to adjust.

33 changes: 19 additions & 14 deletions Documentation~/Selection_Grow.md
Original file line number Diff line number Diff line change
@@ -1,21 +1,26 @@
# ![Grow Selection](images/icons/Selection_Grow.png) Grow Selection
# Grow Selection

The __Grow Selection__ action expands the selection outward to adjacent faces, edges, or vertices.

![Grow Selection Examples](images/GrowSelection_Example.png)

This action is available in the [vertex, edge, and face modes](modes.md).

You can use this action with the **Alt/Opt+G** shortcut, or from the ProBuilder menu (**Tools** > **ProBuilder** > **Selection** > **Grow Selection**).
The __Grow Selection__ action expands your selection outward to adjacent faces, edges, or vertices.

To expand the selection:

1. In the **Tools** overlay, select the **ProBuilder** context.
1. In the **Tool Settings** overlay, select an edit mode. All three modes support this action.
1. Select a face, edge, or vertex.
1. Do one of the following:
* Right-click (macOS: **Ctrl**+click) and click **Select** > **ProBuilder Select** > **Grow Selection**.
* From the main menu, select **Tools** > **ProBuilder** > **Selection** > **Grow Selection**.
1. The **Grow Selection** overlay opens and the selection is expanded to match the default settings.

## Grow Selection Options

![Grow Selection Options](images/Selection_Grow_props.png)
| **Property** | **Description** |
| --- | --- |
| **Restrict To Angle** | Limit selection to faces at or under a certain angle from the original face. This option is only available for face selection. |
| **Max Angle** | Set the maximum angle allowed when growing the selection. This option is only available when you use **Restrict to Angle**. |
| **Iterative** | Adds faces that are next to faces it just added, and not just the faces next to the original selection. This option is only available when you use **Restrict to Angle**. |
| **Live Preview** | Add faces as you change the angle with the mouse. If this option isn't active, the faces are added only when you release the mouse. |

This image shows how **Restrict To Angle** changes the selection. In the top example, with no angle restriction, the selection includes all adjacent faces. In the bottom example, the selection includes only faces within 15 degrees of the original face

| **Property:** | **Description:** |
| --------------------- | ------------------------------------------------------------ |
| **Restrict To Angle** | Enable this property to grow the selection only to those faces within a specified angle. |
| **Max Angle** | Set the maximum angle allowed when growing the selection.<br />ProBuilder ignores this property and prevents you from editing it unless the __Restrict to Angle__ property is enabled. |
| **Iterative** | Enable this property to grow the selection one adjacent face at a time, each time you press the **Grow Selection** button.<br />This property is enabled automatically (and is not editable) if the __Restrict to Angle__ property is disabled. |
![Grow Selection. In the top example, with no angle restriction, the selection includes all adjacent faces. In the bottom example, the selection includes only faces within 15 degrees of the original face.](images/GrowSelection_Example.png)
9 changes: 0 additions & 9 deletions Documentation~/Selection_Loop_Edge.md

This file was deleted.

11 changes: 0 additions & 11 deletions Documentation~/Selection_Loop_Face.md

This file was deleted.

23 changes: 17 additions & 6 deletions Documentation~/Selection_SelectHole.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,22 @@
# ![Select Hole icon](images/icons/Selection_SelectHole.png) Select Holes
# Select Hole

The __Select Holes__ action selects all elements along the selected open vertex or edge. A hole is like a removed face. This action is a useful shortcut for selecting all the edges around a missing face.
In ProBuilder, a hole is a missing face. The **Select Hole** action is a version of Grow Selection that selects all elements along an open vertex or edge.

If you have no elements selected, this action automatically selects all holes in the selected object.
> **Tip:** To create a face from the hole, refer to [Fill Hole](FillHole.md).

![Start with one edge selected, grow selection around hole](images/Example_SelectHole.png)
<!--fill hole is currently two pages; I will not allow that to stand-->

This action also tells you how many holes exist in the Mesh. It is only available in the [vertex and edge modes](modes.md).
To select a hole:

1. In the **Tools** overlay, select the **ProBuilder** context.
1. In the **Tool Settings** overlay, select either:
* The **Vertex** edit mode.
* The **Edge** edit mode.
1. Select an edge or vertex along a hole. To select all the holes in the mesh at once, don't select any vertex or edges.
1. Do one of the following:
* Right-click (macOS: **Ctrl**+click) select **ProBuilder Select** > **Select Hole**.
* From the main menu, select **Tools** > **ProBuilder** > **Selection** > **Select Hole**.
1. All the edges or vertexes along the hole are selected.

![On the left is a mesh with a single selected edge along a missing face. On the right, the same mesh has all edges around the missing face selected.](images/Example_SelectHole.png)

From the main menu, select **Tools** > **ProBuilder** > **Selection** > **Select Hole**.
103 changes: 52 additions & 51 deletions Documentation~/TableOfContents.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,67 +19,68 @@
* [Common editing tasks](workflow-edit-tasks)
* [Modeling tips for novices](workflow-edit-tips)
* [Setting vertex colors](workflow-vertexcolors)
* [Selection options reference](selection_ref)
* [Grow Selection](Selection_Grow)
* [Select Hole](Selection_SelectHole)
* [Select Face Loop or Face Ring](Selection_FaceLoopRing)
* [Select Edge Loop or Edge Ring](Selection_EdgeLoopRing)
* [Select Material](Selection_SelectByMaterial)
* [Select Vertex Color](Selection_SelectByVertexColor)
* [Shrink Selection](Selection_Shrink)
* [Select Path](SelectPath)
* [Interaction options reference](interaction-ref)
* [Rect](Selection_Rect_Intersect)
* [Toggle Handle Orientation](HandleAlign)
* [Toggle Select Back Faces](Selection_SelectHidden)
* [Toggle X Ray](Toggle_X_Ray)
* [Object options reference](object-ref)
* [Center Pivot](CenterPivot)
* [Conform Objects Normals](Object_ConformNormals)
* [Flip Normals](Object_FlipNormals)
* [Freeze Transform](Freeze_Transform)
* [Merge Objects](Object_Merge)
* [Mirror Objects](Object_Mirror)
* [ProBuilderize](Object_ProBuilderize)
* [ProBuilder MeshFilter component](ProBuilderMesh)
* [Set Collider](Entity_Trigger#Collider)
* [Set Trigger](Entity_Trigger)
* [Subdivide Object](Object_Subdivide)
* [Triangulate (Object)](Object_Triangulate)
* [Geometry options reference](geo_ref)
* [Bevel Edges](Edge_Bevel)
* [Bridge Edges](Edge_Bridge)
* [Collapse Vertices](Vert_Collapse)
* [Conform Face Normals](Face_ConformNormals)
* [Delete Faces](Face_Delete)
* [Detach Faces](Face_Detach)
* [Duplicate Faces](Face_Duplicate)
* [Export](Object_Export)
* [Extrude Edges](Edge_Extrude)
* [Extrude Faces](Face_Extrude)
* [Fill Hole)](FillHole)
* [Flip Face Edge](Face_FlipTri)
* [Flip Face Normals](Face_FlipNormals)
* [Insert Edge Loop](Edge_InsertLoop)
* [Merge Faces](Face_Merge)
* [Offset Elements](Offset_Elements)
* [Set Pivot To Selection](SetPivot)
* [Smart Connect (Connect Edges)](Edge_Connect)
* [Smart Connect (Connect Vertices)](Vert_Connect)
* [Smart Subdivide (Subdivide Edges)](Edge_Subdivide)
* [Smart Subdivide (Subdivide Faces)](Face_Subdivide)
* [Split Vertices](Vert_Split)
* [Triangulate Faces](Face_Triangulate)
* [Weld Vertices](Vert_Weld)
* [Materials, Shaders, Textures, and UVs](workflow-texture-mapping)
* [Creating and applying Materials](workflow-materials)
* [Mapping Textures with UVs](workflow-uvs)
* [Smoothing hard edges](workflow-edit-smoothing)
* [Exporting and re-importing](workflow-exporting)
* [Action reference](ref_actions)
* [Bevel - Edges](Edge_Bevel)
* [Bridge Edges](Edge_Bridge)
* [Center Pivot](CenterPivot)
* [Collapse Vertices](Vert_Collapse)
* [Conform Normals - Faces](Face_ConformNormals)
* [Conform Normals - Objects](Object_ConformNormals)
* [Connect Edges](Edge_Connect)
* [Connect Vertices](Vert_Connect)
* [Delete Faces](Face_Delete)
* [Detach Faces](Face_Detach)
* [Duplicate Faces](Face_Duplicate)
* [Export](Object_Export)
* [Extrude Edges](Edge_Extrude)
* [Extrude Faces](Face_Extrude)
* [Fill Hole - Edges](Edge_FillHole)
* [Fill Hole - Vertices](Vert_FillHole)
* [Flip Face Edge](Face_FlipTri)
* [Flip Face Normals](Face_FlipNormals)
* [Flip Normals - Objects](Object_FlipNormals)
* [Freeze Transform](Freeze_Transform)
* [Grow Selection](Selection_Grow)
* [Insert Edge Loop](Edge_InsertLoop)
* [Inset](Face_Inset)
* [Lightmap UVs](Object_LightmapUVs)
* [Merge Faces](Face_Merge)
* [Merge Objects](Object_Merge)
* [Mirror Objects](Object_Mirror)
* [Offset Elements](Offset_Elements)
* [Orientation](HandleAlign)
* [ProBuilderize](Object_ProBuilderize)
* [ProBuilder MeshFilter component](ProBuilderMesh)
* [Rect](Selection_Rect_Intersect)
* [Select by Colors](Selection_SelectByVertexColor)
* [Select by Material](Selection_SelectByMaterial)
* [Select Edge Loop](Selection_Loop_Edge)
* [Select Edge Ring](Selection_Ring_Edge)
* [Select Face Loop](Selection_Loop_Face)
* [Select Face Ring](Selection_Ring_Face)
* [Select Smoothing Group](Selection_SmoothingGroup)
* [Select Hidden](Selection_SelectHidden)
* [Select Holes](Selection_SelectHole)
* [Select Path](SelectPath)
* [Set Collider](Entity_Trigger#Collider)
* [Set Pivot To Selection](SetPivot)
* [Set Trigger](Entity_Trigger)
* [Shift](Selection_Shift)
* [Shrink Selection](Selection_Shrink)
* [Split Vertices](Vert_Split)
* [Subdivide Edges](Edge_Subdivide)
* [Subdivide Faces](Face_Subdivide)
* [Subdivide Object](Object_Subdivide)
* [Toggle X Ray](Toggle_X_Ray)
* [Triangulate Faces](Face_Triangulate)
* [Triangulate - Objects](Object_Triangulate)
* [Weld Vertices](Vert_Weld)
* [Tools reference](ref_tools)
* [New PolyShape and Edit PolyShape tools](polyshape)
* [New Shape and Edit Shape tools](shape-tool)
Expand Down
48 changes: 48 additions & 0 deletions Documentation~/geo_ref.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
# Geometry options reference

This table lists all the geometry options you can use with a ProBuilder object, and indicates which [Edit modes](modes.md) support them.

These actions are available:

* From the **main menu** > **Tools** > **ProBuilder** > **Geometry**.
* From the context menu:
1. In the **Tools** overlay, set the working context to ProBuilder.
1. In the **Tool Settings** overlay, select an edit mode.
1. In the **Scene** view, right-click on a ProBuilder object.

| **Property** | **GameObject tool context** | **Vertex edit mode (ProBuilder context)** | **Edge edit mode (ProBuilder context)** | **Face edit mode (ProBuilder context)** |
| ---- | ---- | ---- | ---- | ---- |
| [Bevel Edges](Edge_Bevel.md) (and faces) | | | x | x |
| [Bridge Edges](Edge_Bridge.md) | | | x | |
| [Collapse Vertices](Vert_Collapse.md) | | x | | |
| [Conform Face Normals](Face_ConformNormals.md) (Faces) | | | | x |
| [Delete Faces](Face_Delete.md) | | | | x |
| [Detach Faces](Face_Detach.md) | | | | x |
| [Duplicate Faces](Face_Duplicate.md) | | | | x |
| [Export](Object_Export.md) | x | | | |
| [Extrude Edges](Edge_Extrude.md) | | | x | |
| [Extrude Faces](Face_Extrude.md) | | | | x |
| [Fill Hole](FillHole.md) | | x | x | |
| [Flip Face Edge](Face_FlipTri.md)  | | | | x |
| [Flip Face Normals](Face_FlipNormals.md) | | | | x |
| [Insert Edge Loop](Edge_InsertLoop.md)  | | | | |
| [Merge Faces](Face_Merge.md) | | | | x |
| [Offset Elements](Offset_Elements.md) |  | x | x | x |
| [Set Pivot To Selection](SetPivot.md) | | x | x | x |
| [Smart Connect (Connect Edges)](Edge_Connect.md) | | | x | |
| [Smart Connect (Connect Vertices)](Vert_Connect.md) | | x | | |
| [Smart Subdivide (Subdivide Edges)](Edge_Subdivide.md) | | | x | |
| [Smart Subdivide (Subdivide Faces)](Face_Subdivide.md) | | | | x |
| [Split Vertices](Vert_Split.md) | | x | | |
| [Triangulate Faces](Face_Triangulate.md) | | | | x |
| [Weld Vertices](Vert_Weld.md) | | x | | |


<!--
The Editor:

* Has only one extrude - I should merge them
* Doesn't have inset - it's just a way to use extrude, so why is it treated as an action?
* Doesn't have Shift
* Doesn't have Lightmap UVs
-->
Binary file modified Documentation~/images/GrowSelection_Example.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
18 changes: 18 additions & 0 deletions Documentation~/interaction_ref.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Interaction options reference

This table lists all the interaction options you can use with a ProBuilder object, and indicates which [Edit modes](modes.md) support them.

These actions are available:

* From the **main menu** > **Tools** > **ProBuilder** > **Interaction**.
* From the context menu:
1. In the **Tools** overlay, set the working context to ProBuilder.
1. In the **Tool Settings** overlay, select an edit mode.
1. In the **Scene** view, right-click on a ProBuilder object.

| **Property** | **GameObject tool context** | **Vertex edit mode (ProBuilder context)** | **Edge edit mode (ProBuilder context)** | **Face edit mode (ProBuilder context)** |
| ---- | ---- | ---- | ---- | ---- |
| [Rect](Selection_Rect_Intersect.md) | | | x | x |
| [Toggle Handle Orientation](HandleAlign.md) | x | x | x | x |
| [Toggle Select Back Faces](Selection_SelectHidden.md) | x | x | x | x |
| [Toggle X Ray](Toggle_X_Ray.md) | x | x | x | x |
Loading