UE4 将演员(或其组件)附加到另一个演员(或其组件)
UE4 Attach actor (or his component) to another actor (or his component)
所以,我的设置很简单。我正在制作一个 VR 飞镖游戏,sortof,使用默认的 VR 模板,我有一个 DartActor,带有一个附加的 ConeMesh (StaticMeshComponent) 用于飞镖,以及一个带有附加的 CylinderMesh (StaticMeshComponent) 的 TableActor 用于飞镖板,以及 RotatingMovementComponent。
当我检测到两者之间有重叠时,我会关闭飞镖上的物理功能(否则它只会反弹)并尝试将它附加到 table 演员。我尝试了以下方法:
- “将 actor 附加到 actor”,当我尝试将飞镖 actor 附加到 table actor
- “将 actor 附加到组件”,当我尝试将 dart actor 附加到 TableActor 的网格组件时
- “将组件附加到组件”,当我尝试将 DartActor 的根组件或网格组件附加到 TableActor 的网格组件或根组件时。
这些都不适合我。
但忽略这一点,当成功检测到叠加层时关闭 DartActor 上的物理会伪造飞镖粘在 table 中。有一个小警告 - 当飞镖看似卡在棋盘中时,棋盘仍在飞镖下方旋转。
我对位置和旋转都使用了“捕捉到目标”,并在“附加”蓝图节点上保持“保持相对”缩放。
我想要的是,飞镖实际上粘在table上,焊接,并在旋转的同时与table(飞镖板)一起旋转。
那么,我该怎么做呢?
我用的是UE4.27.2,如果需要蓝图截图请告诉我。
好的,我修好了。
原来是其他杂项的组合...
- StaticMeshComponent 需要作为根组件而不是默认的 RootComponent - 对于 DartActor 和 TableActor
- 我在 DartActor 的蓝图中使用了
AttachActorToComponent
,使用 DartActor 的 self
并附加到 TableActor 的 StaticMeshComponent
- 在实际的
AttachActorToComponent
BP节点中,三样东西我都用了“Keep World”(location/rotation/scale)
- 在附加之前,我将 DartActor 本身的“设置模拟物理”设置为关闭。
就是这样,飞镖现在粘在板上并随着旋转板一起旋转。
所以,我的设置很简单。我正在制作一个 VR 飞镖游戏,sortof,使用默认的 VR 模板,我有一个 DartActor,带有一个附加的 ConeMesh (StaticMeshComponent) 用于飞镖,以及一个带有附加的 CylinderMesh (StaticMeshComponent) 的 TableActor 用于飞镖板,以及 RotatingMovementComponent。
当我检测到两者之间有重叠时,我会关闭飞镖上的物理功能(否则它只会反弹)并尝试将它附加到 table 演员。我尝试了以下方法:
- “将 actor 附加到 actor”,当我尝试将飞镖 actor 附加到 table actor
- “将 actor 附加到组件”,当我尝试将 dart actor 附加到 TableActor 的网格组件时
- “将组件附加到组件”,当我尝试将 DartActor 的根组件或网格组件附加到 TableActor 的网格组件或根组件时。
这些都不适合我。
但忽略这一点,当成功检测到叠加层时关闭 DartActor 上的物理会伪造飞镖粘在 table 中。有一个小警告 - 当飞镖看似卡在棋盘中时,棋盘仍在飞镖下方旋转。
我对位置和旋转都使用了“捕捉到目标”,并在“附加”蓝图节点上保持“保持相对”缩放。
我想要的是,飞镖实际上粘在table上,焊接,并在旋转的同时与table(飞镖板)一起旋转。
那么,我该怎么做呢?
我用的是UE4.27.2,如果需要蓝图截图请告诉我。
好的,我修好了。
原来是其他杂项的组合...
- StaticMeshComponent 需要作为根组件而不是默认的 RootComponent - 对于 DartActor 和 TableActor
- 我在 DartActor 的蓝图中使用了
AttachActorToComponent
,使用 DartActor 的self
并附加到 TableActor 的 StaticMeshComponent - 在实际的
AttachActorToComponent
BP节点中,三样东西我都用了“Keep World”(location/rotation/scale) - 在附加之前,我将 DartActor 本身的“设置模拟物理”设置为关闭。
就是这样,飞镖现在粘在板上并随着旋转板一起旋转。