전체 글 115

[UE4] GTA 방식의 카메라 구현

Character 클래스에 함수를 작성하고, 스프링암을 활용해서 GTA 방식의 삼인칭 조작에 관련된 기능을 설정해보자. ControlRotation(컨트롤 회전) PlayerController는 플레이어의 의지를 나타내는 ControlRotation이라는 속성을 제공한다. 플레이어의 입력값을 컨트롤 회전에 연동하는 방법을 알아보자. 일단 프로젝트 세팅의 입력설정에서 원하는 키를 설정한 후 AddControllerInputYaw, Roll, Pitch라는 세가지 명령을 사용하면 PlayerController의 ControlRotation값이 입력에 따라 변한다. 이러한 컨트롤 회전 값은 캐릭터의 카메라 설정에서 다양하게 사용된다. 플레이어 컨트롤러에서는 마우스 입력 값에 따라 변화하는 컨트롤 회전 값의 스..

UE4 2022.10.05
[UE4] Pawn & Character

폰(Pawn)이란? 폰은 움직이는 액터에 조종당하는 기능이 추가된 액터다. 자동차가 될 수도 비행기가 될 수도 인간이 될 수도 있다. 내가 설정한 입력 세팅을 폰의 함수와 Binding 했다면, 이를 폰의 움직임으로 활용해야 한다. 폰의 움직임 PawnMovementComponent의 AddMovementInput()를 사용하면 -1부터 1사이의 입력 값을 PawnMovementComponent에 전달해서 폰을 움직이게 만든다. 자동차에 비유하자면 PawnMovementComponent는 엔진이고 AddMovementInput()명령은 운전석의 인터페이스라 할 수 있다. 이 명령에 들어가는 Scale값은 액셀을 밟는 세기를 의미한다. AddMovementInput()에는 추가로 이동할 방향을 WorldD..

UE4 2022.09.30
[UE4] 코드로 에셋 적용시키기

에셋 지정 게임이 시작하기 전 생성자함수에서 에셋을 지정하려면 ConstructorHelpers::FObjectFinder를 사용하면 된다. 이때 에셋 경로는 변하지 않을 고유값이므로 static을 붙여주고 if + Succeeded()로 에셋이 불러와졌을때만 메쉬에 적용해주는 부분이 중요하다. static ConstructorHelpers::FObjectFinderSM_KWANG(TEXT("SkeletalMesh'/Game/Assets/ParagonKwang/Characters/Heroes/Kwang/Meshes/KwangRosewood.KwangRosewood'")); if (SM_KWANG.Succeeded()) { Mesh->SetSkeletalMesh(SM_KWANG.Object); } 이번에는..

UE4 2022.09.30