Unreal Engine 데미지 숫자: AI로 떠오르는 타격 숫자 만들기
Unreal Engine 데미지 숫자: 일반 타격은 흰색, 22 이상 치명타는 금색, 120 유닛 떠오르며 사라지는 숫자를 AI 요청 한 번으로 만듭니다.
Unreal Engine의 떠오르는 데미지 숫자는 세 가지 작은 아이디어로 이루어집니다. 피해를 입고 자신의 체력을 기억하는 대상, 월드의 알맞은 위치에 나타나는 작은 텍스트, 그리고 텍스트를 위로 움직이며 흐려지게 하는 규칙입니다. 게임에서 보이는 숫자의 정체는 이게 전부입니다. 1초도 안 되는 시간 동안만 존재하는 작은 액터입니다. 가장 쉬운 방법은 AI에게 시스템 전체를 한 번의 요청으로 맡기는 것입니다.
이 튜토리얼에서는 Ultimate Engine CoPilot이 훈련용 더미와, 일반 타격은 흰색, 치명타는 금색으로 표시되는 떠오르는 데미지 숫자를 만듭니다. 정확한 프롬프트, AI가 화면을 보고 찾아낸 버그, 그리고 떠오르는 데미지 숫자의 작동 원리에 대한 쉬운 설명을 확인할 수 있습니다.
완성된 시스템이 하는 일
눈 속에 훈련용 더미 두 개가 서 있습니다. G를 누르면 가장 가까운 더미가 타격을 받고, 그 위로 숫자가 떠올랐다가 사라집니다. 일반 타격은 흰색입니다. 치명타는 금색에 더 크고 느낌표가 붙습니다. 타격할 때마다 체력이 줄어들고, 0이 되면 더미가 쓰러졌다가 사라집니다.

400 유닛 간격으로 놓인 더미 두 개, 그리고 가장 가까운 더미의 사거리 안에 있는 플레이어.
프롬프트
아래 내용을 복사해서 데미지 범위나 치명타 기준값을 바꾼 뒤, AI가 무엇을 만드는지 확인해 보세요.
Make floating damage numbers. Create BP_TrainingDummy in /Game/Series/EP40_DamageNumbers, a dummy made from a cylinder body and a sphere head with 100 health, and WBP_DamageNumber, a text widget. Create BP_DamageController in the same folder, an actor that I place once in the level, that listens for the G key. Pressing G hits the nearest training dummy within 600 units for a random damage from 10 to 25. Each hit spawns a floating number above the dummy that rises 120 units over 0.8 seconds and fades out: normal hits are white, hits of 22 or more are critical, gold, bigger and written with an exclamation mark. When a dummy reaches 0 health it falls over and is destroyed after 1 second. Keep the damage range, the critical threshold and the rise height as variables. Place two dummies near the player start, 400 units apart. Then play test it: teleport the player next to a dummy, press G five times, check each hit spawns a number with the right colour, check the dummy health goes down, check the dummy is destroyed at 0, and fix anything that does not work.
요청에서 숫자로 쓴 부분과 말로 쓴 부분이 어떻게 나뉘는지 보세요. 규칙은 숫자입니다. 10에서 25까지, 치명타 22, 600 유닛, 위로 120, 0.8초입니다. 모양은 말입니다. 흰색과 금색, 더 큰 크기, 느낌표입니다. 어떤 프롬프트에도 잘 맞는 구분입니다.
AI가 데미지 숫자를 만드는 과정
AI는 프로젝트를 읽은 뒤 작업을 시작합니다. 에셋 네 개가 나타납니다. 더미, 숫자 위젯, 컨트롤러, 그리고 위젯을 월드로 가져오는 추가 액터입니다. 위젯이 월드에서 존재하려면 작은 액터가 필요하다고 AI가 스스로 판단해서 추가한 것입니다.
컨트롤러에서 컴파일 오류가 있었습니다. 변수 하나의 타입이 오래된 것이었습니다. AI는 이를 확인하고 그래프의 해당 부분을 문제없이 다시 만든 뒤 다시 컴파일했습니다.

컨트롤러 그래프: 가장 가까운 더미를 찾고, 데미지를 굴려서 적용한 뒤, 숫자를 스폰합니다.
숫자로는 드러나지 않았던 버그
G를 처음 누르면 정상 작동합니다. 데미지 22, 체력은 100에서 78로, 숫자가 떠오릅니다. 그런데 AI가 스크린샷을 살펴보다가 숫자로는 드러나지 않았던 문제를 발견합니다. 더미의 몸통이 루트가 되어 버려서 몸통은 반쯤 땅에 묻히고 머리는 그 위에 떠 있었습니다. AI는 더미의 루트를 다시 잡고 전체 테스트를 처음부터 다시 실행했습니다. AI에게 화면을 보게 하는 것이 좋은 이유입니다.
리포트

