전체 글 115

Reflection System 이란?

의미 'Reflection'의 사전적 의미는 반사, 반영으로 Reflective한 프로그래밍은 프로세스가 '자기성찰적' 능력을 발휘할 수 있도록 하는 메커니즘입니다. JAVA, C# 등 많은 언어(주로 스크립트 언어와 같이 높은 수준의 VM 프로그램 언어)에 이러한 Reflection API가 내장되어있고, 이를 사용하면 런타임에 코드를 검사할 수 있습니다. 좀 더 자세히 얘기하자면, Reflection은 런타임에 인스턴스의 데이터 타입 정보를 확인할 수 있는 기능입니다. Reflection은 종종 객체 지향 프로그래밍의 맥락에서 이야기됩니다. 런타임에 Codebase Entities(실체)를 검색하기 위해 Reflection을 사용하는 경우가 많습니다. 각종 언어에서 제공해주는 Reflection AP..

[UE5] Enhanced Input System

언리얼의 Input 시스템 1. 유저가 하드웨어(키보드, 마우스, 패드 등)을 동작시킴. 2. 유저의 인풋과 데이터를 매핑. 3. 인풋 컴포넌트가 제일먼저 인풋 처리가 가능한 액터 확인. 4. 그다음 PlayerController 확인. 5. 레벨 블루프린트 확인. 6. 플레이어가 빙의한 Pawn 확인 7. 위의 3~6 과정을 통해 처리된 인풋을 게임 로직에 반영. 입력을 어디서 처리할 것인가? PlayerInput값은 위에서 설명했던 것처럼 크게 4가지 과정에서 처리 가능합니다. 1. Input 처리가 가능한 Actor 2. PlayerController 3. Level Blueprint 4. Player가 빙의한 Pawn 기존 언리얼 프로젝트 작업들은 모두 PlayerController에서 입력을 처..

UE5 2023.07.07
[UE5] UProject 파일이 제대로 실행되지 않을 때 해결법

1. 먼저 에픽게임즈 런처가 설치되어 있는 폴더를 찾아야 한다. 나의 경우엔 아래 경로로 설정되어있다. C:\Program Files (x86)\Epic Games\Launcher\Engine\Binaries\Win64 2. 해당 폴더로 가면 파란색 아이콘으로 UnrealVersionSelector라는 파일이 있는데 이 파일을 복사해준다. 3. 다음은 실행하고자 하는 언리얼 엔진 버전이 깔려있는 폴더를 찾아야 한다. 나의 경우엔 아래 경로로 설정되어있다. E:\UE_5.1\Engine\Binaries\Win64 그 다음 아까 복사했던 버전셀렉터를 이곳에 붙여넣기 한 후 더블클릭해 실행한다. 4. 그러면 아래 사진처럼 팝업창이 하나 뜰텐데 '예'를 눌러주면 된다. # 또다른 방법(feat. 강사님피셜) 에..

UE5 2023.07.07
[UE5] 언리얼의 핫리로드와 라이브코딩에 대하여

핫 리로딩(Hot Reloading)이란? 에디터가 열려 있는 동안 새 DLL 파일을 컴파일하고 로드하는 과정을 말합니다. 핫 리로드는 가끔씩 잠시 동안 작동하지만 신뢰할 수 없으며 블루프린트가 손상되거나 기타 문제를 자주 발생시킵니다. (자세한 내용은 아래 참조) 그러므로 대부분의 사용자들이 핫 리로딩을 되도록 쓰지 말기를 권장합니다. 즉, 안전하게 컴파일하려면 에디터를 닫는게 좋다는 말입니다. 만약 핫 리로드가 예기치않게 시작되었다면 아무것도 저장하지 말고 편집기를 닫은 다음 IDE에서 빌드를 실행한 후 계속하면 됩니다. 핫 리로드의 장점은 어떠한 내용을 변경할 때마다 IDE에서 컴파일한 다음 에디터를 다시 열 필요가 없다는 것이었습니다. ▶Tip 기본적으로, 핫리로드는 다음과 같은 경우에 시작됩니다..

UE5 2023.07.07
언리얼 프로젝트 폴더관리와 gitignore

저번 수업시간에 간단하게 언리얼 프로젝트를 만들고 깃헙에 올리는 과정을 학교 컴퓨터에서 실습했습니다. 깃헙에 언리얼 프로젝트를 올리는 과정에서 용량관계로 지워도 다시 생성되는, 버전관리를 할 필요가 없는 폴더들을 지우고 올렸습니다. 무슨 폴더들을 지운건지, 왜 특정 폴더들은 지워도 되는건지, 우선 간단히 설명해보겠습니다. 언리얼 프로젝트의 폴더(C++기준) 5.1버전을 기준으로 빈프로젝트 생성시 다음과 같이 11개의 파일 혹은 폴더가 생성됩니다. 핑크색으로 표시된 폴더들이 지우면 안되는 폴더, 노랑색으로 표시된 폴더들이 지워도 되는 폴더입니다. 1. .vs폴더 : 숨김 설정이 되어있는 폴더로, 해당 프로젝트를 VS에서 실행할 때 초기화 및 데이터 구조 등을 기록하여 추후 솔루션 파일을 실행할 때 불러오기..