넷드론 엔진 사용 안내서 목차 1. 제품 구성 플랫폼 구성 VirtualBox 설치 CentOS 설치 빌드 준비 개발 도구 스마트 클라이언트 스터디 서버...7 3

Similar documents
1. 제품 구성 구분 분류1 분류2 Engine NetDroneUnity SDK Tools Express.NET Template 비고 크로스 플렛폼 전체 소스 DataConverter CSV to Binary CSV 변환 도구 DummyClient RTCP, RUDP

NETDRONE ENGINE GUIDE BOOK

1. 제품구성 구분분류 1 분류 2 비고 SDK Cluster Engine Tools.NET Template NetDroneUnity DataConverter DummyClient ReuseMemory CryptTester NetCommon UnityClient Aut

NETDRONE ENGINE GUIDE BOOK

Windows 8에서 BioStar 1 설치하기

Analytics > Log & Crash Search > Unity ios SDK [Deprecated] Log & Crash Unity ios SDK. TOAST SDK. Log & Crash Unity SDK Log & Crash Search. Log & Cras

PowerPoint 프레젠테이션

Eclipse 와 Firefox 를이용한 Javascript 개발 발표자 : 문경대 11 년 10 월 26 일수요일

PowerPoint 프레젠테이션

Page 1 / 솔루션소개 Magento Magento 는강력한기능을제공하는오픈소스쇼핑몰제작관리도구입니다. 커스터마이징가 능한글로벌쇼핑몰구축시에사용을권장하며, 자체마켓플레이스를보유하고있을정도 로다양한기능을유 / 무료로추가할수있습니다. 2. 설치버전 하기명시된

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D D382E687770>

을풀면된다. 2. JDK 설치 JDK 는 Sun Developer Network 의 Java( 혹은 에서 Download > JavaSE 에서 JDK 6 Update xx 를선택하면설치파일을

본문서는 초급자들을 대상으로 최대한 쉽게 작성하였습니다. 본문서에서는 설치방법만 기술했으며 자세한 설정방법은 검색을 통하시기 바랍니다. 1. 설치개요 워드프레스는 블로그 형태의 홈페이지를 빠르게 만들수 있게 해 주는 프로그램입니다. 다양한 기능을 하는 플러그인과 디자인

RHEV 2.2 인증서 만료 확인 및 갱신

Sena Technologies, Inc. HelloDevice Super 1.1.0

1. Windows 설치 (Client 설치 ) 원하는위치에다운받은발송클라이언트압축파일을해제합니다. Step 2. /conf/config.xml 파일수정 conf 폴더에서 config.xml 파일을텍스트에디터를이용하여 Open 합니다. config.xml 파일에서, 아

Microsoft PowerPoint - chap01-C언어개요.pptx

Interstage5 SOAP서비스 설정 가이드

ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O

리눅스설치가이드 3. 3Rabbitz Book 을리눅스에서설치하기위한절차는다음과같습니다. 설치에대한예시는우분투서버 기준으로진행됩니다. 1. Java Development Kit (JDK) 또는 Java Runtime Environment (JRE) 를설치합니다. 2.

API STORE 키발급및 API 사용가이드 Document Information 문서명 : API STORE 언어별 Client 사용가이드작성자 : 작성일 : 업무영역 : 버전 : 1 st Draft. 서브시스템 : 문서번호 : 단계 : Docum

Page 1 / 솔루션소개 WordPress WordPress는세계에서가장인기있는오픈소스웹사이트제작관리도구입니다. 웹표준, 접근성, SEO( 검색엔진최적화 ) 등의강점이있으며다양한테마와확장기능을제공합니다. 2. 설치버전 하기명시된버전은권장설치버전이며필요시다른

1. efolder 시스템구성 A. DB B. apache - mod-perl - PHP C. SphinxSearch ( 검색서비스 ) D. File Storage 2. efolder 설치순서 A. DB (MySQL) B. efolder Service - efolder

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

초보자를 위한 C++

슬라이드 1

슬라이드 1

untitled

슬라이드 1

SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자

28 THE ASIAN JOURNAL OF TEX [2] ko.tex [5]

MPLAB C18 C

슬라이드 1

PowerPoint Presentation

PowerPoint 프레젠테이션

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

SIGIL 완벽입문

Microsoft Word - windows server 2003 수동설치_non pro support_.doc

Splentec V-WORM Quick Installation Guide Version: 1.0 Contact Information 올리브텍 주소 : 경기도성남시분당구구미로 11 ( 포인트타운 701호 ) URL: E-M

Snort Install Manual Ad2m VMware libnet tar.gz DebianOS libpcap tar.gz Putty snort tar.gz WinSCP snort rules 1. 첫번째로네트워크설정 1) ifconf

