개발환경(C++): Windows + Visual Studio

이 챕터에서는 아이펀 엔진 윈도우 버전 을 사용해서 Microsoft 윈도우 환경에서 Visual Studio 프로젝트를 생성하고, 빌드 및 실행하는 과정에 대해서 설명합니다.

Note

현재 아이펀 엔진 윈도우 버전 은 RC (Release Candidate) 버전이며, Microsoft Windows 10Microsoft Windows Server 2016/2019 에서 Visual Studio 2019 을 지원합니다.

프로젝트 생성 단계를 진행하시기 전에 윈도우에 설치하기 를 참고하셔서 아이펀 엔진 윈도우 버전의 설치가 완료되었는지 확인 해 주시기 바랍니다.

아이펀 엔진 윈도우 버전을 사용 중에 문의 사항이 있으신 분께서는 iFun Engine Q&A 게시판 에 남겨 주시기 바랍니다.

새 프로젝트 생성

Visual Studio 에서 새 프로젝트를 생성하는 방법을 살펴 보겠습니다.

Visual Studio 확장 프로그램 을 정상적으로 설치했다면 프로젝트 템플릿 목록에서 iFun Engine Project 를 선택 할 수 있습니다.

새프로젝트를 생성하는 방법은 다음 두가지 메뉴를 사용할 수 있습니다.

  • Visual Studio 시작 페이지

  • 파일 메뉴-> 새로 만들기-> 프로젝트

과정은 비슷하기 때문에 파일 메뉴를 통해 프로젝트를 생성하는 방법을 기준으로 설명하겠습니다.

Warning

윈도우 사용자 이름이 한글이거나 생셩하려는 프로젝트명 또는 프로젝트를 생성하려는 경로에 한글이 포함되어 있는 경우 정상적으로 동작하지 않습니다.

이는 아이펀 엔진이 사용하는 인코딩(UTF-8) 과 윈도우에서 사용하는 기본 인코딩(cp949) 이 달라서 발생하는 문제입니다.

  1. 프로젝트 생성하는 메뉴를 선택한 후, 프로젝트 템플릿 목록에서 iFun Engine Project 를 선택합니다.

    _images/create_windows_project02.png
  2. 프로젝트명을 설정하고 만들기 버튼을 누릅니다.

    _images/create_windows_project03.png
  3. 프로젝트를 생성하는 과정에서 실행되는 스크립트 실행이 끝나고 파일 수정 감지 창이 뜨면, 모두 다시 로드 버튼을 눌러주세요.

    _images/create_windows_project05.png

이제, 아이펀 엔진 윈도우 버전의 프로젝트 생성을 마쳤습니다.

프로젝트 설정

새로 생성한 프로젝트는 그 상태로 빌드 및 실행 가능한 상태이지만, 아이펀 엔진 프로젝트가 사용하는 프로젝트 속성에 대해서 설명하겠습니다.

프로젝트 속성-> 공용 속성 항목에는 iFun Engine Option 설정을 모아두었습니다.

이름

설명

Available server flavors

서버 Flavor 목록

Selected server flavor

서버 인스턴스에 지정할 Flavor

Building with iFun Deploy supports

iFun Deploy 기능을 사용도록 설정

Using %ProgramData% for log files

로그를 ProgramData 디렉터리에 남김

Version

패키징 할 때 서버 버전을 지정

Generating zipped package

패키징 결과물을 압축 파일로 생성

Getting build number from Git scm

GIT 커밋ID 를 빌드번호로 사용

Getting build number from Svn scm

SVN 커밋ID 를 빌드번호로 사용

Generating client-server protobuf DLLs

일반적인 Protobuf 메시지에 대한 DLL 을 생성

Generating dedicated-server RPC proto

Dedicated server 관련 protobuf 메시지에 대한 DLL 을 생성

Read-only Information

설정할 수 없는 읽기 전용 설정들

프로젝트 빌드하기

아이펀 엔진 윈도우 버전의 프로젝트를 생성하면 Debug, Release 두 가지 빌드 타겟을 자동 생성합니다.

원하는 빌드 타겟을 선택 한 후에 Visual Studio 의 빌드 메뉴를 사용해서 빌드를 진행할 수 있습니다.

_images/build_windows_project01.png

프로젝트 디버깅하기

Visual StudioDebug 메뉴를 이용하여 디버깅을 시작하면 CMD 창을 통해서 서버가 출력하는 로그를 볼 수 있으며, Visual Studio 에서 디버긴 메뉴들을 사용할 수 있습니다.

_images/debug_windows_project03.png

프로젝트 배포하기

아이펀 엔진은 여러분이 개발한 서버를 실행 환경으로 배포할 수 있도록 패키징 기능을 제공합니다.

아울러 이번 챕터에서는 서버 실행파일을 패키지로 만들어서 운용 서버에서 실행하는 방법에 대해서 설명합니다.

서버 패키징

  1. 앞서 설명 드린 프로젝트 설정Generating zipped package 설정을 로 설정합니다.

  2. 생성될 프로젝트 패키지의 버전은 Version 설정에 의해서 결정됩니다.

    _images/package_windows_project01.png
  3. 비주얼 스튜디오 빌드 메뉴를 실행하면, 빌드가 끝나고 결과물을 zip 형식으로 압축한 패키지를 생성합니다.

    _images/package_windows_project02.png

실행 환경 준비

개발 호스트와 실행 호스트가 분리되어 있을 경우, 아이펀 엔진으로 개발한 서버를 실행 호스트로 옮겨서 실행하는 방법을 설명합니다.

아이펀 엔진으로 제작한 서버의 실행 파일은 아이펀 엔진 실행 환경이 갖춰진 호스트에서만 실행할 수 있습니다.

먼저, 실행 호스트에 대해서도 아이펀 엔진 통합 설치 가 완료 되었는지 확인 해 주시기 바랍니다.

Important

개발 환경과 마찬가지로 라이센스 파일을 복사해야 합니다. C:\ProgramData\ifunfactoryaccount.ilf 파일이 있어야 합니다.

서버 실행

빌드를 마치고 생성된 패키지 파일을 실행하고자 하는 위치로 복사해서 압축을 출어 주세요.

압축을 해제한 디렉터리의 bin 디렉터리에 있는 서버 실행파일을 실행해서 서버를 실행 할 수 있습니다.

_images/run_windows_project01.png

압축을 해제한 디렉터리의 각 디렉터리의 용도는 다음과 같습니다.

  • bin: 서버를 실행하기 위한 실행 파일이 있는 디렉터리.

  • lib: 아이펀 엔진으로 개발한 서버의 라이브러리.

  • share: 서버 구동 시에 필요한 MANIFEST 파일과 리소스 파일들을 모아놓은 디렉터리.

  • var: 서버를 실행하면 생성되고, 크래시 덤프와 로그 파일 등을 생성하는 디렉터리.

이상으로 아이펀 엔진 윈도우 버전 에서 프로젝트를 생성하고, 빌드 및 실행하는 방법에 대해서 알아봤습니다.

이 후 서버 개발에 대한 세부 내용은 튜토리얼매뉴얼 을 참고 해 주시기 바랍니다. 개발 도중 문의 사항이 있는 경우는 iFun Engine Q&A 게시판 을 통해서 문의해 주시기 바랍니다.