Arknights EP - [Confront]
Categories
Tags
660 words
3 minutes
[UE5/Part1] 1. UE C++ 환경 설정
“이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해” 학습 내용을 정리한 강의 노트입니다.
옵시디언에 정리한 마크다운 문서라 블로그 마크다운 양식에 일부 맞지 않을 수 있습니다.강의 시작 전, 언리얼과 VS세팅에 관한 내용 정리입니다.
강의 목표
- 언리얼 C++ 프로그래밍을 위한 개발 환경 설정
- 앞으로 강의에 사용할 프로그래밍 환경 구성 학습
개발 환경 설정
Visual Studio 설정
- Visual Studio
- UE 5.7.2
- 디버깅을 위한 에디터 심볼 (현재는 필수 x)
- Rider가 VS보다 빠르다고 한다. (디버깅에는 VS가 유리)
- Development Editor 좌측쯤을 우클릭해서 common으로 변경, 해당 부분 너비를 늘려준다.
- 언리얼 새 프로젝트 -> Blank -> 이름은 “HelloUnreal” 에 C++로 생성
- C++ 매크로 자동 들여쓰기를 방지하기 위해 visualcommander와 ue4vstool 설치
- (언리얼4 기준. 필수 아닌듯)
- https://vlasovstudio.com/visual-commander/
언리얼 클래스 추가
- tools -> add c++ class 로 클래스를 추가하자.
생성 후, VS로 가보면 Games/HelloUnreal에 MyGameInstance.cpp와MyGameInstance.h가 생겨있다.
언리얼 Maps 끄기
- 게임을 시작할때 오픈월드 맵과 같은 연산은 아직 불필요하다.
- 아래와 같이 전부 Clear 해서 날려주자.

언리얼 Game Instance Class (싱글톤)

- 위 사진과 같이 Game Instance Class를 우리가 만든 MyGameInstance로 변경
언리얼 코드 컴파일 방법
- 헤더 파일에 변경이 발생 - 에디터를 끄고 비주얼 스튜디오에서 컴파일
- 소스 파일에만 변경이 발생 - 라이브 코딩으로 컴파일 (ctrl + alt + F11)
GameInstance 클래스
Init() 원형

헤더 선언
- public 으로 virtual void Init() override
- 오버라이딩 해주자.

구현
- 먼저
Super키워드를 반드시 사용해서 부모 클래스 로직을 실행한다. - 그 후,
UE_LOG()로직 찍는다. - 이때
TEXT()매크로를 이용해야 한글과 같은 2byte 문자를 사용할때 문제가 안생긴다.
결과
- 아래와 같이 LogTemp: 에 로그가 찍힌걸 볼 수 있다.

정리
“Hello Unreal!” 로그를 출력하기까지의 과정은 다음과 같았다.
- 언리얼 엔진 설치 & 프로그래밍 환경 구축
- 언리얼 에디터 클래스 추가
- 언리얼 C++ 클래스 상속 & 오버라이딩
- 언리얼 엔진 문자열 처리 :
TEXT()매크로 GameInstance클래스 적용 & 로그 확인