슬라이드 제목 없음

1217 WebTrafMon II

Windows Server 2012

PowerPoint 프레젠테이션

server name>/arcgis/rest/services server name>/<web adaptor name>/rest/services ArcGIS 10.1 for Server System requirements - 지

1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과

ISP and CodeVisionAVR C Compiler.hwp

PCServerMgmt7

목차 윈도우드라이버 1. 매뉴얼안내 운영체제 (OS) 환경 윈도우드라이버준비 윈도우드라이버설치 Windows XP/Server 2003 에서설치 Serial 또는 Parallel 포트의경우.

ActFax 4.31 Local Privilege Escalation Exploit

1. 도구개요 CppUnit Testing 소개 CppUnit 는 C++ 용 testing Framework 로 Java 의 JUnit 을 C++ 로구현 C++ 언어에서사용할수있도록개발된 Open Source 프로젝트로, source code 의특정 Module 이의도

PathEye 공식 블로그 다운로드 받으세요!! 지속적으로 업그래이드 됩니다. 여러분의 의견을 주시면 개발에 반영하겠 습니다.

Microsoft Word - src.doc

Orcad Capture 9.x


컴퓨터과학과 교육목표 컴퓨터과학과의 컴퓨터과학 프로그램은 해당분야 에서 학문적 기술을 창의적으로 연구하고 산업적 기술을 주도적으로 개발하는 우수한 인력을 양성 함과 동시에 직업적 도덕적 책임의식을 갖는 IT인 육성을 교육목표로 한다. 1. 전공 기본 지식을 체계적으로

Solaris Express Developer Edition

Remote UI Guide

리눅스 취약점대응방안권고 / KISA 취약점점검팀 영향받는플랫폼 OS, FAQ 추가 개요 미국보안회사 에의해 시스템의 라이브러리 의특정함수에서임의코드를실행할수있는취약점이공개 해당취약점은 CVE 지정, 도메인네임을

IRISCard Anywhere 5

[Brochure] KOR_TunA

PowerPoint 프레젠테이션

< FC8A8C6E4C0CCC1F620B0B3B9DF20BAB8BEC8B0A1C0CCB5E5C3D6C1BE28C0FAC0DBB1C7BBE8C1A6292E687770>

Endpoint Protector - Active Directory Deployment Guide

bn2019_2

Intro to Servlet, EJB, JSP, WS

View Licenses and Services (customer)

Microsoft PowerPoint - AME_InstallRoutine_ver8.ppt

Chapter 1

문서 대제목

Oracle VM VirtualBox 설치 VirtualBox에서 가상머신 설치 가상머신에 Ubuntu 설치

PowerPoint 프레젠테이션

01Àå

PowerPoint 프레젠테이션

PowerPoint Template

Agenda 오픈소스 트렌드 전망 Red Hat Enterprise Virtualization Red Hat Enterprise Linux OpenStack Platform Open Hybrid Cloud

Microsoft PowerPoint - 10Àå.ppt

스마트월드캠퍼스 교육교제

슬라이드 1

Server Agent Guide

Analyst Briefing

NTD36HD Manual

품질검증분야 Stack 통합 Test 결과보고서 [ The Bug Genie ]

J2EE & Web Services iSeminar

Secure Programming Lecture1 : Introduction

PowerPoint 프레젠테이션

소프트웨어설치 1. 소프트웨어설치및제거 ( 소스코드 ) 소스코드컴파일을이용한 S/W 설치 1. 소스코드다운로드 - 예 ) httpd tar.gz - 압축해제 : #tar xzvf httpd tar.gz - INSTALL 또는 README파일참조

Apache Ivy

INDEX 1. 개요 데이터백업스크립트작성 crontab 을이용한자동백업예약 활용 - 다른서버에백업하기

C. KHU-EE xmega Board 에서는 Button 을 2 개만사용하기때문에 GPIO_PUSH_BUTTON_2 과 GPIO_PUSH_BUTTON_3 define 을 Comment 처리 한다. D. AT45DBX 도사용하지않기때문에 Comment 처리한다. E.

