# Bundles ## `TransformBundle` ```rust pub struct TransformBundle { /// The transform of the entity. pub local: Transform, /// The global transform of the entity. pub global: GlobalTransform, } ``` ### Proposal 1 (Selected) ```rust #[derive(Component)] #[require(GlobalTransform)] struct Transform; ``` ## `VisibilityBundle` ```rust pub struct VisibilityBundle { /// The visibility of the entity. pub visibility: Visibility, // The inherited visibility of the entity. pub inherited_visibility: InheritedVisibility, // The computed visibility of the entity. pub view_visibility: ViewVisibility, } ``` ### Proposal 1 (Selected) ```rust #[derive(Component)] #[require(InheritedVisibility, ViewVisibility)] struct Visibility; ``` ## `SpatialBundle` ```rust pub struct SpatialBundle { /// The visibility of the entity. pub visibility: Visibility, /// The inherited visibility of the entity. pub inherited_visibility: InheritedVisibility, /// The view visibility of the entity. pub view_visibility: ViewVisibility, /// The transform of the entity. pub transform: Transform, /// The global transform of the entity. pub global_transform: GlobalTransform, } ``` ### Proposal 1 Remove SpatialBundle