iDev/Cocos2D 41

[cocos2d] 소스 하나로 iOS, Mac, Android로 개발하기

하나의 프로젝트에서 여러개의 플랫폼용으로 빌드 할 때, 아래 코드를 잘 조합해서 하면 하나의 소스로 여러개의 플렛폼으로 빌드를 할 수 있다. 간단하게 설명.1. workspace를 만든다. 2. cocos2d iOS Project를 만든다. Add to, Group(처음 생성하는 프로젝트면 없을 수도 있다) 위치를 workspace root로 정한다. 3. cocos2d Mac Project를 만든다. Add to, Group 위치를 workspace root로 정한다. 4. 하나의 프로젝트에서 소스를 생성하고 다른 프로젝트로 옮길 때는 Project > Target > Build Phases > Compile Sources > + > Add Other ... > 원하는 소스코드 추가(그냥 드래그 앤 드..

iDev/Cocos2D 2014.03.09

다윤이와 함께 게임 만들기 - 게임 개발 중

지난 이야기...; 다윤이와 함께 게임 만들기 - 게임 기획 몇 달이 지난건지 아무튼 지난 11월 말에 시작해서 한동안 정신이 없어서 방치하다가, 최근에 시간도 조금 생기고 cocos2d v3가 나와서 이리저리 필이 받아서 다시 진행. 이미지 그려준게 너무 양이 적어서 뭔가 만들기 힘들다. 그리고 그림은 흑백이다. 점수만 넣고 배경 화면만 넣으면 대충 마무리 되는 듯. 사운드는 아무거나 하나 따서 사용해야겠다. 내일 쯤 다윤이에게 선물로 줘야지. :-)

iDev/Cocos2D 2014.03.07

cocos2d v3 for Mac, 레티나 버그 패치

* 그냥 급하게 지원하게 코드만 수정한 버전입니다. 공식 버전에서 곧 지원될때 까지만 사용 바랍니다. 전체 코드를 몰라서 그냥 후다닥 지원 가능하게만 했은 성능상에 문제가 있을 수도 있습니다. 어쩌다 보니 제 코드를 pull request 했더니 merge 되었네요. https://github.com/cocos2d/cocos2d-iphone/commit/1caaec05b967160c342fa92a9033909ab11f6edb v3 rc2에서는 풀스크린을 하면 전체 확대가 안되었습니다. 이런 문제를 rc3에서 해결했는데 이것 때문에 다른 버그가 생겨버렸습니다.cocos2d v3 rc 3에서 레니타 맥에 대한 패치가 있었는데요. 풀스크린상에는 문제가 없는데 작은 화면상에서는 화면이 2배 확대되어 나오는 버그..

iDev/Cocos2D 2014.03.06

cocos2d v3 for mac keyboard 입력 패치

* 그냥 급하게 지원하게 코드만 수정한 버전입니다. 공식 버전에서 곧 지원될때 까지만 사용 바랍니다. 전체 코드를 몰라서 그냥 후다닥 Copy&Paste로 지원 가능하게만 했은 성능상에 문제가 있을 수도 있습니다. v2까지는 키보드 델리게이트를 사용해서 잘 먹었는데, 왜 v3에서는 빠졌는지 모르겠습니다. 추후 버전에서 지원이 될 거라고 생각합니다. Mac 에서는 기본적으로 키보드 게임이 어울리니까요. 기본 템플레이트 파일을 빌드해서 키보드를 누르면 '딩' '딩' 소리만 스피커에서 나옵니다. 키 이벤트를 못 받는다는 소리라고 하네요. NSWindow에서 입력을 처리 하도록 할려니 잘 모르겠습니다. 그래서 cocos2d를 까니 mouse&touch 핸들러가 있어서 살짝 수정했습니다. CCGLView.m 파일..

iDev/Cocos2D 2014.03.05

cocos2d v3에서 collision detection 하기

cocos2d v3에는 기본적으로 Chimpunk가 내장되어 있다. 충돌을 했을 때 이벤트 처리를 하기 위해서 이리저리 삽질하다가 알아낸 결과. 이상하게 구글링을 해도 제대로된게 안나온다. 헤더 파일에 자세하게 나와있는데 감이 안오다가. 구현하고 나서 헤더 파일을 보니 이제야 알겠음. physicsBody에서 collisionGroup이 같으면 같은놈으로 취급하여 충돌시키지 않는다. 반대로 생각해서 계속해서 통과해서 오랜시간 삽질. 기본적으로 nil값으로 무조건 충돌시킨다. 가장중요한건 collisionType. collisionType 에 부여된 이름에 따라서 delegate에서 호출하는 메소드 명이 달라진다. 여기서도 오랜시간 삽질. 기본값은 default 이다. 하지만 ccPhysicsCollisi..

iDev/Cocos2D 2014.03.02

Apportable로 cocos2d 게임을 안드로이드 포팅시 해상도 문제 해결 방법

cocos2d-iPhone 게임을 안드로이드로 포팅시 그냥 아무런 옵션 없이 컴파일을 하면 갤럭시 노트 3와 같은 고해상도 단말에서는 아주 작게 나타난다. 이것을 해겨 하기 위해서 아래 코드를 앱이 실행 될 때 넣어주면 된다. -(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { #ifdef ANDROID [UIScreen mainScreen].currentMode = [UIScreenMode emulatedMode:UIScreenBestEmulatedMode]; #endif... }

iDev/Cocos2D 2014.02.28

Flappy Bird 따라 만들기 (손) 연재 예정 - cocos2d v3 RC1

열풍 적인 인기를 얻고 있는 Flappy Bird ... 광고가 너무 자주 나와서! cocos2d v3 를 공부할 겸해서 따라 만들어 보기로 했습니다. * 이미지 및 저작권은 원 개발자에게 있습니다. 개인적인 습작 용도로만 사용하세요. 직접 배포할 때는 이미지는 제외합니다. * 저는 소스코드 권리만 있습니다. ;-) * 한 5일정도 출근전 퇴근후 해서 야금야금 코딩한게 완성. :-) - 여기서 소소한 광고 - 드래곤 라이더 따라 만들기! 를 사시면 쉬운 게임은 그냥 만들 수 있어요~ -_ -;https://itunes.apple.com/us/book/deulaegon-laideo-mandeulgi/id735921791?mt=11http://www.huddlebooks.com/?p=1310 Flappy B..

iDev/Cocos2D 2014.02.09 (4)

iPhone 5 전용 배경화면 패치

iPhone 5 전용 배경화면 패치 iPhone 4S, iPhone 4에서는 아무런 문제가 없다. iOS에서는 *.png와 *@2x.png 로 이미지를 레티나용이냐 아니냐로 구분한다. cocos2d에서는 @2x 대신에 -hd를 사용하여 구분한다. iPhone 5는 세로가 1136이고 iPhone 4S이하는 960이기 때문에 배경화면을 기존 -hd로 설정을 하면 공백이 생긴다. 해결을 위해서 cocos2d를 살짝 수정을 해서 iPhone 5전용 이미지를 지원하도록 패치하도록 한다. “AppDelegate.m” 파일로 이동을 한다. (BOOL)application:didFinishLaunchingWithOptions:launchOptions 메소드에서 아래 코드 부분을 찾는다. [sharedFileUtils..

iDev/Cocos2D 2013.03.17