2편에서는 지난 1편에서 약속한대로, 개발환경의 설치와 게임 엔진중에 하나인 cocos2d가 무엇인지, 물리엔진중에 하나인 box2d가 무엇인지 알아보고 그 설치방법에 대해서 이야기 하겠다.

일단 iOS용 프로그램을 개발하려면,iOS SDK를 설치해야 하고, Xcode라고 하는 개발툴을 설치해야 한다.
Xcode는 얼마전까지는 무료였으나. 4로 업데이트 되면서 부터 유료 개발자 프로그램에 등록한 사람에 한하여 무료 다운로드 가능하도록 되어 있다.
무료로 구할수 있는 방법이 있을것 같으나, 이 부분은 구글이라던지 다른 경로를 통해서 알아보는 것이 더 빠를것이다.

xcode가 우선 무엇인가?
지금 이글을  읽고 있는 분이 이전에 개발을 한번도 하지 않으신 분이였다면, 다르게 설명을 해야 하나, 개발을 한번이라도 해보고 윈도우즈또는도스에서 c언어를 통해서 무엇인가 프로그래밍이라는 것을 해본적이 있는 분께는 아주 쉽게 설명할수 있다.
윈도우즈 개발하시던 분이라면,Visual Studio 와 같은 개발툴을 한번 정도는 접해보셨을것 이고, 자바 개발자라면 eclipse와 같은 개발환경을 한번은 접해보셨을 것이다.

그렇다,!!! xcode는 Mac용 프로그램을 쉽게 개발할수 있게 도와주는 IDE중에 하나이다. 굉장히 강력하고 여러 편리한 기능이 많이 제공되고 있으며, 이전까지 무료였다는게 믿어 지지 않을 정도로 그 완성도가 높은 개발 툴이다.


 
위 캡쳐 화면은 나의 개발환경을 참고용으로 올려둔 것이다. 개발하시던 분들은 아!! 뭐 이거구나. 하고 바로 사용가능하다.

만약 개발자가 아니신분들은 아이폰용 프로그래밍을 쉽게 해줄수 있도록 도와주는 프로그램 정도로 이해하고 넘어가도 무방하다. 나는 비록 개발자이지만 리눅스 또는 도스에 익숙한 커맨드 라인(메모장 같은 걸로 편집해서 컴파일명령을 내리는 )에 익숙한 개발자여서 통합 개발환경에 익숙하지 않았다. 그런데 한번 두번 쓰면 자연스럽게 손에 익는 그런 도구라서 따로 공부할 필요도 없었다, 사용하다 모르는 부분이 있으면 여기에 댓글을 남겨주면, 내가 직접 찾아서라도 답변을 남기도록 하겠다.

그러면, 이 xcode를 어디서 다운받는가?
바로 애플 개발자 센터이다. http://developer.apple.com/xcode/index.php 여기로 가보면, 친절한 설명과 다운 받으려면 유료회원으로 가입해야 된다는 설명이 나온다. 좌절하지 말고 구글등을 통해서 여러 경로를 알아보도록 하자. 물로 나는 유료회원으로 가입했기 때문에, 여기서 다운로드 받았다.

여기서 유료회원과 무료회원의 차이는 궁극적으로, 무료회원은 시뮬레이터등을 이용해서 프로그램을 돌려볼수는 있지만, 앱스토어에 등록하거나, 실제 디바이스에 올려보지 못한다. 유료회원은 그게 다 가능하다, 앱스토어에 무료 앱을 올리고자 해도, 유료 개발자 프로그램에 가입해야 한다. 1년에 104,000원 정도 밖에 안하므로, 한달에 9000원 정도 취미로 쓴다 생각하고 결재하는것이 좋은것 같다.

