2026/07 5

TIL - 101

인벤토리(WBP_InventoryPanel / InventoryPanelWidget) 작업1. 장비 슬롯 버튼 툴팁이 마우스에 붙어 안 사라지던 문제위치: NativeTick()원인: 툴팁 강제 닫기 안전장치가 그리드만 검사 → 슬롯 버튼 호버 중 매 틱 CloseToolTip()이 불려 Slate 상태머신이 꼬임.변경: 조건을 그리드 호버 || 슬롯 버튼 호버 통합으로 확장. 두 영역 어디에도 호버가 없을 때만 CloseToolTip() 호출.Button_SlotHead/Weapon/Chest/Hands_L/Hands_R/Legs/Feet를 IsWidgetOrDescendantHovered로 검사(null 안전).2. 장비 교체 확인 창이 뜰 때 그리드 툴팁 잔상 제거위치: ShowWeaponSwapC..

TIL - 100

Manager_Interactor "Accessed None: OwnerController" 크래시원인OwnerController는 비복제 + 컴포넌트 BeginPlay에서만 캐싱됨.서버→클라 RPC Client_Update_PointOfInterests가 그 BeginPlay보다 먼저 도착하면 None을 읽어 크래시 → 초기화 순서 레이스(코옵/조인·레벨 시작 시).플러그인 버그 아님. 컴포넌트 위치·설정은 정상.수정 (플러그인 미변경)프로젝트 PC ARetrievePlayerController의 PostInitializeComponents(BeginPlay/RPC보다 먼저 실행)에서 리플렉션으로 OwnerController를 미리 세팅해 레이스 창 제거.RetrievePlayerController.h..

TIL - 99

루멘(Lumen) 이슈 정리1. 쉬핑 패키징에서 루멘이 플레이어를 못 따라옴증상: PIE는 정상, 쉬핑 빌드에서 특정 구역에서 거의 못 따라옴 (적 AI도 특정 구역 동일)원인: 레벨 RecastNavMesh의 Runtime Generation이 Static이었음.프로젝트는 bGenerateNavigationOnlyAroundNavigationInvokers=True (플레이어 인보커 주변만 런타임 네비메시 생성) 사용.이 방식은 RuntimeGeneration = Dynamic이어야 동작. Static이면 런타임 생성이 안 돼 네비메시 구멍 → MoveToActor 실패 → 루멘은 2초마다 텔레포트 복구로만 붙음.PIE는 에디터가 네비메시를 항상 갖고 있어 문제가 가려졌던 것.수정: RecastNavM..

TIL - 98

BGM 시스템개요상황에 따라 BGM을 자동 전환하는 시스템. 세션 상태(메뉴/게임/결과), 전투 여부, 지역(존)에 따라트랙을 고르고, 두 오디오 슬롯을 크로스페이드로 전환한다. 각 트랙은 개별 볼륨 배수를 가진다.우선순위: 세션 상태(메뉴/결과) > 지역(존) > 전투 > 기본구성 요소FRetrieveMusicTrack: 사운드(TSoftObjectPtr) + 볼륨 배수(0~2). 전역 설정·존 볼륨 공용.URetrieveMusicSettings (UDeveloperSettings): Project Settings > Retrieve > Retrieve Music.MenuBGM / DefaultBGM / CombatBGM / ResultBGM, CrossfadeDuration, LoopGapSecond..

TIL - 97

BGM 시스템 (기본 / 전투 / 성 지역)개요배경음악을 상황에 따라 자동 전환하는 시스템. 우선순위는 성 지역 > 전투 > 기본이며,두 개의 오디오 슬롯을 크로스페이드해 부드럽게 전환한다.구성 요소URetrieveMusicSettings (UDeveloperSettings): Project Settings에서 기본/전투 BGM 에셋과 크로스페이드 시간 지정.URetrieveMusicSubsystem (UWorldSubsystem): 재생/전환/전투 판정의 중심. 슬롯 A/B 크로스페이드.ARetrieveMusicZoneVolume (AActor + UBoxComponent): 성 구역처럼 특정 영역 전용 BGM을 재생하는 볼륨.동작 규칙성 지역(존): 볼륨 안에 있으면 전투 여부와 무관하게 ZoneBG..