Skip to content

Commit

Permalink
Add AnimFunc for RootBone and ExcludeBones
Browse files Browse the repository at this point in the history
  • Loading branch information
pafuhana1213 committed Jun 6, 2024
1 parent e9d385d commit 95d5e39
Show file tree
Hide file tree
Showing 36 changed files with 76 additions and 1 deletion.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file modified Content/KawaiiPhysicsSample/Chain/BP_Chain.uasset
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file modified Content/KawaiiPhysicsSample/GrayChan/BP_GrayChan.uasset
Binary file not shown.
Binary file modified Content/KawaiiPhysicsSample/KawaiiPhysicsSample.umap
Binary file not shown.
Binary file modified Content/KawaiiPhysicsSample/Others/LS_DemoWarmUp.uasset
Binary file not shown.
Binary file modified Content/KawaiiPhysicsSample/Others/LS_SequencerSample.uasset
Binary file not shown.
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,69 @@ FKawaiiPhysicsReference UKawaiiPhysicsLibrary::ConvertToKawaiiPhysics(const FAni
return FAnimNodeReference::ConvertToType<FKawaiiPhysicsReference>(Node, Result);
}

FKawaiiPhysicsReference UKawaiiPhysicsLibrary::SetRootBoneName(const FKawaiiPhysicsReference& KawaiiPhysics,
FName& RootBoneName)
{
KawaiiPhysics.CallAnimNodeFunction<FAnimNode_KawaiiPhysics>(
TEXT("SetRootBoneName"),
[RootBoneName](FAnimNode_KawaiiPhysics& InKawaiiPhysics)
{
InKawaiiPhysics.RootBone = FBoneReference(RootBoneName);
});

return KawaiiPhysics;
}

FName UKawaiiPhysicsLibrary::GetRootBoneName(const FKawaiiPhysicsReference& KawaiiPhysics)
{
FName RootBoneName;

KawaiiPhysics.CallAnimNodeFunction<FAnimNode_KawaiiPhysics>(
TEXT("GetRootBoneName"),
[&RootBoneName](FAnimNode_KawaiiPhysics& InKawaiiPhysics)
{
RootBoneName = InKawaiiPhysics.RootBone.BoneName;
});

return RootBoneName;
}

FKawaiiPhysicsReference UKawaiiPhysicsLibrary::SetExcludeBoneNames(const FKawaiiPhysicsReference& KawaiiPhysics,
TArray<FName>& ExcludeBoneNames)
{
KawaiiPhysics.CallAnimNodeFunction<FAnimNode_KawaiiPhysics>(
TEXT("SetExcludeBoneNames"),
[ExcludeBoneNames](FAnimNode_KawaiiPhysics& InKawaiiPhysics)
{
InKawaiiPhysics.ExcludeBones.Empty();
for (auto& ExcludeBoneName : ExcludeBoneNames)
{
InKawaiiPhysics.ExcludeBones.Add(FBoneReference(ExcludeBoneName));
};
});

return KawaiiPhysics;
}

TArray<FName> UKawaiiPhysicsLibrary::GetExcludeBoneNames(const FKawaiiPhysicsReference& KawaiiPhysics)
{
TArray<FName> ExcludeBoneNames;

KawaiiPhysics.CallAnimNodeFunction<FAnimNode_KawaiiPhysics>(
TEXT("GetExcludeBoneNames"),
[&ExcludeBoneNames](FAnimNode_KawaiiPhysics& InKawaiiPhysics)
{
for (auto& ExcludeBone : InKawaiiPhysics.ExcludeBones)
{
ExcludeBoneNames.Add(ExcludeBone.BoneName);
};
});

return ExcludeBoneNames;
}

FKawaiiPhysicsReference UKawaiiPhysicsLibrary::SetPhysicsSettings(const FKawaiiPhysicsReference& KawaiiPhysics,
UPARAM(ref) FKawaiiPhysicsSettings& PhysicsSettings)
UPARAM(ref) FKawaiiPhysicsSettings& PhysicsSettings)
{
KawaiiPhysics.CallAnimNodeFunction<FAnimNode_KawaiiPhysics>(
TEXT("SetPhysicsSettings"),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,20 @@ class KAWAIIPHYSICS_API UKawaiiPhysicsLibrary : public UBlueprintFunctionLibrary
Result = (ConversionResult == EAnimNodeReferenceConversionResult::Succeeded);
}

/** Set RootBone */
UFUNCTION(BlueprintCallable, Category = "Kawaii Physics", meta=(BlueprintThreadSafe))
static FKawaiiPhysicsReference SetRootBoneName(const FKawaiiPhysicsReference& KawaiiPhysics, UPARAM(ref) FName& RootBoneName );
/** Get RootBone */
UFUNCTION(BlueprintPure, Category = "Kawaii Physics", meta=(BlueprintThreadSafe))
static FName GetRootBoneName(const FKawaiiPhysicsReference& KawaiiPhysics);

/** Set ExcludeBones */
UFUNCTION(BlueprintCallable, Category = "Kawaii Physics", meta=(BlueprintThreadSafe))
static FKawaiiPhysicsReference SetExcludeBoneNames(const FKawaiiPhysicsReference& KawaiiPhysics,UPARAM(ref) TArray<FName>& ExcludeBoneNames );
/** Get ExcludeBones */
UFUNCTION(BlueprintPure, Category = "Kawaii Physics", meta=(BlueprintThreadSafe))
static TArray<FName> GetExcludeBoneNames(const FKawaiiPhysicsReference& KawaiiPhysics);

/** Set PhysicsSettings */
UFUNCTION(BlueprintCallable, Category = "Kawaii Physics", meta=(BlueprintThreadSafe))
static FKawaiiPhysicsReference SetPhysicsSettings(const FKawaiiPhysicsReference& KawaiiPhysics, UPARAM(ref) FKawaiiPhysicsSettings& PhysicsSettings);
Expand Down

0 comments on commit 95d5e39

Please sign in to comment.