Unreal 20 10

10. 플레이어 피격

플레이어 피격에 대해 알아보려한다. 준비물 - 플레이어 사망 몽타주 - 플레이어 피격 몽타주 플레이어가 피격효과를 받기 위해서 적군의 콜리전을 설정 해준다. 적의 Mesh를 부모로 두는 콜리전을 생성한뒤 소켓의 부모 를 공격부위에 설정하여준다. (RightHand)에 설정하였다. 콜리전은 다음과 같이 설정하였다. 오른쪽 팔에 적당한 크기로 설정해준다. 전과 같이 해당 콜리전의 OnComponentBeginOverlap이벤트를 호출해주어 임의의 태그를 걸어준다(TAG_PLAYER) 그 뒤 태그가 맞을 경우 데미지를 주는 형식이다. Attackdamage라는 변수를 만들어서 설정하였다.(50) 해당 부분은 플레이어 부분이다. 받는 데미지와 플레이어의 HP를 설정해두었다. (HP:100, 데미지:50) 데미지..

Unreal 20 2020.07.08

9. 적군 피격

적군이 공격을 받았을 때 이루어지는 효과에 대해 적어보려고 한다. 준비물 - 좀비 피격효과 몽타주 - 좀비 사망 몽타주 생성해두기 총알을 만든 블루프린트에 적군에게 피해를 줄 어택 데미지를 설정하기 위하여 AttackDamage라는 변수를 float형으로 생성하였다. 그 뒤 총알의 콜리전에 OnComponentBeginOverlap 이라는 이벤트를 추가하였다. 해당 콜리전에 설정해둔 무언가가 닿았을 경우 생기는 일에 대한 이벤트를 만들어주는 곳이며, 이 이벤트를 통해 테미지를 줄 예정이다. OnComponentBeginOverlap의 +버튼을 누르게 되면 다음과 같은 Sphere(콜리전) 이벤트가 호출이 되는데, 태그를 걸어둔 무언가(TAG_ENEMY 라고 칭했음) 닿았을 경우에 ApplyPointDam..

Unreal 20 2020.07.08

08. 플레이어 공격

준비물 - 플레이어 애니메이션 몽타주 만들어주기 - FPS Weapon Bundle 에셋 다운받고 프로젝트에 추가하기 공격을 하기 위해 총알을 발사해줄 BP_Bullet을 생성할 것이다. 총알은 블루프린트 Actor를 이용하여 생성할 것이다. BP_Bullet은 다음과 같이 설정해준다. Arrow와 ProjectileMovement를 추가하여 총알이 앞으로 나아가게 도와준다. 총알의 힘은 Projectile의 스피드 값을 조절해주면 된다. 그 뒤 플레이어의 컴포넌트의 Mesh에 새로운 SkeletalMesh를 추가하여 Mesh를 원하는 총의 모양으로 설정하여 준다. ShootPoint도 설정해준다. Scene 컴포넌트를 사용하였고, 이곳에서 총알이 발사 되는 형식이다. 총의 소켓은 LeftHand를 부모..

Unreal 20 2020.07.06

07. 적 공격

적 공격모션을 만들기 위해 Attack 애니메이션을 몽타주로 만들어준다. 나중에 추가하면 귀찮으니 attack와 death 두개를 추가하도록한다 애니메이션 마우스오른쪽 버튼 -> 생성 -> 애님몽타주생성 그 뒤에 Enemy의 블루프린트를 깔끔하게 정리하고 상태에 따른 각각의 함수를 구현해 주기 위해 블루프린트 - 블루프린트 - 열거형 을 생성하여 Idle(대기), Follow(이동), Attack(공격), Die(사망), Impact(피격) 5가지의 상태를 구분하여 만들어 줄 수 있도록 한다. 기존에 만들었던 캐릭터 움직임 부분을 다음과 같이 수정하였다. 변수로 EnumState(변수 유형은 만들어준 열거형의 이름으로한다)를 생성하고 Update Distance 앞에 EnemyEnumState에 따른 스..

Unreal 20 2020.07.06

06. 적 이동

가장 먼저 설정해야 할 것은 1. 적 블루프린트 만들기(스켈레톤 메시에서 불러오기) 2. 애니메이션 블루프린트 만든후 기본 동작 할 수 있게 구현하기 캐릭터와 방법은 동일 하기에 상세한 설명은 생략하려고 한다. 설정을 완료 해준뒤 적이 제대로 플레이어를 따라 움직이는지 확인 해 보려고 한다. UpdateDistance라는 함수를 만들어주어 거리를 계산해 줄 것이며, PlayerMonsterDistance라는 float 변수, MonsterDir이라는 Vector변수를 이용하여 계산을 할 것이다. 물론 적군을 만들어준 블루프린트에서 만들 것이다. Update Distance라는 함수의 구현 내용이다. 플레이어캐릭터의 Location과 Actor(적군)Location를 빼준 뒤 벡터를 변환하여 만들어놓은 P..

Unreal 20 2020.07.04

05. 캐릭터 이동

편집 - 프로젝트 세팅 - 입력에 축 매핑 리스트에 다음과 같은 매핑을 추가한다. MoveForward - 전진과 후진을 설정해 준다. MoveRight - 좌 우 이동을 설정해준다. 매핑을 추가하였으니 테스트를 해볼 예정이다. MoveForward 입력 축을 추가해 Add Movement Input 을 설정한뒤 X축에 숫자를 넣어 속도를 조절해보고 실행해보자. 실행을 하면 원하는 상황이 나오지 않는다. 원하는 방향으로 플레이어가 움직이지 않고 움직임도 부자연스럽다. (그래도 애니메이션 설정때 해준 Idle --> Walk가 제대로 실행되는 것은 알 수 있다.) 움직임은 다음과 같이 설정해준다. Add Movement Input 대신 Add Input Vector 을 사용하여 이동시킨다. (BP_Play..

Unreal 20 2020.06.29

04. 카메라 설정

BP_Player 블루프린트 컴포넌트에 기본적으로 추가되어있는것 외에 새로 추가한것이 두가지 있다. 1. SpringArm 2. Camera 두가지 인데, 스프링 암에 카메라를 추가하는 형식으로 뷰를 설정할 것이기 때문이다. 3인칭 형식의 게임을 만들경우 SpringArm 컴포넌트에 Camera 컴포넌트를 추가하면 게임플레이를 함에 있어 카메라의 거리가 늘었다 줄었다 할 수 있도록 설정하기 쉽기 때문에 이와 같이 설정한다. 플레이어의 위치를 확인하고, 카메라에 너무 많은 비중을 차지하지 않기 위해 적당한 위치에 SpringArm의 위치를 이동시켜준다.(SpringArm 안에 카메라가 있기때문에 같이 움직인다.) 만약 BP_Player가 파란색 화살표와 같은 방향으로 되어있지 않다면 회전해주어 알맞게 고쳐..

Unreal 20 2020.06.29