본문 바로가기

언리얼C++게임개발/01.개발환경설정

언리얼 C++ 개발 준비하기

언리얼 블루프린트를 배우다 C++로 한번 배우고 싶어졌다. 블루프린트가 그닥 효율적이지 않은것 같다.

우선 Visual Studio 2022가 설치되어 있어야 한다.

새 Visual Studio 설치 옵션

Visual Studio 를 처음 설치하는 경우, 다음 옵션을 활성화해야 합니다.

Visual Studio Workloads

VS를 사용한 언리얼 엔진 개발 시 다음 Workloads 옵션을 설치해야 합니다.

  • .NET desktop development  (언리얼에서 자동으로 깔아주었습니다. 안깔렸으면 설치가 필요한듯)
  • Desktop development with C++
  • Universal Windows Platform development
  • Game development with C++

C++ 툴

C++ 툴을 Visual Studio 설치에 추가하려면, Workloads 아래 Game development with C++ 와 다음 옵션을 선택합니다.

  • C++ profiling tools
  • C++ AddressSanitizer
  • Windows 10 SDK (10.0.18362 or Newer)
  • Unreal Engine installer (전 이게 안 깔려서 좀 헤맸습니다. 설치후 잘 동작하는 듯)
  •  
  1.  

권장 세팅

다음은 언리얼 엔진 4 에서 Visual Studio 를 사용하는 개발자에게 권장되는 세팅입니다.

솔루션 구성의 드롭다운 메뉴 폭 늘리기

  1. 툴바에 우클릭하면 나타나는 메뉴 하단의 Customize 를 선택합니다.
  2. Commands 탭을 클릭합니다.
  3. Toolbar 동글 버튼을 클릭합니다.
  4. Toolbar 옆 드롭다운에서 Standard 를 선택합니다.
  5. Preview 목록에서 Solution Configurations 컨트롤을 선택합니다.
  6. 오른쪽의 Modify Selection 을 선택합니다.
  7. Width  200 으로 설정합니다. OK (확인)을 클릭합니다.
  8. Close 를 클릭합니다. 툴바가 즉시 업데이트될 것입니다.

솔루션 플랫폼 드롭다운 추가

  1. Standard 툴바에서 가장 오른쪽 버튼을 찾습니다 (마우스 커서를 올리면 Standard Toolbar Options 라고 표시됩니다). 
  2. 드롭다운 버튼을 클릭하고 Add or Remove Buttons 을 선택한 뒤 Solution Platforms 을 클릭하면 메뉴가 툴바에 추가됩니다.

오류 목록 창 끄기

일반적으로 Error List (오류 목록) 창은 코드에 오류가 있으면 자동으로 뜹니다. 하지만 언리얼 엔진에서 사용할 때는 오류 목록 창에 잘못된 오류 정보가 표시될 수 있습니다. 오류 목록 창을 비활성화하고 언리얼 엔진 출력 창의 실제 코드 오류를 확인하는 것이 가장 좋습니다. 다음 단계는 오류 목록 창을 끄는 방법을 보여줍니다.

  1. 오류 목록 창이 열려 있다면 닫습니다.
  2. Tools 메뉴에서 Options 대화창을 엽니다.
  3. Projects and Solutions 를 선택하고 Always show Error List if build finishes with error 체크를 해제합니다.
  4. OK 를 클릭합니다.

다음은 유용한 기타 구성 설정입니다.

  • Show Inactive Blocks 를 끕니다. 끄지 않으면 텍스트 에디터에 너무 많은 코드 청크가 회색으로 표시될 수 있습니다. 이 설정은 Tools > Options > Text Editor > C/C++ > View 에서 끕니다.
  • Disable External Dependencies Folders 를 true 로 설정하면 Solution Explorer 에서 불필요한 폴더를 숨길 수 있습니다. 이 옵션은 Tools > Options > Text Editor > C/C++ > Advanced 에서 찾을 수 있습니다.
  • Edit & Continue 기능이 필요 없으면 끕니다. Tools > Options > Debugging > Edit and Continue 입니다.
  • IntelliSense 를 켭니다. Intellisense, 라이브 오류, 구불구불한 선 섹션을 참고하세요.

Visual Assist X 사용자

