CanvasPanel 밑으로 가있기 때문에 Canvas Panel Slot이 존재한다 여기서 위치를 수정해서 이동시킬 것이다.
finalPos 변수는 달라질 수 있음.
마우스의 위치는 현재 뷰포트 기준으로 가져온다 라이브러리 참고, PlayerController에서 주어지는 마우스 위치는 월드 기준이다.
FVector2D mousePos = UWidgetLayoutLibrary::GetMousePositionOnViewport(GetWorld());
FVector2D viewportSize = UWidgetLayoutLibrary::GetViewportSize(GetWorld());
FVector2D finalPos{ mousePos.X + 38.5f,mousePos.Y + 0.5f };
if (auto canvasSlot = Cast<UCanvasPanelSlot>(CurrentItemSlot->Slot))
canvasSlot->SetPosition(finalPos);
'게임엔진 > Unreal' 카테고리의 다른 글
[Unreal] 애니메이션 이벤트 관련 / Notify 및 NotifyState (0) | 2022.10.17 |
---|---|
[Unreal] UDragDropOperation 클래스를 이용한 인벤토리 슬롯 구현 (0) | 2022.10.03 |
[Unreal] 위젯 관련 함수 오버라이딩 (0) | 2022.09.28 |
[Unreal] UI 마우스 관한 동작 이벤트 설정방법 (0) | 2022.09.08 |
[Unreal] 화면 정중앙 값 구하기 (0) | 2022.09.07 |