HLS(HTTP Live Streaming) 이용가이드 1. HLS 소개 Apple iphone, ipad, ipod의운영체제인 ios에서사용하는표준 HTTP 기반스트리밍프로토콜입니다. 2. HLS 지원대상 - 디바이스 : iphone/ipad/ipod - 운영체제 :

Microsoft PowerPoint - 11주차_Android_GoogleMap.ppt [호환 모드]

제이쿼리 (JQuery) 정의 자바스크립트함수를쉽게사용하기위해만든자바스크립트라이브러리. 웹페이지를즉석에서변경하는기능에특화된자바스크립트라이브러리. 사용법 $( 제이쿼리객체 ) 혹은 $( 엘리먼트 ) 참고 ) $() 이기호를제이쿼리래퍼라고한다. 즉, 제이쿼리를호출하는기호

슬라이드 1

Microsoft PowerPoint - 04-UDP Programming.ppt

chapter1,2.doc

작성자 : 기술지원부 김 삼 수

슬라이드 1

YUM(Yellowdog Updater,Modified) : RPM 패키지가저장된서버 ( 저장소 ) 로부터원하는패키지를자동으로설치한다. : YUM 도구는 RPM 의패키지의존성문제를해결

슬라이드 1

Transcription:

넷드론 엔진 사용 안내서 목차 1. 제품 구성...2 2. 플랫폼 구성...3 2.1. VirtualBox 설치...3 2.2. CentOS 설치...4 3. 빌드 준비...5 3.1. 개발 도구...5 3.2. 스마트 클라이언트...6 3.3. 스터디 서버...7 3.4. 클론 서버...8 3.5. 하이퍼 서버...11 3.6. 환경 설정...12 4. 사용 방법...13 4.1. 패키지 소개...13 4.2. 게임 오브젝트...14 4.3. 오토 프레임워크...15 4.4. 로그 및 메세지...16 4.5. 유니티 엔진 분리...16 1

1. 제품 구성 구분 분류1 분류2 Engine NetDroneUnity Examples SDK Tools 비고 크로스 플렛폼 전체 소스 SmartClient Room, Chat, Web 예제 클라이언트 StudyServer.NET/C# 예제 서버 CloneServer Linux/C++ 예제 서버 HyperServer NDP/PHP 예제 서버 DataConverter CSV to Binary CSV 변환 도구 DummyClient RTCP, RUDP 테스트 도구 ReuseMemory 가상 메모리 풀 테스트 도구 CryptTester RSA RC5/RC6 테스트 도구 2

2. 플랫폼 구성 2.1. VirtualBox 설치 Oracle VirtualBox는 윈도우즈 환경에서 손쉽게 리눅스 환경을 테스트 할 수 있는 가상 환경을 제공하 는 소프트웨어 입니다. 만약 당신이 VMware, Hyper-V 사용에 익숙하다면 해당 소프트웨어를 사용하셔 도 괜찮습니다. Oracle VirtualBox 다운로드 https://www.virtualbox.org 스터디 서버 예제는 Windows, Linux, OSX 에서 모두 안정적인 성능을 보여주며, 본 문서는 Linux를 기준으로 작성 됩니다. 클론 서버 예제는 CentOS, Ubuntu, Gentoo 에서 가장 안정적인 성능을 보여줍니다. 3

2.2. CentOS 설치 리눅스 배포판중 하나인 CentOS는 업스트림 소스인 레드햇 엔터프라이즈 리눅스와 완벽히 호환되는 무료 기업용 플랫폼 입니다. 만약 당신이 Utuntu, Gentoo 사용에 익숙하다면 해당 배포판을 사용하셔 도 괜찮습니다. CentOS (The Community ENTerprise Operating System) 다운로드 https://www.centos.org 스터디 서버 예제는 Windows, Linux, OSX 에서 모두 원할히 작동하지만 본 문서에서는 CentOS 6를 기준으로만 안내 합니다. 클론 서버 예제는 CentOS, Ubuntu, Gentoo 에서 모두 원할히 작동하지만 본 문서에서는 CentOS 6를 기준으로만 안내 합니다. CentOS 설치는 되도록 서버 용으로 기본 패키지 들만 설치하세요. 최신 패키지 업데이트 root # yum -y update 필수 패키지 설치 root # yum -y install policycoreutils-python gcc gdb cmake mono mono-devel rpmbuild unzip 4