Visual Assist X 가 설치된 경우:

  • Format After Paste 를 끕니다. VAssistX > Visual Assist X Options > Advanced > Corrections 에서 변경할 수 있습니다.
  • 이 옵션을 끄지 않으면, Visual Assist X 가 소스 코드 형식을 자동 결정합니다. 형식이 잘못될 수 있습니다.

Intellisense, 라이브 오류, 구불구불한 선

이제 UE4 프로젝트에 IntelliSense 가 정상 지원되며, 라이브 오류 목록과 구불구불한 선(squiggle) 표시 기능이 포함됩니다. 활성화 방법은 다음과 같습니다.

IntelliSense 는 C++ 를 입력하면 다시 컴파일합니다. VAX 의 문법 검사보다 훨씬 강력한데, 전체 C++ 컴파일러를 사용해서 모든 코드 행을 검증하기 때문입니다. 워크플로가 극적으로 빨라집니다.

구불구불한 선과 함께, 확인 중인 파일에 대한 오류 목록에 IntelliSense 오류도 보입니다. 이 기능은 오류 목록의 우클릭 메뉴 에서 켜고 끌 수 있습니다.

구불구불한 선의 경우 UE4 프로젝트에 작동하지 않아 이미 비활성화했을 수도 있습니다. C/C++ > Advanced 를 클릭해서 아래와 같이 설정되었는지 확인하세요.

C++ 파일을 열 때, 아래와 같은 아이콘이 표시되면 IntelliSense 컴파일러 작동 중임을 나타냅니다.

구현 세부 사항

  • 코드를 편집할 때 구불구불한 선이 나타나는 데 몇 초 정도 걸릴 수 있습니다. include 파일이 많고, IntelliSense 가 현재 PCH 를 사용하지 않기 때문입니다.
  • 가끔 "잘못 탐지된" (false positive) IntelliSense 오류가 보일 수 있습니다. 몇 가지 이유가 있을 수 있습니다.
    • IntelliSense 컴파일러(EDG)는 MSVC 컴파일러보다 엄격합니다.
    • 일부 IntelliSense 에 대한 #defines 구성이 일반 빌드와 다르게 구성되어 있습니다.
    • IntelliSense 가 컴파일하는 C++ 는 항상 32 비트로 간주됩니다.
  • 꼭 필요한 경우 코드를 #ifdef **INTELLISENSE** 로 감싸면 구불구불한 선을 없앨 수 있습니다.
  • IntelliSense 오류 문구는 VC++ 컴파일러 오류와 약간 다릅니다.
  • 헤더 파일의 구불구불한 선은 헤더를 포함하는 알려진 .cpp 에 대해 헤더를 컴파일하여 작동합니다. 가끔 IntelliSense 가 오작동하여 헤더에 구불구불한 선이 보일 수 있습니다.
  • 반응 속도를 높이려면 Max Cached Translation Units 세팅을 높여보면 됩니다. 그러나 메모리 사용량이 늘어납니다.
  • 일부 C++ 파일은 아직 IntelliSense 와 호환되지 않습니다.
  • 언리얼 빌드 툴에 -IntelliSense 옵션이 새로 생겼습니다.
    • 모든 프로젝트 파일에 IntelliSense 프로퍼티 시트를 생성하는 옵션입니다.
    • 새 모듈을 추가했거나 프로젝트 인클루드가 변경된 경우에만 다시 실행해 주면 됩니다.

UnrealVS 익스텐션

Visual Studio 용 UnrealVS 익스텐션은 언리얼 엔진 4 로 개발할 때 자주 사용하는 동작을 쉽게 사용할 수 있습니다. 그 익스텐션을 설치해서 프로젝트에 사용하는 법을 설명합니다.

포함된 기능은 다음과 같습니다.

  • 시작 프로젝트를 설정.
  • 시작 프로젝트 빌드를 위한 바인딩가능 명령
  • 명령줄 인수 설정
  • 프로젝트 일괄 빌드
  • 프로젝트 빠른 빌드 메뉴

UnrealVS 익스텐션은 Visual Studio Express 에디션에서 작동하지 않습니다. Visual Studio Community 및 Professional 에디션에서만 호환됩니다.

#언리얼 #C++ #VisualStudio설정