iDev/Cocos2D 41

Cocos2d v3.3 화면 방향 전환

Cocos2d v3.3 화면 방향 전환아직 v3.3은 베타 버전이므로 방식이 달라질 수 있습니다.cocos2d-swift에서는 버전이 마이너 업데이트 인데도 불구하고, 0.1이 올라가면 올라갈수록 기능도 많이 생기고 내부 구조도 많이 바뀌고 있다. 편하자고 구 버전만 사용할 수 없다. v3.3에서는 Metal renderer, Packages, Android 이렇게 아주 막강한 기능이 추가 될 예정이다. 또한 화면 방향 설정 하는것도 바뀌었다. 아무리 Targets > Deployment Info > Device Orientation 에서 Portrait 로 설정을 해도 세로 화면으로 고정되질 않는다. v3.3에서는 안드로이드를 Apportable로 포팅하는게 아니라, Xcode에서 바로 빌드를 할 수 ..

iDev/Cocos2D 2014.10.04

cocos2d에 UIGesture 추가하기

RayWenderlich의 캔디 크러시 따라 만들기를 SpriteKit에서 cocos2d v3로 포팅을 하고 있는데 UIGesture 부분이 나와서 삽질 아닌 삽질을 공유한다. 딱 한가지만 알아두면 된다. cocos2d에서 RootViewController(UIViewController)는 CCDirector이다. - (void)showGameOver { self.gameOverPanel.visible = YES; self.myscene.userInteractionEnabled = NO; self.tapGestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(hideGameOver)]; UIViewCon..

iDev/Cocos2D 2014.05.22

cocos2d v3에서 Implicit declaration of function 'ccDrawColor4B' is invalid in C99 해결 방법

2012년 6월 8일 cocos2d에서 implicit declaration of ‘glColor4ub’ is invalid in c99 해결방법 글로 블로깅을 한적이 있다. 저 때는 v1->v2로 변경을 하는 과정에서 생긴 이슈 였는데, v2->v3로 갈려니 또 비슷한 에러가 발생한다. Implicit declaration of function 'ccDrawColor4B' is invalid in C99 에러가 뜬다. 간단하게 CCDrawingPrimitives.h 헤더파일만 임포트 하면 해결된다. 삽질 30분 해결 완료. #import "CCDrawingPrimitives.h" - (void) draw{ glLineWidth(maxSize.height); ccDrawColor4B(255, 255, 2..

iDev/Cocos2D 2014.03.24

cocos2d Apportable 사용하기 (손)연재 예정

이것 저것 삽질 하면서 알아낸 AdMob, Google Play Game Service, Leader Board, Flurry, Backbutton 구현 방법을 하나씩 연재 해볼까 합니다. $1000/년 할 때는 생각도 못 했는데, 어제 $99/월 로 바뀌어서 한 달 결제 하고 이것 저것 삽질을 해봤습니다. 도움이 되시면 나중에 밥 한끼, 게임이 대박 나면 맛난거 사주세요. :-) 긴급하게 정보를 얻고 싶으면 더 맛난 것으로... 사실 어려운것은 하나도 없는데 구글링해도 잘 안나오는 정보라서 몇 시간씩 삽질을 해서 알아냈습니다.

iDev/Cocos2D 2014.03.22

GameController 사용시 화면 꺼짐 모드 방지

일반적인 스마트폰 게임은 화면을 터치 하는 방식이라 idle 모드가 활성화 되지 않습니다. 그러나 iOS 7 GameController를 사용하다 보면 화면의 터치를 하는 경우가 줄어들어서 화면이 idle 모드로 진입해서 어두워지고 결국에는 꺼집니다. 블루 투스 콘트롤러가 나오면 이런것을 애플에서 직접 프레임 워크 내부에 넣을 것 같기도 합니다. 하지만 아직 적용이 안되어 있으니 아래와 같이 직접 구현해야합니다. - (void)gameControllerDidConnect:(NSNotification *)notification { GCController *controller = notification.object; // NSLog(@"Connected game controller: %@", controll..

iDev/Cocos2D 2014.03.22

cocos2d v3 RC3, Apportable 안드로이드 Back Button 구현하기

안드로이드는 보통 프로세스를 종료하기 위해서 백 버튼을 사용합니다. Apportable으로 안드로이드 포팅시 기본적으로 백 버튼은 아무런 반응도 하지 않습니다. 아래 링크를 참조해서 구현 할려니 뭔가 제대로 되지 않습니다. 다들 v3 미만의 버전의 가이드 인것 같습니다. http://docs.apportable.com/uikit-extensions.html#uiresponder구글링을 해보니 저와 비슷한 내용들이 많습니다.https://groups.google.com/forum/#!topic/apportable-discuss/992hX9vEdTwhttps://groups.google.com/forum/#!topic/apportable-discuss/V9lMn188jqE 그나마 힌트를 얻은게 ViewCon..

iDev/Cocos2D 2014.03.19

cocos2d mac에서 현재 윈도우 화면 캡쳐하기

현재 윈도우 화면을 타이틀 바, 그림자 포함해서 화면 캡쳐하는 방법. TinyPigMacAppDelegate *delegate = (TinyPigMacAppDelegate *)[NSApplication sharedApplication].delegate; CGWindowID windowID = (CGWindowID)[[delegate window] windowNumber]; CGWindowImageOption imageOptions = kCGWindowImageDefault; CGWindowListOption singleWindowListOptions = kCGWindowListOptionIncludingWindow; CGRect imageBounds = CGRectNull; CGImageRef windo..

iDev/Cocos2D 2014.03.15

Apportable Android에 Admob 적용하기

Apportable을 사용해서 cocos2d-iPhone 앱을 안드로이드 앱으로 빌드하는 과정에서 가장 아쉬운게 AdMob 광고였다. 아무리 구글링을 해봐도 제대로된 해답은 없고, Starter Kit에서는 지원이 안되니 BridgeKit을 사용해서 직접 Android Java를 코딩해서 직접 붙이는 수 밖에 없었다. Apportable 에서 직접 AdNetworkTests http://docs.apportable.com/sample-apps.html#adnetworktests 광고 관련 셈플 프로젝트가 있는데 문구에는 Indie 버전만 지원한다고 나온다. 그래서 bulid를 해도 AdMob은 지원을 안하니 계속해서 에러가 난다. 그러다가 공식 문서에서 발견한 한 줄기 빛과 같은 문구. Revmob an..

iDev/Cocos2D 2014.03.15