Version: Unity 6.7 Beta (6000.7)
Language : English
Physics Area Circle component reference
Physics Area Contour component reference

Physics Area Composite component reference

Explore the properties you can use to combine multiple shapes in a 2D Physics Core object. For more information, refer to Add physics to a GameObject with 2D Physics Core.

Note: This documentation is about using Pose, Area, and Constraint components. To use 2D physics in the Unity Editor using components like the Rigidbody 2D component, refer to 2D physics instead.

Pose

Property Description
Pose Source Sets how Unity finds the Physics Pose component this area attaches to. The options are:
  • Auto: Searches this GameObject and its parents for a Physics Pose component.
  • Custom: Uses the Physics Pose component from the GameObject you set in the Pose Target property.
Pose Target Attaches this area to the Physics Pose component on this GameObject. Drag a GameObject with a Physics Pose component from the Hierarchy window to this property, or select the picker (). This property is available only if you set Pose Source to Custom.
Refresh Pose Searches this GameObject and its parents again for a Physics Pose component. This property is available only if you set Pose Source to Auto.

Geometry

Property Description
Output Sets how Unity converts the layers into shapes. The options are:
  • Compound: Leaves the shapes in their original form.
  • Polygons: Converts the shapes to filled polygons, and combines them using each layer’s Composite settings.
  • Segments: Converts the layers to hollow chain segments, and combines them using each layer’s Composite settings.
Max Polygon Vertices Sets the maximum number of vertices in each convex polygon. This property is available only if you set Output to Polygons.
Use Delaunay Enables Unity using a Delaunay triangulation algorithm to generate polygons. Enabling this property can improve the shape, but can also reduce performance. This property is available only if you set Output to Polygons.
Geometry Asset Sets an asset that provides the layers to combine. By default, this property is empty, and Unity uses the shapes you set in the Layers section. To set this asset instead, drag a Physics Composite Geometry asset from the Project window to this property, or select the picker ().
Make Asset Creates a new Physics Composite Geometry asset from the shapes in the Layers section, and sets it as the Geometry Asset. If a layer references a Physics Pose component, Unity converts that layer into shapes.
Make Local Removes the Geometry Asset and stores its layers in the Layers section instead. This property is available only if you set a Geometry Asset.

Layers

Use this section to add the shapes you want to combine.

Property Description
Add Geometry Adds a layer that contains a circle, capsule, or polygon.
Add Pose Adds a layer that references every area from the Physics Pose component you assign to it. Selecting Add Pose also puts the Physics Pose component into composite mode. Composite stops the Physics Pose component using its own shapes, so Unity doesn’t simulate or draw the same shapes twice.

Each layer has the following properties:

Property Description
Index The number of the layer in the list, for example #0.
Enabled Sets whether Unity includes this layer in the combined shape.
Type Whether the layer is a Geometry layer or a Pose layer. You can’t change this property.
Winding Which way the vertices of the polygon or segments wind, which determines whether overlaps become a filled area or a hole. The options are:
  • CW: Winds the vertices clockwise.
  • CCW: Winds the vertices counter-clockwise.
This property is available only for a Geometry layer, and only if you set Output to Polygons or Segments.
Invalid Displays when Unity can’t use this layer.
Clone Layer Duplicates the layer. This property is available only for a Geometry layer.
Delete Layer Removes the layer. Deleting a Pose layer takes the Physics Pose component out of Composite Mode.
Geometry Sets the shape of a Geometry layer. The options are: This property is available only for a Geometry layer.

Drag the handle on the left of a layer to reorder it. Unity combines the layers in the order they appear in the list, from top to bottom.

Geometry settings

This section is available only for a Geometry layer.

Property Description
Geometry Sets the shape of the layer.
Geometry Asset Sets an asset that provides this layer’s properties. By default, this property is empty, and Unity stores the properties in the component. To set an asset instead, drag a matching Physics Geometry asset from the Project window to this property, or select the picker ().
Make Asset Converts the shape stored in this layer into a Physics Geometry asset, and sets it as the Geometry Asset. This property is available only if you don’t set a Geometry Asset.

The layer panel also displays the properties for the shape you set Geometry to. For more information, refer to the following:

Pose

This section is available only for a Pose layer.

Property Description
Pose Sets the Physics Pose component to fetch areas from. Assigning a pose here also puts it into composite mode.

Layer Transformation

Property Description
Position Offsets the position of the layer, relative to the composite’s own position.
Rotation Offsets the rotation of the layer in degrees, relative to the composite’s own rotation.
Scale Offsets the scale of the layer, relative to the composite’s own scale.
Scale Radius Adjusts the radius of the layer’s shape using the Scale property in this section. This property is available only for a Geometry layer.

Composite

This section is available only if you set Output to Polygons or Segments.

