diff --git a/03-UnrealEngine/Physical/重置Cloth&Physical结果.md b/03-UnrealEngine/Physical/重置Cloth&Physical结果.md new file mode 100644 index 0000000..4038a5e --- /dev/null +++ b/03-UnrealEngine/Physical/重置Cloth&Physical结果.md @@ -0,0 +1,26 @@ +--- +title: Untitled +date: 2024-11-11 16:35:38 +excerpt: +tags: +rating: ⭐ +--- +有的时候布料会被卡在一些奇怪地方就需要进行重置。可以使用以下代码进行重置: +```ts +ResetDynamics(): boolean { + console.log('reset dynamics') + var comps = this.K2_GetComponentsByClass(UE.SkeletalMeshComponent.StaticClass()) + for (var i = 0; i < comps.Num(); i++) { + var skelComp = comps.GetRef(i) as UE.SkeletalMeshComponent + if (skelComp) { + skelComp.ResetAnimInstanceDynamics(UE.ETeleportType.ResetPhysics) + skelComp.ForceClothNextUpdateTeleportAndReset() + } + } + return true +} +``` + +看得出主要是调用: +- skelComp.ResetAnimInstanceDynamics(UE.ETeleportType.ResetPhysics) +- skelComp.ForceClothNextUpdateTeleportAndReset() \ No newline at end of file