요약하면, 당신이 프로그램을 개발하고자 한다면, 제일 처음 기본적으로 Mac OS 가 설치된 PC는 기본적으로 있어야 한다.
맥북 저렴한걸 사는것도 좋고(http://store.apple.com/kr) 최저가 1,290,000원 이다. 해킨토시라고 있는데, 일반 PC 에 OSX를 설치하는 것을 말한다. 이걸 할수 있다면, 이런 방법도 추천한다. 그러나, 정신이 피폐해지기 쉽고, OSX 에 관한 지식이 없다면, 해킨으로는 도저히 개발을 할수 없을것이다.  그리고 개발툴인 xcode를 설치해야 한다. 위에서 말한 사이트에서 유료개발자로 가입한후 다운로드 받아도 되고, 일단 다운받은 다음에 클릭만 하면 설치가되므로 아무런 걱정할필요 없다. iOS용 프로그램을 개발하기로 했으므로, iOS용 SDK를 설치해야 하는데 xcode설치할때 같이 설치할수 있다. 

여기 까지하면 기본적인 앱은 클릭 몇번으로 만들수 있다. 

나는 게임 개발하는 과정을 정리하기로 했으므로, 게임개발에 반드시 필요한 두가지 엔진추가로 설치하였다.
그중 한가지는 이미지들을 처리해주고, 각종 애니메이션들을 처리해주는 스프라이트 엔진인 cocos2d이고, 그리고 이것을 설치할때 같이 설치하는 물리엔진인  box2d이다. 이름에서 부터 알수 있듯이, 2d 환경에서 물리를 시뮬레이트해주고(그 유명한 앵그리버드도 box2d를 사용한것으로 알고 있다.) 이미지를 처리해주는 굉장히 훌륭한 엔진이다. cocos2d는 많은 게임들에 사용되고 있을만큼 그 사용성도 광범위 하므로, 게임을 개발하고자 마음먹었다면, 이참에 같이 설치해서 공부해두는것이 좋다. 물론 다음에 내가 만든 게임 코드들 하나 하나를 보면서 cocos2d를 사용중 봉착한 문제점, box2d엔진을 사용하다 만나게 된 여러 문제점들을 하나씩 짚고 정리할 예정이다.

먼저 coco2d를 설치해보자.
http://www.cocos2d-iphone.org/
여기로가서 stable버전을 다운로드 하고(현재 0.99.5 xcode4 지원안함.) 수작업으로 프로젝트에 맞춰서 사용하여도 되고, 최신 버전으로 다운받아서(1.0이상버전은xcode4지원) 프로젝트 생성할때 클릭 두번으로 쉽게 작업하여도 된다.

나는 0.99.3시절에 시작하여, 중간에 iOS버전을 두번 올리면서 개발환경도 두번업데이트 했다. 사실 아무것도 모르고 무턱대고 클릭하다 보니, 일이 커지게 되었으나, 막상 하고 나서 보니, 역시 최신 버전을 쓰기 잘했구나 싶을 정도로 많은 발전을 한것이 느껴졌다.

cocos2d를 다운받고 설치하면, 자동으로 xcode 템플릿이 설치된다.(xcode4의 경우는 반드시 1.0 이상 버전을 사용해야 설치됨)


설치하고나서, xcode를 실행시키고 새로운 프로젝트를 생성해보면 위와 같이 나온다. 제일 처음 나오는게 물리엔진을 사용하지 않는 cocos2d템플릿, 두번째 것은 cocos2d 와 물리엔진 box2d를 사용하는 템플릿, 마지막것은 다른 물리엔진인 chipmunk를 사용하는 템플릿이다.

그 용도에 맞게, 선택해서 프로젝트를 생성하면 기본적인 앱이 이미 만들어져서 나온다.
게임 성격이 물리엔진이 필요치 않다면, 당연히 cocos2d만 사용해서 만들도록 하는것이 좋다.

물리엔진이 무엇인지 잠깐 설명하면, 쉽게 말해서, 우리가 앵그리버드에 새들을 쏴 올리면, 그 새들이 곡선을 그리고 날아가고(중력과 힘의 영향을 받음) 그리고 다른 장애물이나 돼지에 부딪치거나 하면 튕기거나 하는데 이런 것들이 다 현실에서는 물리현상들이다. 이런것들을 일일이 개발자가 하나씩 계산해서 좌표를 직접 찍어줄수 있는데, 이런걸 미리 다 하나로 모아서 라이브러리화 해놓고, 그것들을 자연스럽고 쉽게 사용할수 있는 api들을 제공하는데 바로 이것을 물리엔진이라고 한다.



이글은 전혀 퇴고의 과정을 거치지 않는 정말 라이브한 글이다. 단순히 내가 겪은 과정을 무에서 시작해서 유를 만들어내는 과정을 정리하고, 그 과정중에 만난 시행착오들을 정리하는데 더 큰 의미를 두는 글이다.

다음 포스트는 cocos2d를 처음 사용할때 느끼는 당혹감에 대해서 이야기 하도록 하겠다.
나는 당혹감을 느끼고 나서, 비로소 편안해졌다.  오브젝티브 C  에 대해서는 꼭 필요한 경우가 아니면, 여러 설명을 하지 않을 예정이다.

-2편 끝-

 

'코딩하고 > iOS' 카테고리의 다른 글

iOS용 게임 개발기 -4.1-  (0) 2011.08.02
iOS용 게임 개발기 -4-  (0) 2011.08.01
iOS용 게임 개발기 -3.1-  (0) 2011.07.11
iOS용 게임 개발기 -3-  (0) 2011.07.11
iOS용 게임 개발기 -1-  (0) 2011.07.08
블로그 이미지

커뉴

이 세상에서 꿈 이상으로 확실한 것을, 인간은 가지고 있는 것일까?

,