unrealengine 4

[UE5] 인벤토리 시스템 - 인벤토리 UI

프로젝트 개요여러 명이 하나의 스포츠 영상을 시청하면서 특정 대상(스포츠 팀 / 선수)을 응원하는 플랫폼을 제공하는 메타버스 컨텐츠를 제작하는 프로젝트인벤토리의 필요성스포츠 경기를 관람할 때 다이나믹한 응원을 위해 폭죽을 터트리고 응원봉을 흔들듯 여러 아이템이 있으면 영상을 시청하는데 재미 요소를 더할 수 있을 것이라 판단했고, 여러 아이템을 자신이 가진 포인트로 구매하고 구매한 아이템 소지하는 기능이 필요하다 판단하여 인벤토리를 구현하게 되었다.구현 개요인벤토리 UI는 플레이어가 갖고 있는 InventoryComponent를 참조해 InventoryComponent의 Invetory 배열이 변경될 때마다 UI를 갱신한다. 키보드 입력 I를 통해 인벤토리 UI를 팝업시킬 수 있다. 인벤토리 UI를 통해 ..

SIN 2024.11.04

[UE5] 인벤토리 시스템 - 인벤토리 기본 구조

프로젝트 개요여러 명이 하나의 스포츠 영상을 시청하면서 특정 대상(스포츠 팀 / 선수)을 응원하는 플랫폼을 제공하는 메타버스 컨텐츠를 제작하는 프로젝트인벤토리의 필요성스포츠 경기를 관람할 때 다이나믹한 응원을 위해 폭죽을 터트리고 응원봉을 흔들듯 여러 아이템이 있으면 영상을 시청하는데 재미 요소를 더할 수 있을 것이라 판단했고, 여러 아이템을 자신이 가진 포인트로 구매하고 구매한 아이템을 관리 기능이 필요하다 판단하여 인벤토리를 구현하게 되었다.구현 개요인벤토리는 배열로 구현하고자 하였고 하나의 인벤토리의 슬롯에 대한 구조체와 아이템의 정보에 대한 구조체를 만들고아이템 정보를 하나의 Row로 하는 DataTable을 만들어 구매, 사용, 획득 간에 DataTable을 참조하여 실제 아이템 오브젝트를 인벤..

SIN 2024.11.01

[UE5] 플레이어 공격의 충돌 처리 - ( ShapeComponent Sweep ) [2]

최종 결과 영상베지어 곡선베지어 곡선은, 조절점을 사용해 정의하는, 특별한 형태의 곡선이다. 2차 베지어 곡선은 시작점, 중간점, 끝점으로 만들어지는 곡선으로, 시작에서 중간점까지, 중간에서 끝점까지의 1차 베지어 곡선을 구한다. 시간 T에 대한 각각의 베지어 곡선의 지점 별로 위 그림과 같이 베지어 곡선을 한 번 더 구함으로써 곡선이 만들어지게 된다.이 베지어 곡선을 이용해 이전 프레임과 현재 프레임의 위치를 직선이 아닌 곡선 이동 하도록 수정하고자 한다.우선 이전 프레임과 현재 프레임의 중간 지점을 구해서 디버그로 찍어보았다. 이 중간점을 기준으로 베지어 곡선을 만들어도, 세 점이 일직선 상에 있기 때문에 곡선이 만들어지지 않는다.외적으로 제어점 구하기1. 이전 프레임 위치에서 현재 프레임 위치까지의..

JIN 2024.10.31

[UE5] 플레이어 공격의 충돌 처리 ( ShapeComponent Sweep ) [1]

플레이어 타격 충돌 처리전투 시스템에서 타격 판정은 매우 중요한 요소이다. 정교하게 타격 판정이 이루어 질 수록 타격 감각을 세밀하게 구현할 수 있다.특히 속도가 빠른 애니메이션의 경우, 프레임 단위로 충돌 체크를 하면 타격 판정에 빈 구간이 눈에 띄게 나타난다.기본 선형 보간void AM4_PlayerWeaponSword::Tick(float DeltaTime){ Super::Tick(DeltaTime); FVector CapsuleLocation = CapsuleComp->GetComponentLocation(); FVector CurrentWeaponLoc = CapsuleComp->GetComponentLocation(); float CapsuleHalfHeight = Cap..

JIN 2024.10.29