전체 글 (842) 썸네일형 리스트형 Unreal Engine 4 C++ The Ultimate Shooter Course Section 3-10 Blending Shooting Animations사격 애니메이션이 이제 존재하지만, 달리면서 사격하면 애니메이션이 부자연스럽다.이번엔 이를 수정하기 위해 blend 작업을 해보도록 하자. 우리가 blend 할 대상은 기존 Ground Locomotion에 대한 애니메이션과, 사격이 포함된 애니메이션이다.이 2개를 먼저 Cached 작업을 통해 정리해주도록 하자. blend를 하기 위해 어느 뼈대를 미리 살펴보자.사격 모션은 상체에 해당하므로, 하체는 그대로 달리고 상체만 바뀌는 것이 목표이다.따라서 상체 쪽에 위치한 뼈대를 체크해주자. 이제 Layered blend per bone 노드를 통해 이를 섞어 줄 수 있다.Layer Setup에서 하위 Branch Filters를 추가하고 여기서 Bone N.. Unreal Engine 4 C++ The Ultimate Shooter Course Section 3-9 Shooting Animation슈팅하는 순간에 대한 애니메이션도 추가해주자.우선 원본 애니메이션을 찾아서 해당 애니메이션을 복사해주자. 복사한 애니메이션에 대해 프레임을 잘라주자.뒷부분이 필요없어 보이므로 앞부분만 채택했다. 다음으로 애니메이션 몽타주를 생성했다.기존 스테이트 머신을 사용하지 않고 애니메이션 몽타주를 사용하는 이유는 사격 모션에 대해 보다 더 자연스럽게 구현할 수 있기 때문이다. 해당 몽타주에서 방금 만든 복사본 애니메이션을 넣어주자. 그리고 새롭게 Section을 생성해주자.해당 Section은 사격 모션 애니메이션에 걸맞게 Start Fire로 설정해줄 것이다.그리고 Default Section을 뒤로 쭉 땡기면 StartFire Section이 앞으로 할당되고, 이후 Default.. Unreal Engine 4 C++ The Ultimate Shooter Course Section 3-8 Shooting Particles사운드에 이어 이펙트도 추가해주자.이펙트를 추가해주기에 앞서서 이펙트가 생성될 위치를 먼저 잡아주자.현재 캐릭터의 스켈레톤 골격을 보면 총이 있는 위치를 볼 수 있다.해당 위치에 이펙트 스폰용 소켓을 추가해주자. 그리고 해당 소켓 위치를 총구 앞으로 조절해주고, 방향 또한 x 축이 앞으로 가도록 해주자. 이제 사운드 때와 마찬가지로 할당할 이펙트를 선언해주자. 사전에 생성한 소켓 위치를 토대로 이펙트를 생성해주자.사용한 함수는 SpawnEmitterAtLocation 함수이다.그리고 소켓 관련한 변수는 변할 필요가 없는 값이므로 const로 값을 고정시켜주었다. 다음으로 이펙트를 확인해주자.사용할 이펙트는 P_BelicaMuzzle이다.해당 이펙트를 확인해보면 3번의 총 .. Unreal Engine 4 C++ The Ultimate Shooter Course Section 3-7 Shooting Sound Effects총기에 사운드 효과를 입혀주자.사운드 에셋은 강의 첨부된 자료를 사용한다.우선 자료를 다운하여 프로젝트에 임포트해주자. 그리고 해당 파일을 기준으로 사운드 큐을 만들어주자. 그리고 해당 큐에 다운 받은 사운드 10개를 랜덤으로 재생되도록 묶어주자.랜덤은 해당 사운드 큐 파일에서 우클릭시 생성이 가능하다.사운드 파일들은 전부 클릭 후에 사운드 큐 화면으로 드래그 해주면 된다. 이제 이를 좌클릭 눌렀을 때 사운드가 발생하도록 해주자.우선 이를 위해 할당할 사운드를 선언해주자. 그리고 기존 ulog 내용을 지우고 PlaySound2D 함수를 통해 사운드를 실행시켜주자. 이제 BP ShooterCharacter 클래스에 사운드 큐를 할당하고 실행해보면 좌클릭 시 랜덤한 1.. Unreal Engine 4 C++ The Ultimate Shooter Course Section 3-6 Fire Weapon Function총 발사 기능도 만들어 주자.일단은 액션 매핑만 해주고 세부 기능은 log 출력으로만 테스트 해준다.Jump 때와 동일하게 작업을 해주면 된다. 이제 컴파일하고 마우스 좌클릭시 ulog 내용이 출력된다. Unreal Engine 4 C++ The Ultimate Shooter Course Section 3-5 Rotate Character to Movement현재 앞뒤 이동만 되는 상태로 좌우로 이동하게 되면 앞을 보고 있는 모습 유지된 상태로 이동하게 된다.이번 강의는 이를 위한 작업을 하게 된다. 우선 캐릭터 회전이 카메라 회전과 일치하지 않도록 변경해주자.이를 위해 bUseControllerRotation 값들을 모두 false로 변경해주게 된다. 캐릭터의 방향이 이동 방향에 맞도록 조정되도록 하기 위해 bOrientRotationToMovement 값을 true로 바꿔주자.그리고 회전 속도 또한 설정해주자 여기서는 540으로 설정하였다.하는김에 점프속도 및 공중 제어 시간 또한 설정해주었다. 바로 컴파일 했을 때 제대로 동작하지 않을 수 있다.왜냐하면 해당 값들이 블루프린트에도 존재하는데, 블루프린트에.. Unreal Engine 4 C++ The Ultimate Shooter Course Section 3-4 Trimming Animations전진하고 멈추는 애니메이션을 조금 다듬어보자.현 상태는 시작할때 준비시간이 다소 존재하고, 멈출 때 또한 비슷하게 딜레이 시간이 존재한다.이를 위해 원본 애니메이션에서 복사하여 복사한 애니메이션을 다듬는데 사용하도록 하자. 그리고 우선 기존에 스테이트에 할당했던 애니메이션을 바꿔주자. 이제 프레임을 다듬어주자.깔끔한 동작을 위해 한번 걷는 사이클을 제외한 뒷 프레임을 모두 제거해주자. 그리고 이어서 앞에 걷기 시작하기 전의 딜레이 부분도 삭제해주자. 마찬가지로 멈출 때 애니메이션 또한 작업해주자.작업하다보면 되돌리고 싶을 때도 있을 텐데, 이를 위해 복사본을 사용하는 것이다.또한 테스트해보고 맘에 안들면 추가적으로 삭제도 해주자. Unreal Engine 4 C++ The Ultimate Shooter Course Section 3-3 Run Animations달리는 애니메이션을 설정해보자.우선 기본적인 스테이트 머신을 생성해주자. 그리고 스테이트를 통해 간단하게 구성도를 만들어주자.idle -> 달리기 시작 -> 달리기 -> 달리기 멈춤 -> idle 형태이다. 각 스테이트에 대한 애니메이션과 조건들을 생성해주자. 이제 컴파일 하고 실행해보면 달리기 애니메이션이 실행된다.이후 강의를 통해 좀 더 다듬는 과정을 거치게 된다. 이전 1 ··· 11 12 13 14 15 16 17 ··· 106 다음