Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * @author Mohammad S. Babaei <info@babaei.net>
- *
- * @section LICENSE
- * Copyright (c) 2017 Atitel Game Studio
- */
- #include "Reminiscence.h"
- #include "PlayerAnimInstance.h"
- #include "Animation/AnimNodeBase.h"
- #include "AnimationRuntime.h"
- #include "BoneControllers/AnimNode_ModifyBone.h"
- #include "BonePose.h"
- #include "CoreGlobals.h"
- #include "PlayerCameraModifyBone.h"
- #include "PlayerCharacter.h"
- DEFINE_LOG_CATEGORY_STATIC(LogFPChar, Warning, All);
- struct UPlayerAnimInstance::Impl
- {
- public:
- private:
- UPlayerAnimInstance* m_parent;
- public:
- explicit Impl(UPlayerAnimInstance* parent);
- ~Impl();
- };
- UPlayerAnimInstance::UPlayerAnimInstance(const FObjectInitializer& objectInitializer)
- : Super(objectInitializer),
- m_pimpl(std::unique_ptr<Impl, ImplDeleter>(new Impl{ this }, m_pimplDeleter))
- {
- this->CameraPitch = 0.0f;
- }
- UPlayerAnimInstance::~UPlayerAnimInstance() = default;
- void UPlayerAnimInstance::NativeInitializeAnimation()
- {
- Super::NativeInitializeAnimation();
- }
- void UPlayerAnimInstance::NativeUpdateAnimation(float deltaSeconds)
- {
- Super::NativeUpdateAnimation(deltaSeconds);
- }
- void UPlayerAnimInstance::NativePostEvaluateAnimation()
- {
- Super::NativePostEvaluateAnimation();
- USkeletalMeshComponent* playerCharacterMesh = Cast<USkeletalMeshComponent>(this->GetOwningComponent());
- if (playerCharacterMesh) {
- FTransform spine01Transform(playerCharacterMesh->GetBoneTransform(playerCharacterMesh->GetBoneIndex("spine_01")));
- FTransform spine02Transform(playerCharacterMesh->GetBoneTransform(playerCharacterMesh->GetBoneIndex("spine_02")));
- FTransform spine03Transform(playerCharacterMesh->GetBoneTransform(playerCharacterMesh->GetBoneIndex("spine_03")));
- this->Spine01Rotation = FRotator(this->CameraPitch, spine01Transform.Rotator().Yaw, spine01Transform.Rotator().Roll);
- this->Spine02Rotation = FRotator(this->CameraPitch, spine02Transform.Rotator().Yaw, spine02Transform.Rotator().Roll);
- this->Spine03Rotation = FRotator(this->CameraPitch, spine03Transform.Rotator().Yaw, spine03Transform.Rotator().Roll);
- UE_LOG(LogTemp, Warning, TEXT("%s Spine 01 sssssssssssssssssssss"), FString::FromInt(this->Spine01Rotation.Pitch).GetCharArray().GetData());
- }
- }
- void UPlayerAnimInstance::NativeUninitializeAnimation()
- {
- Super::NativeUninitializeAnimation();
- }
- /*FAnimInstanceProxy* UPlayerAnimInstance::CreateAnimInstanceProxy()
- {
- return new FPlayerAnimInstanceProxy(this);
- }*/
- UPlayerAnimInstance::Impl::Impl(UPlayerAnimInstance* parent)
- : m_parent(parent)
- {
- }
- UPlayerAnimInstance::Impl::~Impl() = default;
- void UPlayerAnimInstance::ImplDeleter::operator()(UPlayerAnimInstance::Impl *p)
- {
- delete p;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement