INTSourceChangelist:3467293 Availability:Public Title:UE4 용 Visual Studio 셋업하기 Description:언리얼 엔진 4 로 개발하는 데 있어서 Visual Studio 셋업 관련 기법과 팁입니다. Crumbs: %ROOT% Parent:Programming/Development Order: Version: 4.16 type:overview tags:Visual Studio skilllevel:Beginner topic-image:SettingUpVSForUE4_topic.png [TOC(start:2 end:3)] [EXCERPT:Intro] 언리얼 엔진 4 는 Visual Studio 2013 에 매끄럽게 통합되도록 디자인되어 있습니다. 이를 통해 빠르고 쉽게 프로젝트의 코드를 변경하고 그 컴파일 결과를 바로 확인할 수 있습니다. 언리얼 엔진 4 에 돌아가도록 Visual Studio 구성을 해 두면 언리얼 엔진 4 를 사용하는 개발자들의 전체적인 사용감과 효율을 향상시키는 데 도움이 됩니다. 이 문서에서는 UE4 에서 VS2013 작업방식 셋업 기초에 대해서도 다루겠습니다. [/EXCERPT:Intro] ## UE4-to-VS 작업방식 구성 전 Visual Studio 2015 (VS2015) 가 C++ 툴을 기본으로 설치하지 않도록 하는 것이 좋습니다. VS2015 설치시 **Custom** 설치를 선택한 뒤 작업방식에 필요한 C++ 컴포넌트를 선택하십시오. Visual Studio 2015 를 이미 설치한 상태라면, **File > New > Project > C++** 로 C++ 를 설치합니다. 다음 표는 UE4 바이너리 버전과 통합된 Visual Studio 버전을 나타냅니다. | 언리얼 엔진 버전 | Visual Studio 버전 | | ------------------------- | --------------------- | | **4.15 이상** | VS2017 | | **4.10 부터 4.14** | VS2015 | | **4.2 부터 4.9** | VS2013 | (GitHub 나 P4 에서 구할 수 있는) UE4 오픈 소스 버전은 VS2013 과 통합되어 있습니다. 또한, UE4 초기 버전도 Visual Studio 이전 버전과 통합되어 있는데, 여기서는 다루지 않습니다. ## 추천 세팅 언리얼 엔진 4 와 Visual Studio 를 사용하는 개발자에게 추천하는 세팅은 다음과 같습니다. [EXCERPT:BasicVSFormat] 1. **Solution Configurations (솔루션 구성) 드롭다운 메뉴의 폭을 다음과 같이 넓힙니다:** 1. 툴바에 우클릭하여 뜨는 메뉴 하단에서 **Customize** (사용자 지정)을 선택합니다. ![](SelectingCustomize.png) 1. **Commands** (명령) 탭을 선택합니다. ![](ClickCommandsTab.png) 1. **Toolbar** (도구 모음) 동글 버튼을 선택합니다. ![](SelectToolbarRadioButton.png) 1. **Toolbar** (도구 모음) 옆의 드롭다운에서, **Standard** (표준)을 선택합니다. ![](SelectStandard.png) 1. 아래 **Controls** (컨트롤) 목록에서, **Solution Configurations** (솔루션 구성) 컨트롤을 선택합니다. ![](SelectSolutionConfigControl.png) 1. 오른편의 **Modify Selection** (선택 사항 수정)을 선택합니다. ![](ClickModifySelection.png) 1. **Width** (너비)를 200 으로 설정합니다. ![](SetWidth_200.png) 1. **Close** (닫기)를 선택합니다. 툴바가 즉시 업데이트됩니다. ![](ClickClosetoUpdateToolbar.png) 1. **솔루션 플랫폼 드롭다운을 추가 방법은 다음과 같습니다:** 1. 표준 툴바 가장 오른쪽의 버튼을 누르면, 도구 모음에 단추를 추가하고 제거할 수 있는 드롭다운 메뉴가 열립니다. ![](SelectDropDownButton.png) 1. 드롭다운 버튼을 클릭하고, **Add or Remove Buttons** (단추 추가/제거) 에 커서를 올린 다음, **Solution Platforms** (솔루션 플랫폼)을 클릭하여 도구 모음에 메뉴를 추가합니다. ![](SelectSolutionPlatforms.png) 1. **Error List** (오류 목록) 창을 비활성화시킬 것을 추천합니다. 전형적으로 코드에 문법 오류가 날 때마다 **Error List** (오류 목록) 창이 뜹니다. 그러나 언리얼 엔진 작업을 할 때는, **오류 목록** 에 잘못된 오류 정보가 나타날 수 있습니다. 이 창은 비활성화시키고, **출력** 창을 통해 실제 오류만 확인하는 것이 최선입니다. **오류 목록** 창을 끄는 방법은 다음과 같습니다: 1. **Error List** (오류 목록) 창이 열려있으면 닫습니다. 1. **Tools** (도구) 메뉴에서 **Options** (옵션) 대화창을 엽니다. ![](OpenOptionsDialog.png) 1. **Projects and Solutions** (프로젝트 및 솔루션)을 선택한 다음 **Always show Error List if build finishes with error** (오류로 인해 빌드가 종료될 때 항상 오류 목록 표시) 체크를 해제합니다. ![](UncheckErrorsListOption.png) 1. **OK** (확인)을 클릭합니다. [/EXCERPT:BasicVSFormat] [REGION:tip] 다음과 같은 구성도 해 주면 좋습니다: * **Show Inactive Blocks** 를 끕니다. 그리 하지 않으면 다수의 코드 덩어리가 텍스트 에디터에서 회색으로 빠져 보입니다. (**Tools > Options > Text Editor > C/C++ > View**). * 솔루션 익스플로러의 **External** 폴더는 화면만 어지럽히니 그냥 끕니다. (**Tools > Options > Text Editor > C/C++ > Advanced** 에서 **Disable External Dependencies Folder**) * 불필요한 **Edit & Continue** 기능을 끕니다. (**Tools > Options > Debugging > Edit and Continue--**) * IntelliSense 를 켭니다. ([Intellisense](#Intellisense) 참고) [/REGION] ###Visual Assist X 사용자 Visual Assist X 가 설치되어 있다면: * **Format After Paste** 를 끕니다 (**VAssistX > Visual Assist X Options > Advanced > Corrections**). 이 옵션을 끄지 않으면, Visual Assist X 는 자동으로 소스 코드 포맷을 적용하여, 문서의 포맷이 잘못될 수 있습니다. ###Visual Studio 2017 사용자 Visual Studio 를 처음 설치하는 경우, 다음 옵션이 켜져있는지 확인하는 것이 좋습니다. ####UE4 인스톨러 포함 다음 옵션은 Visual Studio 2017 을 설치할 때 UE4 인스톨러도 같이 다운로드합니다. ![](VS2017_SettingsInstaller.png) ####UE4 인스톨러 없이 다음 옵션은 Visual Studio 2017 을 설치할 때 UE4 인스톨러를 다운로드하지 않습니다. ![](VS2017_SettingsNoInstaller.png) (#Intellisense) ## Intellisense, Live Errors, Squiggles 이제 UE4 프로젝트에 IntelliSense 가 제대로 지원되며, 라이브 Error List 와 "squiggles" 도 물론입니다! (켜는 법에 대해서는 아래 참고) IntelliSense 는 입력과 동시에 C++ 를 리컴파일합니다. VAX 의 문법 검사 기능만 있는 것보다는 훨씬 강력한데요, 코드 한 줄 한 줄 확인하는 C++ 컴파일러를 사용하기 때문입니다. 엄청난 기능이라 작업방식 속도를 크게 올려줄 것입니다! ![VC++ Intellisense Squiggles](squiggle.png) squiggles 와 함께 Error List 에 살펴보는 파일에 대한 IntelliSense 오류도 볼 수 있습니다. 이 기능은 Error List 의 우클릭 메뉴에서 껐다 켰다 할 수 있습니다. ![Error List](error_list.png) Squiggles 는 UE4 프로젝트에 작동하지 않던 것이라 이미 껐을 수도 있습니다. C/C++ Advanced 탭을 쳐서 아래와 같은 세팅이 되어 있는지 확인하시기 바랍니다. ![VC++ Advanced Options](intellisense_options.png) C++ 파일을 열 때, 이 아이콘을 살펴보면 IntelliSense 컴파일러가 "작업중" 이라는 것을 알 수 있습니다: ![Intellisense 진행상황 표식](intellisense_progress.png) ### 구현 세부사항 * 코드를 편집시 가끔은 Squiggles 가 나타나는 데 몇 초 걸릴 수 있습니다. * 그 이유는 그저 include 파일이 엄청 많고, IntelliSense 가 현재 PCH 를 사용하지 않기 때문입니다. * 가끔 "가긍정" IntelliSense 오류가 납니다. 이유는 여러가지 있을 수 있습니다. * IntelliSense 컴파일러 (EDG) 가 MSVC 컴파일러보다 엄격한 경우 * 일부 #define 이 평소 빌드시와는 달리 IntelliSense 에 대해 다르게 셋업된 경우 * IntelliSense 가 컴파일한 것은 항상 32 비트로 취급된 경우 * 코드를 `#ifdef __INTELLISENSE__` 로 둘러싸서 필요한 경우 Squiggles 를 없앨 수도 있습니다. * IntelliSense 오류 문구는 VC++ 컴파일러 오류와 약간 다르게 되어 있습니다. 그냥 그렇습니다. * 헤더 파일의 Squiggles 는 헤더를 포함하는 알려진 `.cpp` 에 대해 헤더를 컴파일하는 식으로 작동합니다. * 가끔 IntelliSense 가 이 작업을 망치면 헤더에 Squiggles 가 보입니다. * (위에 표시된) **Max Cached Translation Units** 세팅이 있으며, 원한다면 올릴 수 있습니다. * 메모리 사용량은 늘어나지만 반응속도가 약간 향상됩니다. * 아직 IntelliSense 와 호환되지 않는 C++ 파일이 조금 있습니다. * Unreal Build Tool 에 `-IntelliSense` 옵션이 새로 생겼습니다. * 모든 프로젝트 파일에 대한 IntelliSense 프로퍼티 시트를 뱉어내는 옵션입니다. * 새로운 모듈이 추가됐을 때나 프로젝트 인클루드가 변경되었을 때만 다시 실행시켜 주면 됩니다. ## UnrealVS 익스텐션 [INCLUDE:Programming/Development/VisualStudioSetup/UnrealVS#Overview] 익스텐션 셋업과 사용법에 대해서는 [](Programming/Development/VisualStudioSetup/UnrealVS) 문서를 참고해 주시기 바랍니다. ## 디버깅 Visual Studio 에는 `visualizer` 로 디버거를 확장하는 기능이 지원되어, FName 이나 동적 배열처럼 흔한 언리얼 유형을 쉽게 조사할 수 있습니다. ### Visual Studio 2013 용 UE4 비주얼라이저 설치 UE4 비주얼라이저 설치는 두 단계로 이루어집니다. [PUBLISH:Licensee] 1. UE4 배포의 일부로 포함된 비주얼라이저 로직이 들어있는 파일을 찾습니다: * //depot/UE4/Engine/Extras/VisualStudioDebugging/UE4.natvis [/PUBLISH:Licensee] [PUBLISH:Rocket] 1. 설치의 일부로 포함된 비주얼라이저 로직이 들어있는 파일을 찾습니다: * [UE4Root]/Engine/Extras/VisualStudioDebugging/UE4.natvis [/PUBLISH:Rocket] 1. `UE4.natvis` 파일을 다음 위치 중 한 곳에 복사합니다: * [VisualStudioInstallPath]/Common7/Packages/Debugger/Visualizers/UE4.natvis * [UserProfile]/My Documents/Visual Studio 2013/Visualizers/UE4.natvis [REGION:warning] Visual Studio 인스톨 디렉터리에 파일을 복사하기 위해서는 관리자 권한이 필요할 수 있습니다. [/REGION]