3. 빌드 준비 3.1. 개발 도구 스터디 서버 예제는 MonoDevelop으로 개발이 가능합니다. 최신 버전을 다운로 드 받아 설치 하시기 바랍니다. 다운로드 http://www.monodevelop.com 스터디 서버 예제는 Visual Studio로 개발이 가능합니다. 최신 버전을 다운로드 받 아 설치 하시기 바랍니다. 다운로드 https://imagine.microsoft.com/ko-kr/catalog/product/101 클론 서버 예제는 Eclipse CDT 환경에서 제작 되었습니다. 최신 버전을 다운로드 받아 설치 하시기 바랍니다. 다운로드 http://www.eclipse.org Windows 환경에서 각각의 IDE를 설치 한 뒤 VirtualBox/CentOS를 서버로 두고 개발 하는 것이 가능합니다. 5

3.2. 스마트 클라이언트 NetDrone Engine (Free) Scene 순서와 동일한 Enum 값을 선언하고 있어 순서가 매우 중요합니다. 빌드 후 클라이언트 여러개를 실행하여 테스트 할 수 있습니다. 6

3.3. 스터디 서버 Visual Studio 빌드 studyserver.sln 을 열어 빌드하면 실행 파일이 생성됩니다. Command Line 빌드 (xbuild) root #./make.sh root #./make.sh Debug root #./make.sh Release root #./make.sh Debug /opt/local install Command Line 실행 (windows) C:\> studyserver.exe C:\> studyserver.exe -s 100 -c studyserver-windows.txt -s : server id -c : config path Command Line 실행 (linux) root # mono --debug./studyserver.exe -s 100 -c./studyserver-linux.txt root # mono --debug./studyserver.exe -s 100 -c./studyserver-linux.txt 1> /tmp/output.txt 2>&1 -s : server id -c : config path root # cat /tmp/output.txt root # tail -f /tmp/output.txt 7

3.4. 클론 서버 NetDrone Live (Archive) CentOS 6 CentOS 7 Ubuntu 14 Ubuntu 16 Gentoo Hardened GCC 4.4.7 GCC 4.8.5 GCC 4.8.4 GCC 5.4.0 GCC 5.4.0 GLIBC 2.12 GLIBC 2.17 GLIBC 2.19 GLIBC 2.23 GLIBC 2.23 방화벽 설정 방법 CentOS 6 root # vi /etc/sysconfig/iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 11000 -j ACCEPT -A INPUT -m state --state NEW -m udp -p udp --dport 11000 -j ACCEPT root # /etc/init.d/iptables restart Ubuntu 14 root # vi /etc/ufw/ufw.conf ENABLE = yes root # vi /etc/ufw/before.rules -A ufw-before-input -m state --state NEW -m tcp -p tcp --dport 11000 -j ACCEPT -A ufw-before-input -m state --state NEW -m udp -p udp --dport 11000 -j ACCEPT root # ufw enable 8

Eclipse CDT 빌드 1. 2. 3. 4. Eclipse의 Workspace에 cloneserver 예제를 Import 해야 합니다. Project Explorer에서 마우스 오른쪽 버튼을 클릭하면 Import 항목이 나타납니다. General > Existing Projects into Workspace를 선택한뒤 Next 버튼을 클릭하세요. Select root directory 항목에서 Browse 버튼을 클릭한뒤 Workspace 아래에 있는 cloneserver 예제 폴더를 클릭합니다. 5. Projects 목록에 cloneserver 항목이 나타났으면 Finish 버튼을 클릭한뒤 완료됩니다. 6. 빌드할 경우 Debug 또는 Release 폴더 아래에 실행 파일이 생성됩니다. Command Line 빌드 (cmake) root #./make.sh Debug root #./make.sh Release root #./make.sh root #./make.sh Debug_Eclipse root #./make.sh Release_Eclipse root #./make.sh Debug root #./make.sh Debug /opt/local install root root root root # # # # cd Debug make clean make uninstall make dist Command Line 실행 root #./cloneserver-[version] -s 100 -c./cloneserver-linux.txt root #./cloneserver-[version] -s 100 -c./cloneserver-linux.txt -d 1> /tmp/output.txt 2>&1 -s : server id -c : config path -d : daemon root # cat /tmp/output.txt root # tail -f /tmp/output.txt 9

