Contains information about a ProBuilder action (success, failure, notification, etc)
Access the built-in materials that ProBuilder uses.
A face is composed of a set of triangles, and a material.
Triangle indexes may point to the same vertex index as long as the vertices are unique to the face. Ie, every vertex that a face references should only be used by that face's indices. To associate vertices that share common attributes (usually position), use the @"UnityEngine.ProBuilder.ProBuilderMesh.sharedIndexes" property.
ProBuilder automatically manages condensing common vertices in the EditorMeshUtility.Optimize function.
Static methods for working with ProBuilderMesh objects in an editor.
A collection of math functions that are useful when working with 3d meshes.
Functions for generating mesh attributes and various other mesh utilities.
This component is responsible for storing all the data necessary for editing and compiling UnityEngine.Mesh objects.
Functions for projecting 3d points to 2d space.
Functions for picking mesh elements in a view. Can either render a texture to test, or cast a ray. Prefer this over calling SelectionPickerRenderer directly.
Functions for creating ProBuilderMesh primitives.
Defines associations between vertex positions that are coincident. The indexes stored in this collection correspond to the ProBuilderMesh.positions array.
Coincident vertices are vertices that despite sharing the same coordinate position, are separate entries in the vertex array.
Utilities for working with smoothing groups. Smoothing groups are how ProBuilder defines hard and soft edges. ProBuilder calculates vertex normals by first calculating the normal for every face, which in turn is applied to each vertex that makes up the face. Afterwards, each vertex normal is averaged with coincident vertices belonging to the same smoothing group.
A set of indexes and material.
Helper functions for working with transforms.
Store UV2 unwrapping parameters.
Holds information about a single vertex, and provides methods for averaging between many.
A set of commonly used functions for modifying mesh positions.
A winged-edge data structure holds references to an edge, the previous and next edge in it's triangle, it's connected face, and the opposite edge (common).
Enumerator for WingedEdge. Enumerates by walking the WingedEdge.next property.
A collection of settings describing how to project UV coordinates for a @"UnityEngine.ProBuilder.Face".
An edge connecting two vertices. May point to an index in the vertices or the sharedIndexes array (local / common in ProBuilder terminology).
An edge composed of both the local index and common index.
This is useful when comparing vertex indexes that are coincident. Coincident vertices are defined as vertices that are share the same coordinate space, but are separate values in the vertex array. ProBuilder tracks these coincident values in the @"UnityEngine.ProBuilder.ProBuilderMesh.sharedIndexes" array. A "common" (also called "shared") index is the index of a vertex in the sharedIndexes array.
A container for normal, tangent, and bitangent values.
A collection of settings defining how mesh element picking behaves.
A bare-bones Tuple class. Holds 2 items, does not implement equality, comparison, or anything else.
Describes the results of an action.
The point from which UV transform operations will be performed.
After the initial projection into 2d space, UVs will be translated to the anchor position. Next, the offset and rotation are applied, followed by the various other settings.
Describes how the projected UV bounds are optionally stretched to fill normalized coordinate space.
Human readable axis enum.
A flag which sets the triangle culling mode.
Describes the different methods of face extrusion.
How the handle gizmo is oriented with regards to the current element selection.
Mesh attributes bitmask.
Describes why a @"UnityEngine.ProBuilder.ProBuilderMesh" is considered to be out of sync with it's UnityEngine.MeshFilter component.
Describes the type of pivot ProBuilder would automatically assign on primitive creation.
Axis used in projecting UVs.
Defines the behavior of drag selection in the scene view for mesh elements.
Selectively rebuild and apply mesh attributes to the UnityEngine.Mesh asset.
When drag selecting mesh elements, this defines how the Shift key will modify the selection.
Defines what objects are selectable for the scene tool.
Describes each primitive ProBuilder can create by default. Pass to @"UnityEngine.ProBuilder.ShapeGenerator.CreateShape" to get a primitive with default parameters.
Describes methods of sorting points in 2d space.
Describes the winding order of mesh triangles.