무기 발사 기능 InhancedInput을 사용하기 위해 InputAction을 생성해주고 IMC에 등록해 줍니다. 이후에 코드를 고쳐줍니다. ShooterCharacter.h protected: ... void FireWeapon(const FInputActionValue &Value); private: ... UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = Input, meta = (AllowPrivateAccess = "true")) class UInputAction *FireAction; ShooterCharacter.cpp void AShooterCharacter::FireWeapon(const FInputActionValue &Value) { U..
Animation Instance 새로운 cpp인 AnimInstance를 상속받는 ShooterAnimInstance를 생성해줍니다. ShooterAnimInstance.h // Fill out your copyright notice in the Description page of Project Settings. #pragma once #include "CoreMinimal.h" #include "Animation/AnimInstance.h" #include "ShooterAnimInstance.generated.h" UCLASS() class SHOOTER_API UShooterAnimInstance : public UAnimInstance { GENERATED_BODY() public: UFUNCT..
우선 헤더에 전방 선언을통해 포인터 변수를 생성해주고 ,Getter 함수를 UE INLINE 매크로로 선언해준다. ※ 전방 선언이란? include를 하면 코드의 양이 증가하는데, 헤더에서 변수 선언시 구현 부분(멤버 함수 및 변수)이 필요 없는 경우에는 [class USpringArmComponent] 처럼 사용하여 구현부의 링킹을 미룬다. 주로 CPP파일에서 구현 부분을 사용하기 때문에 헤더의 크기를 줄이는 기법이다. (하나의 헤더를 여러 cpp이 include할 때 필요한 구현 부분만 cpp가 include 할 수 있어 코드의 양을 줄여준다.) // ShooterCharacter.h class UCameraComponent; class USpringArmComponent; ... public: FO..