빌드 구조 분석 넷드론 엔진의 빌드 구조는 CMake를 기반으로 하고 있지만 사용법이 일정 부분 달라져 있어 해당 설 명을 반드시 참고하세요. build.h.cmake.in cmake_uninstall.cmake.in rpmbuild.spec.cmake.in 소스 코드에서 사용할 Define들이 생성됩니다. make uninstall 명령어를 사용할수 있게 설정됩니다. rpmbuild를 위한 spec 파일을 생성합니다. CMakeLists.txt CMake가 찾는 유일한 소스 코드 목록 및 빌드 방식에 대한 설정을 포함합니다. Configuration.cmake CMakeLists.txt에서 상세 설정용으로 분리(include)되어 있는 스크 립트 입니다. FindNetDroneLive.cmake NetDrone Live 버전의 아카이브 경로를 탐색하는 스크립트 입니다. FindThread.cmake getversion_netdrone.sh getversion_service.sh makedist.sh make.sh os-release GNU Posix Thread의 경로를 탐색하는 스크립트 입니다. NetDrone Live 버전의 Version.h 파일 정보를 읽어옵니다. Clone Server 예제의 Version.h 파일 정보를 읽어옵니다. make dist 명령어를 사용할수 있게 설정됩니다. (현재는 rpm만 지원) CMake 빌드를 편리하게 사용할수 있도록 작성된 스크립트 이며 아 래와 같은 옵션이 존재합니다. OS 및 라이브러리 의존성을 구성합니다. 기존 CMakeLists.txt 작성법과 달리 단 1개의 CMakeLists.txt 만 작성하게 되며 GNU Autotools와 비슷 한 결과물을 얻기위해 몇가지 Template 및 Bash script 파일이 존재합니다. 10

3.5. 하이퍼 서버 Binary protocols 개발 환경 구분 버전 Apache HTTP Server 2.2 PHP 7.0 패키지 httpd httpd-tools httpd-devel php70w-process php70w-gd php70w-mysqlnd php70w-xmlrpc php70w-imap php70w-pgsql php70w-tidy php70w-bcmath php70w-xml php70w php70w-pdo php70w-soap php70w-snmp php70w-mcrypt php70w-cli php70w-common php70w-mbstring php70w-intl php70w-ldap 11

3.6. 환경 설정 NDCF는 기본적으로 하나 또는 각각의 파일에서 여러개의 프로세스에 대한 설정 옵션을 프로세스 이름 과 서버 아이디를 통해서 구분합니다. [process_name_1:server_id_100]... [process_name_1:server_id_101]... [process_name_2:server_id_100]... [process_name_2:server_id_101]... # 마크를 사용한 주석 입력을 사용하는 것이 가능하며 Defines.h에 새로운 Key를 추가하여 CfgMgr 함 수에서 읽어오는 것이 가능합니다. DefaultInterface 외부에서 연결이 들어오는 인터페이스 이름을 입 력합니다. eth0 DefaultPort 외부에서 연결이 들어오는 사용할 Tcp Port를 입 력합니다. 11000 ReliableInterface 외부에서 연결이 들어오는 인터페이스 이름을 입 력합니다. ReliablePort 외부에서 연결이 들어오는 사용할 Udp Port를 입 력합니다. 11000 BackboneInterface 서버간 통신이 필요할 경우 전용망 인터페이스 이름을 입력합니다. eth0/eth1 BackbonePort 서버간 통신이 필요할 경우 서버 전용 Tcp Port 를 입력합니다. 11001 MaxConnection HeaderCrypt 최대 동시 접속 제한을 설정합니다. 0~65535 패킷 헤더 암호화 true/false LogPath Enums.h에 정의되어 있는 LOG_EVENT_TYPE과 LOG_FIELD_TYPE 포멧의 서비스 로그가 저장되는 위치입니다. InfoPath kill 명령어를 통한 클린 종료 또는 프로세스 상태 확인을 할수있도록 프로세스 아이디 정보를 기록 PGID, PPID, PID 하는 위치입니다. 12

4. 사용 방법 4.1. 패키지 소개 구분 분류1 분류2 비고 Fonts Binary Bytes 포멧 데이터 파일 Config Resources Material Text CSV 포멧 데이터 파일 Texture Scenes Client 예제용 씬 DB CSV, Bytes 포멧 파일별 로더 Net 프로토콜 패킷 처리 기능 State Scripts SDK 클라이언트 상태 처리 기능 UI Unit 플레이어 유닛 처리와 관리 기능 Util Config 처리 기능 World 채널/룸 처리 기능 NetDroneUnity Docs Server studyserver, cloneserver, hyperserver Tools DataConverter, DummyClient, ReuseMemory, CryptTester 다운로드 받은 후 패키지를 구성하는 폴더 구조입니다. 13

