분류 전체보기 84

Unreal Character - 캐릭터 공격 판정 트러블슈팅 정리

UE5 공격 판정 트러블슈팅 정리🎯 목표바닥을 공격해도 공격이 취소되지 않아야 합니다.스폰된 엑터(예: 스포너, 몬스터, 벽 등)가 겹쳐 있을 경우에도 모든 충돌 대상을 감지하고 올바르게 판단해야 합니다.🧱 문제 1: 바닥 공격 무시 조건이 있음에도 공격이 취소되는 현상🔎 현상Hit.ImpactNormal.Z > 0.8f 조건으로 바닥을 감지하면 무시하도록 했지만,UE_LOG(LogTemp, Warning, TEXT("바닥 무시: StaticMeshActor_1")); 로그 이후에도"공격 취소" 로그가 출력되며 CancelAttack()이 호출됨.🧨 원인 분석한 번 continue로 무시된 같은 바닥 액터가 이후 로직에서 다시 감지됨.CanBeCut() 또는 인터페이스가 없는 경우 else 문으로..

언리얼 엔진 2025.05.29

Unreal Character - 캐릭터 공격 판정 시스템 구현 정리

✅ 공격 트레이스 방식 개선최종 구현: LineTrace 다중 분할 방식 사용프레임 간 손실을 줄이기 위해 이전 프레임 위치와 현재 프레임 위치를 5단계로 보간하여 추적을 수행합니다. 이는 고속 움직임 시 단일 트레이스로는 놓칠 수 있는 충돌을 보완하며, 전체적인 판정 정확도를 높이면서도 성능 부담은 최소화할 수 있는 절충안입니다.DrawDebugLine, DrawDebugSphere를 통해 디버깅 시각화 가능최종 트레이스 방식 코드 예시void UDW_SwordAttackNotify::NotifyTick(...) { // 중략... // 5단계 보간 루프 const int32 NumSteps = 5; for (int32 i = 0; i (i) / (NumSteps - 1); ..

언리얼 엔진 2025.05.29

Unreal Character - 락온 시스템 구현

개요이번 포스트에서는 언리얼 엔진 5를 활용해 구현한 락온 시스템(Lock-On System) 에 대해 소개합니다. 이 시스템의 목적은 화면 중심에 가장 가까운 적을 자동으로 락온하고, 카메라와 캐릭터가 타겟을 따라가도록 만드는 것입니다. 또한 락온 중에는 전환 키를 통해 우측에 위치한 다음 타겟으로 전환할 수 있고, 언제든지 락온을 해제할 수 있습니다. HUD 위젯을 활용해 시각적 피드백도 제공합니다.✅ 시스템 목표 요약화면 중심에 가까운 적을 자동 락온락온 시 캐릭터와 카메라가 타겟을 따라감락온 중 전환 키로 우측 타겟 순차 전환락온 중 해제 가능UI 위젯을 통한 타겟 마커 표시📁 주요 멤버 변수 (ADW_CharacterBase)bool bIsLockOn = false; ..

언리얼 엔진 2025.05.29

Unreal Engine - 오픈월드 개발 기술스택: World Partition과 PCG

🔎 개요언리얼 엔진 5.5에서는 대규모 오픈월드 개발을 위한 강력한 기능들이 포함되어 있습니다. 특히 World Partition 시스템과 PCG(Procedural Content Generation)는 대규모 맵을 보다 효율적으로 설계하고 관리할 수 있게 해주는 핵심 기술입니다.이 문서에서는 각각의 기술 개념, 장점, 활용 방식에 대해 자세히 정리합니다.🌍 World Partition (월드 파티션)✅ 개념World Partition은 기존의 World Composition 시스템을 대체하는 새로운 오픈월드 관리 시스템입니다. 전체 레벨을 자동으로 일정한 크기의 셀(cell) 단위로 나누는 그리드 기반 구조로 분할하며, 플레이어 위치와 시야에 따라 해당 셀만 스트리밍(로드)합니다.예를 들어, 플레이..

언리얼 엔진 2025.05.21

Unreal UI - 범용 버튼 UI 컴포넌트 구축기

서론게임 개발에서는 반복적으로 사용되는 UI 요소의 재사용성과 커스터마이즈 가능성이 매우 중요합니다. 이번 글에서는 디자이너의 편의성, 런타임 유연성, 성능 최적화를 모두 고려한 범용 C++ 커스텀 버튼 위젯 시스템 구축 과정을 공유합니다. 해당 시스템은 블루프린트와 C++ 간의 경계를 효과적으로 넘나들며, 실시간 디자인 반영과 성능 최적화를 모두 만족합니다.✅ 전체 작업 요약: C++ 커스텀 버튼 위젯 시스템 구축1️⃣ UCustomButtonWidget 클래스 생성부모 클래스: UUserWidget위젯 바인딩: ButtonMain, TextMain기본 틀 구성: 디자이너가 시각적으로 작업할 수 있도록 최소한의 바인딩 요소 구성2️⃣ 핵심 사용자 설정 변수 설계디자이너와 런타임 모두 대응 가능한 구조를..

언리얼 엔진 2025.05.14

Unreal UI - 범용 슬라이더 UI 만들기

🎯 목적범용 슬라이더 UI 는 수치를 직관적으로 조절할 수 있는 범용 설정 UI 컴포넌트입니다. 슬라이더, 텍스트 입력, 버튼을 조합하여 다양한 입력 방식을 지원하며, 재사용성과 디자이너 편의성을 고려한 설계가 특징입니다.📦 구성 요소컴포넌트 기능Text_SettingLabel설정 항목 이름 표시Button_Left, Button_Right 클릭 시 수치 증감Slider_Value슬라이더로 수치 조절TextBox_ValueDisplay수치 표시 및 직접 입력 기능🔧 주요 기능1️⃣ 슬라이더 ↔ 텍스트 연동슬라이더 값 변경 시 UpdateDisplayText() 호출DecimalPlaces에 따라 정수 또는 소수로 자동 처리ToText(Float)의 Maximum Fractional Digits 옵션..

언리얼 엔진 2025.05.12

Unreal UI - 설정 탭 UI 시스템 구성 가이드

🎮 Unreal Engine 5로 만드는 설정 탭 UI 시스템 구성 가이드Unreal Engine 5를 기반으로 게임 내 설정 탭 UI 시스템을 설계하고 구현한 과정을 정리합니다. 탭 버튼을 클릭하면 해당 설정 패널로 전환되는 구조를 Event Dispatcher 기반으로 제작했으며, 향후 사운드/컨트롤/그래픽/카메라 설정 등으로 확장 가능합니다.✅ 작업 개요목표: 사용자가 설정 화면에서 각 탭(컨트롤/카메라/사운드/그래픽)을 선택할 수 있도록 구성방식: WidgetSwitcher와 Event Dispatcher를 이용한 탭 전환 로직 구현🔧 1. 기본 위젯 구조 설계위젯 이름 설명WBP_SettingsRoot전체 UI 루트 위젯DW_WBP_TabSelector탭 버튼 묶음 (이벤트 발생 위젯)WBP..

언리얼 엔진 2025.05.10

Unreal Engine - RPG 전투 상태 관리 시스템 설계 및 초기 구현

🎮 UE5 액션 RPG 전투 상태 관리 시스템 설계 및 초기 구현🧩 개요이번 작업은 언리얼 엔진 5 기반의 액션 RPG 프로젝트에서 전투 시스템의 '상태 관리' 구조를 처음으로 설계하고 테스트한 기록입니다. 다크소울류 전투 흐름을 목표로 하며, enum을 기반으로 한 전투 상태 분리 및 애니메이션 타이밍과의 연동을 중심으로 구성하였습니다.🎯 설계 목표상태 기반 전투 흐름 구현캐릭터의 전투 행동을 명확한 상태로 구분애니메이션 타이밍과 전투 로직을 분리하여 유연한 확장 가능 구조 마련1️⃣ 전투 상태 시스템 구축🔸 ECharacterCombatState 열거형 정의전투 중 캐릭터의 상태를 명확히 구분하기 위해 enum class를 도입했습니다.UENUM(BlueprintType)enum class E..

언리얼 엔진 2025.05.08

Unreal Character - 캐릭터 전투 시스템 정리

🎮 언리얼 엔진 5 캐릭터 전투 시스템 정리📝 소개언리얼 엔진 5로 캐릭터 전투 시스템을 구현하면서 공격, 회피, 패링, 가드 같은 액션들을 어떻게 처리해야 할지 개념이 잡혀 블로그에 정리합니다. 이 문서는 오버랩 및 히트 이벤트, 애니메이션 노티파이, 무적 상태 처리, 패링 시스템 구성 등 주요 전투 로직 구현에 필요한 내용을 담고 있습니다.🚀 충돌 처리: Overlap vs Hit 이벤트🔍 오버랩(Overlap) 이벤트 사용 시적합한 상황:투사체가 물리적으로 멈추지 않고 지나가면서 데미지를 줄 때마법 구슬 등이 적을 통과하며 데미지를 주는 경우검으로 하는 근접 공격에서, 무기가 적과 충돌했는지 감지해 데미지를 주되 물리 반응은 필요 없을 때기술적 조건:콜리전 설정이 "Overlap" 채널로 지..

언리얼 엔진 2025.05.07

Unreal UI #9 - FPS 게임 감도 설정 시스템 구축기

🎮 언리얼 엔진 5.5 - FPS 게임 감도 설정 시스템 구축기FPS 게임을 만들다 보면 필수적으로 추가하게 되는 기능 중 하나가 마우스 감도 설정입니다. 이번 글에서는 Unreal Engine 5.5를 사용해 감도 설정 시스템을 단계별로 구축한 과정을 공유합니다.1. 🎨 옵션 메뉴 UI 위젯 (WBP_OptionsMenu) 제작먼저 옵션 메뉴를 위한 UI 위젯 WBP_OptionsMenu를 새로 만들었습니다.Canvas Panel을 사용해 배경 레이아웃을 잡고,"마우스 감도"라는 텍스트(TextBlock)와 감도 조절용 Slider를 추가했습니다.메뉴를 빠져나갈 수 있도록 "뒤로" 버튼도 배치했습니다.TIP: 위젯 이름을 명확하게 지정하면 후속 작업에서 편합니다.2. ⚙️ 슬라이더 값으로 감도 적용..

언리얼 엔진 2025.04.26