Game Programming
-
사운드 추가Game Programming/언리얼 2023. 9. 30. 15:53
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = Camera, meta = (AllowPrivateAccess = "true")); class USoundCue* FireSound; USoundCue 멤버 변수를 추가했다. static ConstructorHelpers::FObjectFinder propellerCue( TEXT("/Game/Voyager/Demo/Audio/Weapons/AssaultRifle/SCue_Weapons_Rifle_Noise-Exterior-Close_01.SCue_Weapons_Rifle_Noise-Exterior-Close_01") ); FireSound = propellerCue.Object; 기존 블루프린트에서 설정하..
-
Rotator Character to MovementGame Programming/언리얼 2023. 9. 29. 17:15
bUseControllerRotationPitch = false; bUseControllerRotationRoll = false; bUseControllerRotationYaw = false; 케릭터 회전이 컨트롤러에 따라 발생하지 않도록 변수 설정 GetCharacterMovement()->bOrientRotationToMovement = true; GetCharacterMovement()->RotationRate = FRotator(0.f, 540.f, 0.f); GetCharacterMovement()->JumpZVelocity = 600.f; GetCharacterMovement()->AirControl = 0.2f; 이동에 따라 회전 할 수 있도록하고, 회전 비율을 540으로 설정했다. 그리고 ..
-
애니메이션 인스턴스 추가Game Programming/언리얼 2023. 9. 29. 14:25
C++클래스에 애니메이션 인스턴스를 추가한다. void UpdateAnimationProperties(float DeltaTime); virtual void NativeInitializeAnimation() override; 매 프레임 마다 애니메이션을 업데이트하는 UpdateAnimationProperties 함수와 생성자에 해당하는 NativeInitializeAnimation를 상속 받는다. private: UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = Movement, meta = (AllowPrivateAccess = "true")) class AMyCharacter* MyCharacter; /*The speed of the characte..
-
케릭터 점프, 마우스 회전Game Programming/언리얼 2023. 9. 29. 14:21
Axis Mappings에 Turn과 LookUp을 추가한다. LookUp은 -1로 설정한다. Action Mappings에 Jump를 추가한다. void AMyCharacter::SetupPlayerInputComponent(UInputComponent* PlayerInputComponent) { Super::SetupPlayerInputComponent(PlayerInputComponent); check(PlayerInputComponent); ..생략 PlayerInputComponent->BindAxis("Turn", this, &APawn::AddControllerYawInput); PlayerInputComponent->BindAxis("LookUp", this, &APawn::AddContr..
-
카메라 이동, 회전Game Programming/언리얼 2023. 9. 29. 13:38
Axis Mapping에서 W,S,D,A 의 방향을 설정한다. void AMyCharacter::MoveForward(float Value) { if ((Controller != nullptr) && Value != 0.0f) { const FRotator Rotation{ Controller->GetControlRotation() }; const FRotator YawRotation{ 0.f, Rotation.Yaw, 0 }; const FVector Direction{ FRotationMatrix{YawRotation }.GetUnitAxis(EAxis::X) }; AddMovementInput(Direction, Value); } } void AMyCharacter::MoveRight(float V..