모든 검사가 통과했으며, 키와 색상, 스크린샷에 대한 메모가 함께 있습니다.
리포트에는 모든 검사를 담은 표가 있습니다.
- 다섯 번 눌러 다섯 번 타격했습니다. 색상은 흰색, 흰색, 금색, 흰색, 금색입니다.
- 체력은 100, 83, 69, 45, 29, 6입니다.
- 사거리 밖인 667 유닛 거리의 더미는 영향을 받지 않았습니다.
- 체력이 0이 된 더미는 쓰러지고, 마지막 타격 후 약 1초 뒤에 제거됩니다.
- 숫자는 0.8초가 끝나기 직전에 101 유닛만큼 올라가 있습니다.
예상하지 못했을 수 있는 사항도 알려 줍니다.
- G 키는 키 이벤트 대신 매 프레임 확인합니다. AI가 레거시 키 이벤트를 다룰 수 있는 도구 핸들을 찾지 못했기 때문입니다. 플레이에서는 똑같이 동작하며, 원한다면 Enhanced Input 액션으로 바꿔 달라고 요청할 수 있습니다.
- 쓰러지는 중인 더미는 건너뛰므로, 다음 타격은 그다음으로 가까운 더미에 들어갑니다.
- AI는 금색 숫자를 화면에서 캡처하지 못했으므로, 느낌표와 더 큰 크기는 그래프로만 확인했습니다.
- 최종 실행에서는 더미의 타격 이벤트를 데미지 100으로 직접 호출해서 처치를 일으켰습니다. 이전 실행에서는 G 입력만으로 더미를 처치했고, 쓰러지고 제거되는 과정은 같았습니다.
떠오르는 데미지 숫자의 작동 원리, 쉽게 설명하면
G를 누르면 컨트롤러가 더미들을 순회하면서 사거리 안에서 가장 가까운 더미를 고릅니다. 최솟값과 최댓값 사이에서 무작위 숫자를 뽑아 더미에게 이만큼의 피해를 입으라고 알립니다. 더미는 그 값을 자신의 체력에서 뺍니다.
그런 다음 컨트롤러는 더미의 머리 위에 작은 숫자 액터를 스폰하고 데미지 값을 전달합니다. 데미지가 치명타 기준값 이상이면 텍스트는 금색에 더 크고 느낌표가 붙습니다. 숫자 액터에는 Timeline이 있습니다. 0.8초 동안 상승 높이만큼 위로 움직이면서 불투명도가 1에서 0으로 내려갑니다. 그러고 나서 스스로를 제거합니다. 데미지 범위, 기준값, 상승 높이가 변수이므로, 숫자 네 개만 바꿔서 차분한 숫자나 화려한 아케이드풍 숫자를 만들 수 있습니다.
확장 아이디어
- 화염 데미지와 회복에 서로 다른 색상 사용하기.
- 숫자가 서로 겹쳐 쌓이지 않도록 좌우로 조금씩 흐르듯 움직이게 하기.
- 치명타일 때 더 높은 음의 타격음.
데미지 숫자 프롬프트를 위한 네 가지 팁
- 데미지 범위와 치명타 기준값을 숫자로 지정하세요.
- 모양은 말로 설명하세요. 색상, 크기, 기호입니다.
- 숫자가 얼마나 높이, 얼마나 오래 떠오르는지 적으세요.
- 값만이 아니라 스크린샷도 살펴보도록 AI에게 요청하세요.
자주 묻는 질문
Unreal Engine 5에서 떠오르는 데미지 숫자는 어떻게 만드나요?
타격할 때마다 대상 위에 텍스트 위젯이 있는 작은 액터를 스폰하세요. Timeline으로 위로 움직이며 흐려지게 한 다음 제거합니다. 색상은 데미지가 치명타 기준값에 이르렀는지에 따라 고르세요.
치명타를 다르게 보이게 하려면 어떻게 하나요?
데미지를 치명타 기준값과 비교하세요. 기준값 이상이면 금색, 더 큰 크기, 느낌표를 사용합니다.
AI는 왜 더미의 루트를 다시 잡았나요?
스크린샷에서 더미의 몸통이 반쯤 땅에 묻히고 머리가 떠 있었기 때문입니다. 몸통이 Blueprint의 루트가 되어 버린 것이 원인이었습니다. AI는 제대로 된 루트를 추가하고 테스트를 다시 실행했습니다.
프로젝트에서 직접 사용해 보세요
Ultimate Engine CoPilot으로 무엇을 만들 수 있는지 제품 페이지에서 확인하거나, Fab에서 받아 보세요. AI Blueprint 생성기가 어떻게 작동하는지 확인해 보세요.
이 시리즈의 다른 빌드: Unreal Engine 근접 전투, Unreal Engine 원거리 무기, 그리고 Unreal Engine 폭발 배럴.