38 - Animation Blueprint
This commit is contained in:
parent
efe596322b
commit
88ae3da92e
|
@ -0,0 +1 @@
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,34 @@
|
||||||
|
// Fill out your copyright notice in the Description page of Project Settings.
|
||||||
|
|
||||||
|
|
||||||
|
#include "BlasterAnimInstance.h"
|
||||||
|
|
||||||
|
#include "BlasterCharacter.h"
|
||||||
|
#include "GameFramework/CharacterMovementComponent.h"
|
||||||
|
|
||||||
|
void UBlasterAnimInstance::NativeInitializeAnimation()
|
||||||
|
{
|
||||||
|
Super::NativeInitializeAnimation();
|
||||||
|
|
||||||
|
BlasterCharacter = Cast<ABlasterCharacter>(TryGetPawnOwner());
|
||||||
|
}
|
||||||
|
|
||||||
|
void UBlasterAnimInstance::NativeUpdateAnimation(float DeltaSeconds)
|
||||||
|
{
|
||||||
|
Super::NativeUpdateAnimation(DeltaSeconds);
|
||||||
|
|
||||||
|
if (BlasterCharacter == nullptr)
|
||||||
|
{
|
||||||
|
BlasterCharacter = Cast<ABlasterCharacter>(TryGetPawnOwner());
|
||||||
|
}
|
||||||
|
|
||||||
|
if (BlasterCharacter == nullptr) return;
|
||||||
|
|
||||||
|
FVector Velocity = BlasterCharacter->GetVelocity();
|
||||||
|
Velocity.Z = 0.f;
|
||||||
|
Speed = Velocity.Size();
|
||||||
|
|
||||||
|
bIsInAir = BlasterCharacter->GetCharacterMovement()->IsFalling();
|
||||||
|
bIsAccelerating = BlasterCharacter->GetCharacterMovement()->GetCurrentAcceleration().Size() > 0.f;
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,35 @@
|
||||||
|
// Fill out your copyright notice in the Description page of Project Settings.
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "CoreMinimal.h"
|
||||||
|
#include "Animation/AnimInstance.h"
|
||||||
|
#include "BlasterAnimInstance.generated.h"
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
UCLASS()
|
||||||
|
class BLASTER_API UBlasterAnimInstance : public UAnimInstance
|
||||||
|
{
|
||||||
|
GENERATED_BODY()
|
||||||
|
|
||||||
|
public:
|
||||||
|
|
||||||
|
virtual void NativeInitializeAnimation() override;
|
||||||
|
virtual void NativeUpdateAnimation(float DeltaSeconds) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
|
||||||
|
UPROPERTY(BlueprintReadOnly, Category="Character", meta=(AllowPrivateAccess = "true"))
|
||||||
|
class ABlasterCharacter* BlasterCharacter;
|
||||||
|
|
||||||
|
UPROPERTY(BlueprintReadOnly, Category="Movement", meta=(AllowPrivateAccess = "true"))
|
||||||
|
float Speed;
|
||||||
|
|
||||||
|
UPROPERTY(BlueprintReadOnly, Category="Movement", meta=(AllowPrivateAccess = "true"))
|
||||||
|
bool bIsInAir;
|
||||||
|
|
||||||
|
UPROPERTY(BlueprintReadOnly, Category="Movement", meta=(AllowPrivateAccess = "true"))
|
||||||
|
bool bIsAccelerating;
|
||||||
|
};
|
|
@ -4,6 +4,7 @@
|
||||||
#include "BlasterCharacter.h"
|
#include "BlasterCharacter.h"
|
||||||
|
|
||||||
#include "Camera/CameraComponent.h"
|
#include "Camera/CameraComponent.h"
|
||||||
|
#include "GameFramework/CharacterMovementComponent.h"
|
||||||
#include "GameFramework/SpringArmComponent.h"
|
#include "GameFramework/SpringArmComponent.h"
|
||||||
|
|
||||||
|
|
||||||
|
@ -19,6 +20,9 @@ ABlasterCharacter::ABlasterCharacter()
|
||||||
FollowCamera = CreateDefaultSubobject<UCameraComponent>(TEXT("FollowCamera"));
|
FollowCamera = CreateDefaultSubobject<UCameraComponent>(TEXT("FollowCamera"));
|
||||||
FollowCamera->SetupAttachment(CameraBoom, USpringArmComponent::SocketName);
|
FollowCamera->SetupAttachment(CameraBoom, USpringArmComponent::SocketName);
|
||||||
FollowCamera->bUsePawnControlRotation = false;
|
FollowCamera->bUsePawnControlRotation = false;
|
||||||
|
|
||||||
|
bUseControllerRotationYaw = false;
|
||||||
|
GetCharacterMovement()->bOrientRotationToMovement = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void ABlasterCharacter::BeginPlay()
|
void ABlasterCharacter::BeginPlay()
|
||||||
|
|
Loading…
Reference in New Issue