4.2. 게임 오브젝트 구분 분류1 Channels User List 분류2 비고 Room List Main Room Packet 및 List 정보 출력 Queue (Native:Count) Master Networks Connector (Main:TCP) Connector (Sub:TCP) Queue (Native:Count) Slave Connector (Main:UDP) Listener (Main:UDP) Main Player Main State (STATE) Scene 유니티 에디터로 실행할 경우 DontDestroyOnLoad 영역에 나타납니다. 예제에 포함된 기능들을 테스트 하면서 Hierarchy에 어떻게 표시되는지 살펴보세요. 14

4.3. 오토 프레임워크 AutoFramework란 C#에서 C++ 처럼 전역적 클래스/함수 작성을 지원할수 있도록 고안된 partial class 집합입니다. UnityEngine 네임스페이스에 포함되어있는 GameFramework는 using UnityEngine을 선언 할 경우 별다른 추가 선언이 필요없습니다. GameFramework를 사용하는 작성 방법은 다음과 같습니다. MonoBehaviour를 사용하는 기존 클래스 대체 방법 Defines.cs를 참고하시면 GameFramework는 AutoFramework 및 MonoBehaviour 상속이 되어있습니 다. 유니티 에티터용 스크립트 작성시 MonoBehaviour 대신 GameFramework를 상속하세요. public class Example : GameFramework {... } 이제 partial class GameFramework로 묶여있는 모든 클래스/함수들은 네임스페이스 접근없이 전역적 접근이 가능합니다. 전역적 접근 구조에 포함시키고 싶은 일반 클래스 작성 방법 넷드론 유니티 소스 코드와 클라이언트 예제는 모두 partial class GameFramework 안에 존재합니다. 새로운 클래스 및 전역함수 작성을 하시려면 아래 예제들 처럼 작성하세요. namespace UnityEngine { public partial class GameFramework { public class CExample { public CExample() {} ~CExample() {} } } } namespace UnityEngine { public partial class GameFramework { public static CExample g_kexample { get { return CExample.GetInstance(); } } public class CExample : CSingleton<CExample> { public CExample() {} ~CExample() {} public void Test() {} } } } 이제 partical class GameFramework에 포함되어 있거나 public class Example : GameFramework 처럼 상속되는 모든 곳에서 g_kexample.test()만 입력하면 네임스페이스 접근없이 호출됩니다. 15

4.4. 로그 및 메세지 넷드론 엔진의 유니티 버전은 TRACE, OUTPUT, PRINT, ERROR 함수를 정의하여 표준 출력 내용을 표시 합니다. TRACE DISABLE_UNITY 선언이 있을경우 Console.WriteLine(FILE, LINE, FUNCTION) 함수와 연 결, 선언이 없을경우 UnityEngine.Debug.Log 함수와 연결됩니다. OUTPUT DISABLE_UNITY 선언이 있을경우 Console.WriteLine(FILE, LINE, FUNCTION) 함수와 연 결, 선언이 없을경우 UnityEngine.Debug.Log 함수와 연결됩니다. PRINT DISABLE_UNITY 선언이 있을경우 Console.WriteLine 함수와 연결, 선언이 없을경우 UnityEngine.Debug.Log 함수와 연결됩니다. ERROR DISABLE_UNITY 선언이 있을경우 System.Diagnostics.Debug.WriteLine 함수와 연결, 선언이 없을경우 UnityEngine.Debug.LogError 함수와 연결됩니다. TRACE 명령어를 사용하려면 Assets 폴더 아래 gmcs.rsp/smcs.rsp (-define:debug) 파일을 생성 하세요. DEBUG 선언을 제거할 경우 TRACE 코드는 모두 사라집니다. 4.5. 유니티 엔진 분리 넷드론 유니티는 유니티 엔진 뿐만 아니라 C#으로 구현하는 모든 프로젝트에 적용하는 것이 가능합니 다. 독립적으로 사용하려면 DISABLE_UNITY 선언을 추가하세요. MonoDevelop 선언 위치 Project Options: Build > Compiler > Define Symbols studyserver 프로젝트를 참고하세요. 16