Make Unreal REAL.
article thumbnail
사격 애니메이션 몽타주 적용

Unreal Engine 5 C++ Multiplayer Shooter Fire 액션에 좌클릭을 매핑하고 Press, Released 이벤트에 함수를 바인딩한다. UE4 에서의 Additive Animation – BBAGWANG Additive Animation 이란? 애디티브 애니메이션이란 두 애니메이션 간의 차이를 계산하여 만들어지는 애니메이션을 말한다. 애디티브 애니메이션은 그 자체로는 별로 쓸모가 없는데, 그 이유는 다른 bbagwang.com Additive 애니메이션은 Base Pose(예를 들어 Idle)와의 차이를 계산하여 추가되는 애니메이션이다. 예를 들어, 달리는(Source) 애니메이션에 Idle (Base Pose)과 총을 쏘는(Additive) 애니메이션의 차이만큼 추가된 애니메..

article thumbnail
발자국 소리 적용

Unreal Engine 5 C++ Multiplayer Shooter 발소리와 점프 사운드를 가져오기 위해 Shooter Game 학습 킷 프로젝트를 생성한다. 발소리 사운드 큐를 Migrate 하려는데 불필요한 것들까지 포함되어 있는 것을 볼 수 있다. SC_Footsteps 사운드 클래스를 열어보면, 여기서 다른 불필요한 것들을 포함하고 있는 것을 확인할 수 있다. Blaster 게임에서는 필요하지 않으므로 Class를 None으로 지정해준다. Class를 None으로 지정해도 사운드 큐가 정상적으로 동작한다. 불필요한 것들이 제거된 것을 확인할 수 있고, Blaster 프로젝트의 Content 폴더에 Migrate 해준다. 같은 방식으로 점프 시작과 착지 사운드 큐도 Migrate 해준다. Foo..

article thumbnail
부자연스러운 대각선 걷기 애니메이션 수정

Unreal Engine 5 C++ Multiplayer Shooter 무기를 소지하고 걸을 때, -135°, 45° 대각선 방향으로 이동할 때는 자연스럽다. 그런데, -45°, 135° 대각선 방향으로 이동할 때는 마치 문워크 하듯이 부자연스럽다. 무기를 소지하고 앞으로 걷는 애니메이션인 Jog_Fwd_Rifle 애니메이션을 복제해 임시 애니메이션을 만들어준다. 애니메이션을 수정하기 전에 World Transform 기준으로 변경해준다. Root Bone을 -45°만큼 회전해 다리가 대각선으로 달리도록 하고, spine_01 Bone은 다시 45°를 돌려 앞을 보도록 한다. 타임라인 바를 0에 위치시키고 + Key 커튼을 눌러 키를 생성한 후, 두 Bone의 회전이 Bake된 새로운 애니메이션을 생성한..

article thumbnail
움직임 개선

Unreal Engine 5 C++ Multiplayer Shooter 현재 무기를 장착하지 않아도 앉을 수는 있지만, 애니메이션이 적용되지 않은 상태이다. ` 키를 누르고 show collision을 입력해 확인해보면 다음과 같다. 앉아서 캡슐의 크기가 줄었지만, 애니메이션은 적용되지 않은 상태다. 에셋 중에 EpicCharacter_CrouchWalk_2D라는 블렌드 스페이스가 있다. Speed 축 하나를 가지며, 0일 때는 자동으로 가만히 있으므로 Idle을 별도로 나눠줄 필요가 없다. 이 블렌드 스페이스를 앉았을 때의 애니메이션으로 사용해도 될 것 같다. 애니메이션 블루프린트에서 앉아서 걷는 부분도 추가해, 캐릭터 클래스의 bIsCrouched 값에 따라 재생되도록 한다. 현재 무기를 들지 않고 ..

article thumbnail
네트워크 갱신 주기

Unreal Engine 5 C++ Multiplayer Shooter Simulated Proxy(다른 컴퓨터에 있는 내 캐릭터)에서는 마우스를 빠르게 조정할 경우, 애니메이션이 조금씩 덜덜 떨리는 것을 볼 수 있다. 원격에서는 일정한 Net Update 주기마다 애니메이션을 동기화하기 때문이다. 애님 그래프의 Rotate Root Bone, FABRIK, Two Bone IK 등의 노드에는 Interp Result라는 옵션이 존재한다. 최종 Rotation까지 값을 보간하여 부드럽게 보이게 한다. 네트워크를 통해 회전이 띄엄띄엄 전달될 때 유용하다. 보간을 사용하기 때문에 마우스를 빠르게 돌릴 경우, 실제보다 더 멀리 가는 경우가 있지만 부드럽게 처리된다. Actor 클래스에는 리플리케이션 시 네트워..

article thumbnail
Rotate Root Bone

Unreal Engine 5 C++ Multiplayer Shooter 이제 [-90°, 90°] 범위를 벗어났을 때 옆으로 도는 애니메이션은 작동하니, 실제로 캐릭터의 회전도 돌려보도록 한다. 현재 가만히 있을 때는 bUseControllerRotationYaw 옵션을 꺼서 캐릭터의 몸은 바닥에 고정되어 있고, Aim Rotation을 통해 AO_Yaw를 계산해 무기를 조준하고 있다. 따라서, 현재는 좌측과 같은 상황이다. 무기는 마우스에 따라 해당 방향을 조준하고 있지만, 실제로 캐릭터는 빨간 화살표의 방향을 보고 있는 것이다. [-90°, 90°] 범위를 벗어났을 때 해당 방향(회전)으로 몸을 돌리기 위해서는, 우측과 같이 실제 캐릭터의 방향도 빨간 화살표의 방향이 되어야 한다. 단, 이때도 캐릭터..

검색 태그