Property Description
Operation Sets the boolean operation this layer performs against the layers composed before it. The options are:
  • OR: Adds the shape.
  • AND: Keeps only the areas where the new shape and the existing combined shape overlap.
  • NOT: Subtracts the new shape from the existing combined shape.
  • XOR: Removes the overlapping areas, but keeps the non-overlapping areas.
For more information, refer to Combine Physics Core 2D API shapes.
Curve Stride Sets how closely Unity creates curved geometry, for example from a capsule. Lower values use more vertices but produce a more accurate shape.

Transformation

Property Description
Position Offsets the position of the composite, relative to the Position property of the GameObject’s Transform component.
Rotation Offsets the rotation of the composite in degrees, relative to the Rotation property of the GameObject’s Transform component.
Scale Offsets the scale of the composite, relative to the Scale property of the GameObject’s Transform component.

Definition

The properties in this section set the properties of the shape.

Property Description
Definition Asset Sets an asset that sets the values of the properties in this section. By default, this property is empty, and Unity stores the values inside the component. To set a definition asset, drag a Physics Area Definition asset from the Project window to this property, or select the picker ().

Definition Overrides

The properties in this section override the properties from the Definition Asset, or the local values if no Definition Asset is assigned.

Property Description
Contact Asset Sets a Physics Contact Filter asset that overrides the Contact Filter properties.
Material Asset Sets a Physics Surface Material asset that overrides the Surface Material properties.

Contact Filter

The properties in the Contact Filter section determine which other shapes the area collides with. For more information, refer to Configure collisions between 2D Physics Core objects.

Property Description
Categories Sets the layers this shape belongs to.
Contacts Sets the layers this shape collides with.
Group Index Assigns the shape to a group, and overrides the Categories and Contacts properties. Use the following values:
  • 0: Assigns no group. The shape uses the Categories and Contacts properties to determine collisions.
  • Positive value: The shape always collides with other shapes that have the same Group Index.
  • Negative value: The shape doesn’t collide with other shapes that have the same Group Index.

Surface Material

The properties in the Surface Material section determine how the shape interacts with other shapes.

Property Description
Friction Sets the coefficient of friction for this collider. A value of 0 means no friction, like ice. A value of 1 means very high friction, like rubber. The default is 0.6.
Bounciness Sets how bouncy the surface is, and how much other colliders bounce off it. A value of 0 means the surface isn’t at all bouncy, like soft clay. A value of 1 means the surface is very bouncy, like rubber. The default is 0.
Friction Mixing Determines the method Unity uses to mix the friction of two objects when they make contact. The options are:
  • Average: Uses the average of the two values.
  • Mean: Uses the geometric mean of the two values. The geometric mean multiplies the two values then returns the square root.
  • Multiply: Multiplies the two values together.
  • Minimum: Uses the smaller value.
  • Maximum: Uses the larger value.
Bounciness Mixing Determines the method Unity uses to mix the bounciness of two objects when they make contact. The options are:
  • Average: Uses the average of the two values.
  • Mean: Uses the geometric mean of the two values. The geometric mean multiplies the two values then returns the square root.
  • Multiply: Multiplies the two values together.
  • Minimum: Uses the smaller value.
  • Maximum: Uses the larger value.
Friction Priority Determines which shape contributes its Friction Mixing mode when two shapes come into contact. Unity uses the Friction Mixing mode from the shape with the highest Friction Priority value. If the two shapes have the same Friction Priority value, Unity uses the highest SurfaceMaterial.MixingMode enumeration value from the two shapes.
Bounciness Priority Determines which shape contributes its Bounciness Mixing mode when two shapes come into contact. Unity uses the Bounciness Mixing mode from the shape with the highest Bounciness Priority value. If the two shapes have the same Bounciness Priority value, Unity uses the highest SurfaceMaterial.MixingMode enumeration value from the two shapes.
Rolling Resistance Sets how resistant the shape is to rolling. The range of values is 0 to 1, where 0 means no rolling resistance and 1 means full rolling resistance.
Tangent Speed Sets the speed the surface moves other objects that come into contact with it, in meters per second. For example, if you set Tangent Speed to 5, the surface acts like a conveyor belt that moves objects along the surface at 5 meters per second. You can use a positive or negative value to set the direction of movement.
Custom Color Overrides the color Unity uses to draw the debug visualization of the shape. The alpha value is ignored. The default is Color.Clear, which is black with an alpha of 0, and means Unity uses different colors to represent the current state of the shape. For more information, refer to Visualize and edit 2D Physics Core scenes.

Other properties

