전체 글 115

[UE4] 스마트 포인터 (Smart Pointer)

언리얼 스마트 포인터 라이브러리는 메모리 할당과 추적의 부담을 해소해주도록 설계된 C++11 스마트 포인터들의 커스텀 구현입니다. 이 구현에는 업계 표준인 Shared Pointers(공유포인터), Weak Pointers(약 포인터), Unique Pointers(유니크 포인터)가 포함되어 있습니다. 또한 null이 불가능한 Non-Nullable Shared Pointer와 같은 역할을 하는 Shared References 도 추가되었습니다. 단, 언리얼 오브젝트는 게임 코드에 더 최적화된 별도의 메모리 추적 시스템을 사용하기 때문에 이러한 클래스들은 "UObject"시스템에는 사용할 수 없습니다. SmartPointer Type 스마트 포인터들은 갖고 있거나 참조하는 오브젝트의 생명 주기에 영향을 ..

UE4 2023.02.24
[UE4] Projectile Movement Component

What is ProjectileMovementComponent? ProjectileMovementComponent를 앞으로 PMC라고 칭하겠습니다. PMC는 tick이 돌아가는 동안에 다른 컴포넌트의 위치를 업데이트해주는 컴포넌트입니다. 충격이 가해진 이후 바운스되는 부분이나 특정 타겟을 향해 유도미사일처럼 이동하는 기능 등을 지원합니다. 보통 움직이는 컴포넌트는 PMC를 소유하고 있는 액터의 루트 컴포넌트이지만, 다른 컴포넌트를 선택할 수도 있습니다. (SetUpdatedComponent()를 사용하세요.) 만약 업데이트되는 컴포넌트가 물리를 시뮬레이팅중이라면(Simulating Physics), 오직 Initial launch parameters(발사 초기화 인자들) 만이 발사체(projectile..

UE4 2023.02.14
[UE4] 게임플레이 프레임워크

플레이중인 게임의 정보를 처리하는 클래스는 크게 GameMode와 GameState 둘로 나뉘어진다. GameMode 게임 프레임워크의 바탕은 GameMode이다. GameMode에서는 게임의 규칙을 설정한다. 플레이어 스폰 처리도 담당한다. 보통 플레이 도중 자주 바뀌는 데이터는 없어야 하며, 서버에만 존재하므로 클라이언트에서 알아야 하는 휘발성 데이터는 절대 넣어선 안된다. 가장 제약이 없다는 게임일지라도 토대가 되는 규칙들이 존재하며, 이러한 규칙들이 게임모드를 이룬다. 가장 기본적인 수준에서 간단하게 예를들어 보자면 다음과같다. - 존재하는 플레이어와 관람자의 수, 허용된 플레이어와 관람자의 최대 인원. - 플레이어가 게임에 들어오는 방식, 스폰 위치 선택 규칙과 기타 스폰/리스폰 동작 포함 가능..

UE4 2023.01.18
[졸작] 기능 구현 리스트

# 졸업작품 'Strangers'는 꼭 필요한 경우를 제외하고 되도록 C++로 구현하였습니다. #깃허브 링크 : https://github.com/Kimsol21/UE_Strangers GitHub - Kimsol21/UE_Strangers Contribute to Kimsol21/UE_Strangers development by creating an account on GitHub. github.com #유튜브 링크 : https://youtu.be/NrvFqwTMVmA 0. 플레이어의 입력과 기능 바인딩 WASD(이동), 마우스 휠(카메라 Zoom), 스페이스바(점프), 마우스 클릭(공격, 콤보공격)을 입력설정에서 추가해주고, PlayerController에서 이를 바인딩 ..