본문 바로가기

게임개발팁

cocos3D 설치하기

1. 다운로드
현재 cocos3D의 버전은 0.6.1입니다. 아래의 주소에서 cocos3D를 다운로드 하세요.

2. 템플릿 설치
다운로드 받은 파일을 편한 곳에 압축을 풉니다. 저는 루트에서 /DevLib/cocos3d 0.6.1 폴더에 압축을 풀었습니다.

압축을 푼 후 cocos3D  프로젝트를 만들기 위해서 프로젝트 템플릿을 만들어야 합니다. 템플릿 설치 방법은 아래와 같습니다. cocos2d-dist-dir 은 cocos3D 가 cocos2D의 확장이기 때문에 cocos3D를 적용할  cocos2D의 설치 장소를 묻는 것입니다.
./install-cocos3d.sh [options] -2 "cocos2d-dist-dir"
저는 cocos2d-iphone-1.0.1 을 사용하니 아래처럼 설치하였습니다.

sudo ./install-cocos3d.sh -u -f -2 /DevLibs/cocos2d-iphone-1.0.1
-f 는 예전에 cocos3D의 0.5.4 버전 템플릿을 설치한 적이 있기 때문에 다시 덮어쓰기 위해서 옵션으로 설정했습니다.

옵션과 cocos2d의 경로가 맞다면 아래와 같은 메세지를 보여주고 템플릿을 설치 후 종료 됩니다.

cocos3d installer

Copying coocs2d libraries to workspace
...copying cocos2d files
...copying cocos2d dependency files
...copying CocosDenshion files
...copying cocoslive files
...copying cocoslive dependency files
done!
...creating Xcode 4 cocos3d template folder


Installing Xcode 4 cocos3d iOS template
----------------------------------------------------

...creating destination directory: /Users/softdna/Library/Developer/Xcode/Templates/cocos3d/cocos3d Application.xctemplate
...copying cocos3d Application template files
...creating destination directory: /Users/softdna/Library/Developer/Xcode/Templates/cocos3d/cocos3d-base.xctemplate
...copying cocos3d-base template files
...creating destination directory: /Users/softdna/Library/Developer/Xcode/Templates/cocos3d/cocos3d-lib.xctemplate
...copying cocos3d-lib template files
...copying cocos3d files to cocos3d-lib template
done!

3. 템플릿 설치 확인
템플릿 설치를 확인해 봅시다. 사용하고 있는 XCode를 실행합니다. 저는 XCode 4.x 를 사용하고 있습니다. 새 프로젝트 생성을 하면 아래 화면처럼 coco3d 템플릿이 설치된 것을 확인할 수 있습니다.



4. 데모 프로젝트 생성
HelloCoco3D 프로젝트를 생성해 보겠습니다.

생성 후 빌드 실행을 하면 아래처럼 Hello World 글자가 회전하는 화면이 나옵니다.




5. 증강현실
cocos3D는 실시간 카메라 영상과 2D 또는 3D 그래픽스를 쉽게 혼합할 수 있도록  환경을 제공해 줍니다. AR 성격의 게임을 만들 때 쉽게 사용할 수 있겠네요.

현재 만든 프로젝트의 앱델리게이트를 선택합니다. 선택 후applicationDidFinishLaunching 메서드의 118~119 라인으로 이동합니다. 그리고 아래처럼 코드를 작성해 주세요. 굵은 색으로 표시한 라인만 추가하면 됩니다.

- (void) applicationDidFinishLaunching:(UIApplication*)application
{
      ...

    viewController = [[CCNodeController controller] retain];
    viewController.doesAutoRotate = YES;
    if(viewController.isDeviceCameraAvailable)
        viewController.isOverlayingDeviceCamera = YES;
    [viewController runSceneOnNode: mainLayer];

     ....
}

디바이스가 카메라를 지원하는지 검사한 후 지원하면 카메라뷰를 현재 OpenGL ES 레이어에 오버레이 합니다. 앱을 실행하면 아래처럼 나옵니다 :)