Compound Shape Component

The Compound Shape component is a container for complex shapes. An entity can contain only one Shape component. To build complex shapes, the Compound Shape component can reference any number of entities, each with their own Shape component. The Compound Shape component is not a mesh, but rather a helper geometry that can be used to define volumes for shape gradients, audio, vegetation, PhysX, and any application that can utilize the Shape EBus. For more information on using Shape components, see Shape components .

Provider

O3DE Core (LmbrCentral) Gem

Dependencies

One or more entities containing Shape components .

Compound Shape properties

Compound Shape component properties

The Compound Shape component contains a Child Shape Entities list of referenced entities containing Shape components.

  • To add an item to the Child Shape Entities list, choose the icon at the top of the list.
  • To remove an item from the list, choose the icon to the right of the item.
  • To clear the list, choose the icon button at the top right of the component interface.
  • To assign an entity containing a shape component to a slot in the list, choose the to enter pick mode, and then select an entity by clicking it in Perspective view or Entity Outliner.

The entities referenced by the Compound Shape component are not required to be children of the entity in the scene hierarchy that has the Compound Shape. However, if the shapes should move together, making the shape entities children of the Compound Shape entity in the scene hierarchy is recommended.

The dimensions of shapes that make up the Compound Shape should be set in the individual Child Shape Entity components to ensure accurate collision and overlap detection. Using the Scale properties in the Transform component of an entity to change the dimensions of a shape or compound shape might lead to unpredictable results.

For EBus (event bus) requests, Compound Shapes service the full shape component bus. However, each individual shape in the list increases the cost of requests such as testing for collision or overlap.

Refer to Shape component Ebus interface for a description of functions that are available to all Shape components.