Property Description
Density Sets the density in kg/m2. The default is 1. Use this property to create a hollow shape for example.
Is Trigger Enables the shape going through other shapes without generating a collision response. Instead, the shape generates a trigger event when another shape overlaps. For more information, refer to Introduction to collision in 2D Physics Core.
Trigger Events Produces a trigger event when the shape starts and ends overlapping another shape that has its Is Trigger property enabled. To fetch events, refer to PhysicsWorld.triggerBeginEvents.
Contact Events Produces a contact event when the shape starts and ends contact with another shape. This property has no effect if the shape is attached to a body set to Static. To fetch events, refer to PhysicsWorld.contactBeginEvents.
Hit Events Produces a hit event when the shape collides with another shape. This property has no effect if the shape is attached to a body set to Static. To fetch events, refer to PhysicsWorld.shapeHitEvents.
Contact Filter Callbacks Calls the IContactFilterCallback method of the shape if it makes contact with another shape, so you can run your own code that determines whether the shapes should collide.
Pre Solve Callbacks Calls the OnPreSolve2D method of the dynamic body before Unity calculates the collision response, so you can run your own code.
Start Static Contacts Produces a contact event if the shape is attached to a body set to Static, and the shape makes contact with another shape. Enabling this property can reduce performance if you have many static shapes.
Start Mass Update Updates the mass of the body when the shape is created. Disabling this property can improve performance if you add multiple shapes to the same body, but you must call ApplyMassFromShapes to recalculate after you add a shape.
World Drawing Draws the shape when Unity draws the debug visualization of the world. For more information, refer to Visualize and edit 2D Physics Core scenes.

Mover Data

The properties in this section control how the area reacts to PhysicsWorld.CastMover geometry that collides with it.

Property Description
Push Limit Sets the amount the shape pushes against the geometry.
Clip Velocity Enables the shape clipping the velocity of the geometry.

Callbacks

Property Description
Callback Source Sets the callback method the area calls when it makes contact with another area. The options are: For more information, refer to Collisions and interactions in 2D Physics Core.
Callback Target Sets the object that receives physics callbacks. This property is available only if you set Callback Source to Area or Shapes.
Areas Only Calls callback methods only when the other shape also belongs to an area. Disable this property if you create shapes using the U2D.Physics API instead of a Physics Area component. This property is available only if you set Callback Source to Area or Events.

Event settings

The properties in this section set the specific method this area calls or the parameter it sets when contact begins or ends. This section is available only if you set Callback Source to Events, and controls the behavior of one of the following methods of the component:

  • On Contact Begin (ContactBeginEvent) and On Contact End (ContactEndEvent), if Is Trigger is disabled.
  • On Trigger Begin (TriggerBeginEvent) and On Trigger End (TriggerEndEvent), If Is Trigger is enabled.
Property Description
Activation Sets when the object activates the callback method or parameter. The options are:
  • Off: Doesn’t activate the callback method or parameter.
  • Editor and Runtime: Activates the callback method or parameter in the Unity Editor and at runtime.
  • Runtime Only: Activates the callback method or parameter only at runtime.
Object Sets the object with the parameter to update or method to call. Drag any object from the Hierarchy or Project windows to this property, or select the picker ().
Functions Sets the parameter to update or the method to call. Select a parameter or method from the Object, its components, or its script methods. You can set the parameter value to update to, or the method parameters to use.
Add (+) Adds a new callback method to the list.
Remove (-) Removes the selected callback method from the list.

User Data

Use the properties in this section to add your own data to the component, and read it using the U2D.Physics API. For more information, refer to Add custom data to a 2D Physics Core object.

Property Description
Object Sets a custom object. Drag any object from the Hierarchy or Project windows to this property, or select the picker ().
Physics Mask Sets a custom set of enabled and disabled layers. For more information, refer to Configure collisions between 2D Physics Core objects.
Float Sets a custom floating-point number.
Int Sets a custom integer.
Int 64 Sets a custom 64-bit integer.
Vector 3 Int Sets a custom 3D vector of integers.
Bool Sets a custom Boolean value.

Info

This section displays information about the composite. You can’t directly edit the properties in this section.

Callbacks

This section is visible only if you set Callback Source to a value other than Off.

Property Description
Contact Begin How many times a contact-begin callback was dispatched to a valid receiver this session. This property is visible only if the area’s active definition isn’t a trigger.
Contact End How many times a contact-end callback was dispatched to a valid receiver this session. This property is visible only if the area’s active definition isn’t a trigger.
Trigger Begin How many times a trigger-begin callback was dispatched to a valid receiver this session. This property is visible only if the area’s active definition is a trigger.
Trigger End How many times a trigger-end callback was dispatched to a valid receiver this session. This property is visible only if the area’s active definition is a trigger.

Other properties

Property Description
Layer Count The number of layers in the compound shape.
Shape Count The number of shapes in the compound shape.
Rejected Shape Count The number of shapes Unity can’t use, for example because their points added unneeded extra points on a straight line, or are too close to other points.

Additional resources

Physics Area Circle component reference
Physics Area Contour component reference