본문 바로가기

Unreal7

모듈 만들기 외부 모듈을 만들어야하는 경우가 있다. 예를 들어 서브 모듈로서 관리해야되는 경우라던지... 몇가지 알아야하는게 있는데 일단 서브모듈 자체를 위해서는 총 세가지 *.Build.cs, 모듈의 *.h, 모듈의 *.cpp 가 필요하다. 첫번째로 모듈의 헤더와 구현부를 정의를 해준다. 구현부에서 IMPLEMENT_GAME_MODULE을 사용한게 눈에 띄인다. 하나의 프로젝트에서 메인이 될녀석은 위가 아니라 IMPLEMENT_PRIMARY_GAME_MODULE 로 선언해주고 하나의 서브 모듈로 관리될 녀석은 위와 같이 한다. 개인적으로 .h 파일에 들어가있는 ModuleManager.h를 왜 인클루드하는가에 대한 의문을 갖고 검색해봤는데 만족스러운 답은 얻지 못했다. 판단하건데 모듈로서 관리할 수 있도록하고 모듈.. 2019. 9. 5.
로깅을 위한 공용 매크로 설정 본문에 들어가기에 앞서... 언리얼에서 문자열을 정의할 때에는 모든 플랫폼에서 2바이트 문자열을 지원하는 TEXT 매크로를 사용하는 것이 좋다고합니다. ex) TEXT("Hello world"); 또한 문자열을 관리하는 FString으로 선언된 변수에서 문자열 정보를 얻어오려면 반드시 * 연산자를 사용해야하는데 예를 들자면 FString::Printf(TEXT("Actor Name : %s "), *GetName()); 이러한 형식으로 되어야 한다는 것. 이는 언리얼 엔진만의 방식이라고 소개되어집니다. 로그 카테고리 생성하는 방법 언리얼 엔진은 로그 카테고리를 선언하기 위해 두 개의 매크로를 제공하는데, 하나는 선언부 하나는 구현부에 사용됩니다. 모듈명으로 된 헤더 파일과 소스 파일에 매크로를 각각 선언.. 2019. 8. 29.
언리얼 모듈 만들기 (이 포스팅은 언리얼 4.19.2 기준으로 작성되었습니다.) (사진은 클릭하면 크게 볼 수 있습니다.) 언리얼 엔진 공식 카페에 들어가보면 수많은 좋은 강의를 접할 수 있는데 그중 이득우님의 강의를 보면서 열심히 따라가던 중... 모듈 제작에서 막혔다... 어...?? 똑같이 따라한 것 같은데 왜지?! 일단 언리얼 빌드 시스템은 모듈 시스템으로서 구성되어 있습니다. 언리얼의 모듈시스템이란 Source 폴더 아래의 모듈 이름의 폴더를 갖으며 이 폴더 아래에 소스코드들이 자동으로 빌드가 됩니다. 하나의 Build.cs파일이 필요로 하며 이 파일에는 이 모듈이 참조하는 모듈들 설정, 빌드 관련 옵션에 관한 정보가 담겨집니다. 그리고 프로젝트 실행시에 포함되는 모듈은 Target.cs 파일에 설정되어집니다. 어.. 2018. 7. 8.
C++ 11 및 최신 언어 문법. 참조는 http://api.unrealengine.com/KOR/Programming/Development/CodingStandard/index.html#%ED%81%B4%EB%9E%98%EC%8A%A4%EC%B2%B4%EA%B3%84 여기서 하였고 C++ 11 및 최신 언어 문법을 지원한다고 합니다. static_assert 컴파일 시간 어서트가 필요한 경우 사용한다고 하는데 무슨말인지 몰라 조사해봤습니다. 느끼기에는 디버깅용 기능이고 실행중에 어떤 조건을 검색해보고 그 조건이 충족하지 못하면 브레이크를 거는 것! 이 Static_Assert의 장점은 컴파일 되는 과정에서 잡아준다는 것! (기존의 assert는 프로그램을 실행시켜야 알 수 있었다고 한다.) 기본 폼은 static_assert((조건식).. 2018. 7. 5.