언리얼 엔진 공부하기#2 [UE5]

신지한·2024년 1월 9일
0

개발노트

목록 보기
7/15
post-thumbnail

📢 개발노트에 앞서서

본 개발노트는 혼자서 언리얼 게임개발 독학하는 과정에서
공부한 내용들을 기록&공유하는 게시글이며
부족한점이 있을 수 있어 참고해서 봐주시면 감사하겠습니다

❗ 본 게시글은 위 서적의 내용을 정리 및 실습한 게시글로 모든 내용은 대부분의 내용은 책이 출처입니다


📚 스터디 내용

2장 언리얼 엔진 엔진을 활용한 작업

  • 기술적 요구 사항
  • 빈 C++ 프로젝트를 생성하고 설정하기
  • 언리얼 엔진의 Content 폴더 구조
  • 비주얼 스튜디오 솔루션을 활용해 작업하기
  • 필요한 애셋 임포트하기
  • 언리얼 게임 모드 클래스
  • 레벨과 레벨 블루프린트 이해하기
  • 애니메이션 활용하기

📖 공부 내용

공부 자료를 업로드하기에 실습자료의 permission이 문제가 되어 프로젝트 업로드가 어려워
따로 공부내용을 블로그에 작성하기로 하였음

언리얼 c++ 프로젝트를 생성하면서 언리얼 프로젝트를 이루는 구조에 대해서 학습
애셋 임포트 기능 및 스켈레톤 조정 학습

언리얼에서 기본적으로 제공되는 클래스인 게임 모드 클래스에 대해서 학습함
게임모드의 클래스에는

  • Game Session Class
  • Game State Class
  • Player Controller Class
  • Player State Class
  • HUD Class
  • Default Pawn Class
  • Spectator Class
  • Replay Spectator Player Controller
  • Server Stat Replicator Class

들이 존재하고 이번 실습에선 Game Mode Class, Default Pawn Class, Player Controller Class에 대해서 직접 생성하고 문자열 출력까지 실습하였음

실습에서 애셋으로 임포트한 애니메이션을 폰에 적용해보는 실습을 하였음
애니메이션 블루프린트를 사용하여 로직을 정의하였음

애니메이션 블루프린트에서는 이벤트 그래프와 애님 그래프를 통해 설정을 하였고
애님 그래프에서는 상태머신을 생성함으로써 애니메이션의 트랜지션 스테이트를 관리하였음

실습 결과

📌 공부 후기

이번 2장에서의 공부 내용으로는 프로젝트를 구성하는 요소들과 애니메이션 실습 등을 배웠다
이번 내용은 1장에 비해 좀더 심화적인 내용을 다루는 느낌이 있었다
아직 C++을 사용하여 제대로 실습하지는 않았지만 프로젝트의 구조를 설명하면서
기초 설명 기반을 다져나가는 느낌이 있었다

언리얼에서 기본적으로 제공하는 게임모드 클래스의 구성을 보고 기본적으로 게임을 제작하는데에 있어 제공되는 클래스들이 잘 구성되어 있다는 느낌을 받았다

확실히 책을 통해 내용을 세세하게 봄으로써 이런 내용도 알 수 있었던거 같다
유니티로 무작정 개발을 위해 구글링하면서 하는것과는 다르게 세부적인 내용을 알 수 있었다
유니티도 분명 개발에 있어 많은 기능을 지원하기에 이러한 기능들이 많을텐데 내가 세부적으로 알지 못하다보니 나중에 기회가 된다면 유니티에 관해서도 자세하게 공부를 할 수 있을 기회가 있으면 한다

실습 과정에서 어려움을 몇가지 적자면

우선 기존에 VS 2019를 사용했는데 저번 1장실습때는 어떻게 됐는지 모르겠지만 계속 오류가 발생해
VS 2022버전으로 업그레이드 해서 사용했다

오류 내용은 다음과 같았다

Running C:/Program Files/Epic Games/UE_5.3/Engine/Build/BatchFiles/Build.bat  -projectfiles -project="C:/Users/JIHAN/Desktop/개인 개발/GameStudy/UnrealStudy/UnrealStudy/UnrealStudy.uproject" -game -rocket -progress
Using bundled DotNet SDK version: 6.0.302
Running UnrealBuildTool: dotnet "..\..\Engine\Binaries\DotNET\UnrealBuildTool\UnrealBuildTool.dll" -projectfiles -project="C:/Users/JIHAN/Desktop/??? ????GameStudy/UnrealStudy/UnrealStudy/UnrealStudy.uproject" -game -rocket -progress
Log file: C:\Users\JIHAN\AppData\Local\UnrealBuildTool\Log_GPF.txt

Some Platforms were skipped due to invalid SDK setup: IOS, Android, Linux, LinuxArm64.
See the log file for detailed information


Generating VisualStudio project files:
Discovering modules, targets and source code for project...
Visual Studio 2019 does not support .NET 6.0 C# projects, these projects will not be added to the generated solution.
Please generate the Visual Studio 2022 solution if .NET 6.0 C# project support is required.
Microsoft platform targets must be compiled with Visual Studio 2022 17.4 (MSVC 14.34.x) or later for the installed engine. Please update Visual Studio 2022 and ensure no configuration is forcing WindowsTargetRules.Compiler to VisualStudio2019. The current compiler version was detected as: 14.29.30146

이러한 오류가 발생한다면 다양한 방법을 시도해보긴 했지만 VS2022를 사용하니까 해결되는거 같았다

그리고 책 내용에서 확인할 수 있었던 내용중에 실제 프로젝트와 매칭이 안되는 점이 있어서
좀 많이 헤맸던거 같다

책에서 제공되는 GIT에서 정답 프로젝트를 참고하면서 내가 어떤 부분에서 실수를 했는지
하나하나 확인해가면서 결국 실습을 다 완료했고 이 과정에서 어떤 흐름으로 애니메이션이 작동하는지에 대해 공부가 되었던 거 같다
안될때는 요소를 지웠다가 다시 해보는거도 하나의 해결방법이 된단걸 깨달았다

생각보다 책 내용에서 자세히 안알려주는 부분이 있어서 처음에는 이해하는데 조금 애를 먹었지만
혼자 해결해나가는 과정에서 좀더 습득이 잘 된거같다

profile
게임 개발자 지망생

0개의 댓글