문서 최종 수정일 : 2011년 5월 12일
0. 들어가기전에...
0. 들어가기전에...
많은 분들이 아이폰어플을 개발하기 위해서 오브잭트씨만을 써야한다고 잘못알고 계신분들이 많습니다.
Xcode는 c++도 컴파일이 가능하기때문에 기존에 c++기반의 공개엔진들을 올리실수가있습니다.
오브잭트씨는 c++과 별도의 언어가 아니고 c++코드를 생성해주는 관리스크립트언어(일종에 탬플릿)라 생각을하시면됩니다.
(MS의 managed c++과 비슷?)
(MS의 managed c++과 비슷?)
c++기반의 일리히트엔진(irrlicht.sourceforge.net)을 올리는 방법을 설명해보도록 하겠습니다.
1. 맥개발환경 세팅하기
아이폰에 일리히트 엔진을 올리기 위해서 먼저 xcode와 최신의 아이폰 sdk를 설치해야합니다.
Install Xcode with last iPhone SDK. ( http://developer.apple.com/iphone/ )
공개소스들은 대부분 svn을 통해서 다운받는것이 많습니다. 윈도우즈는 tortoris-svn을 사용하지만
맥에서 SVN을 사용 하려면 아래 싸이트에 가면 SVN클라이언트프로그램을 구하실수 있습니다.
Install scplugin for your Mac to access svn. ( http://scplugin.tigris.org/ )
Install scplugin for your Mac to access svn. ( http://scplugin.tigris.org/ )
2. 일리히트엔진 다운받기
opengl-es버전의 일리히트엔진svn으로 다운받습니다.
3. 엔진 컴파일하기
일단
source/Irrlicht/MacOSX/MacOSX.xcodeproj
경로에 있는 엑스코드용 프로잭트파일은 아이폰타겟이 아닌 맥운영체제용 빌드파일입니다.
그러나 이것을 조금수정하면 아이폰용으로 쉽게만들수있습니다.(역자주. 전 이것때문에 2주삽질을 ㅜ.ㅜ;;)
먼저 다음 3개의 파일을 프로잭트에서 제외시킵니다. (아이폰과는 무관한 맥운영체제 부분이며 컴파일시 에러가 발생합니다.)
- AppDelegate.mm
- CIrrDeviceMacOSX.mm
- OSXClipboard.mm
- CIrrDeviceMacOSX.mm
- OSXClipboard.mm
그 다음 아래의 파일들을 프로잭트에 추가시켜줍니다.
(당근 헤더 파일은 안추가 시켜도 되겟죠. ^^;)
(당근 헤더 파일은 안추가 시켜도 되겟죠. ^^;)
- source/Irrlicht/wglext.h
- source/Irrlicht/eglext.h
- source/Irrlicht/gles-ext.h
- source/Irrlicht/COGLESDriver.h
- source/Irrlicht/COGLESDriver.cpp
- source/Irrlicht/COGLESExtensionHandler.h
- source/Irrlicht/COGLESExtensionHandler.cpp
- source/Irrlicht/COGLESMaterialRenderer.h
- source/Irrlicht/COGLESTexture.h
- source/Irrlicht/COGLESTexture.cpp
- source/Irrlicht/CIrrDeviceIPhone.h
- source/Irrlicht/CIrrDeviceIPhone.cpp
- source/Irrlicht/CIrrDeviceIPhone.m
- source/Irrlicht/eglext.h
- source/Irrlicht/gles-ext.h
- source/Irrlicht/COGLESDriver.h
- source/Irrlicht/COGLESDriver.cpp
- source/Irrlicht/COGLESExtensionHandler.h
- source/Irrlicht/COGLESExtensionHandler.cpp
- source/Irrlicht/COGLESMaterialRenderer.h
- source/Irrlicht/COGLESTexture.h
- source/Irrlicht/COGLESTexture.cpp
- source/Irrlicht/CIrrDeviceIPhone.h
- source/Irrlicht/CIrrDeviceIPhone.cpp
- source/Irrlicht/CIrrDeviceIPhone.m
include/IrrCompileCongig.h 파일의 앞부분에 아래 코드를 추가해줍니다.( #include <stdio.h> 바로 밑에쯤... )
#define NO_IRR_COMPILE_WITH_WAD_ARCHIVE_LOADER_
#define NO_IRR_COMPILE_WITH_HALFLIFE_LOADER_
#define NO_IRR_COMPILE_WITH_BURNINGSVIDEO_
#define NO_IRR_COMPILE_WITH_CONSOLE_DEVICE_
#define NO_IRR_COMPILE_WITH_OGLES2_
#define _IRR_COMPILE_WITH_OGLES1_
그리고 나서 마지막으로 Get Info->Base SDK for All Configurations->[현제 설정되어있는 최신 ios]
으로 설정을 해준뒤 빌드를 합니다.
아래의 파일이 생성됐다면 성공한것입니다.
- source/Irrlicht/MacOSX/build/Debug-iphonesimulator/irrlicht.a
일단 여기까지 하시면 엔진컴파일은 완료가 됐습니다.
4. 어플만들어보기
포럼에서 FuzzYspo0N 님이 올려주신 탬플릿을 다운받습니다.
그다음 빈폴더를 만들어 그안에 압축을 풀어넣습니다.
irrlicht.a파일도 같은 폴더에 카피해 넣습니다.
iPhoneTemplateApp/irrlichtApplication.xcodeproj 파일로 프로잭트를 오픈합니다.
get info->irrlicht.a 에서 경로명을 카피해넣은 폴더로 새로지정해줍니다. 그러면 빨간색이 검은색으로 바뀌게 될것입니다.
get info->include 에서 일리히트엔진을 컴파일했던 include디랙토리로 지정해줍니다.
마지막으로
Get Info->Base SDK for All Configurations->iPhone Simulator 3.x
선택해준뒤
빌드한후 실행해보실수 있습니다.
4.1 아나 토미 싸이트에서 어플 만들어 보기
5.참고자료
혹시 다운로드 링크가 깨져있을것에 대비해서 자료를 관련 자료 업로드 해둡니다.
=================================================================
포럼에 올라온 원문입니다.
'android' 카테고리의 다른 글
안드로이드 NDK R4 일리히트 연동하기 (6) | 2010.08.13 |
---|---|
오드로이드 구매했습니다. (0) | 2010.03.27 |
android os 에 일리히트엔진 올려보기 강좌.(irrlicht 엔진 1.7.1 base) (0) | 2010.03.27 |
D3DM irrlicht 엔진용 드라이버 제작기 강좌 계획 (0) | 2009.12.20 |
activesync 4.5 입니다. (0) | 2009.12.01 |