최근 cocos2d 0.99.5 beta3 를 죽~ 훑어보니 레티나 디스플레이 지원과
여러 자잘한 클래스 변화가 있었습니다.
iOS 4.1 이상에서만 동작하기 때문에 Xcode 3.2.4 업그레이드 필수입니다.
특히 CCTouchDispatcher 요놈이 말썽인데.. 어떻게 해결할지 고민입니다..
제대로 임포트 되지 않고(Availability.h 문제인듯) 골치 썪는 중..

자잘한 문제들 해결 할 때까지 cocos2d 포스팅은 멈출듯.. (몇 개나 올렸다고.. ㅈㅅ;;)

해결.. 내가 생성한 .h 파일에 cocos2d.h 외에 <UIKit/UIKit.h> 임포트 하니 잘 된다 -_-
하지만 오토 컴플리션은 안된다 -_-.. 왜지???? 도대체 왜....

(추가)
태그를 달아놓고 필수로 구현해야되는 메서드도 안적어놔서 죄송합니다.

프로토콜 관련 내용 검색하시면 여러 정보들 나오는데요,
필수로 오버라이딩 해야되는 메서드가 있습니다. (안하면 빈 내용이라 에러)
그 외엔 선택적 요소들이기 때문에 해도 되고 안해도 됩니다.

필수 메서드는 - (BOOL)ccTouchBegan:(UITouch)touch ... 입니다.
터치를 뗄 때 반응하게 하고 싶으면 - (void)ccTouchEdned:(UITouch)touch.. 에 구현하면 되구요,
began의 return 값은 YES만 적어주면 됩니다. (구현 해야되므로)

그 외의 @optional 메서드는 - (void)ccTouchMoved:(UITouch)touch... 등이 있습니다.

CCTouchDispatcher 또한 CCDirector처럼 싱글톤 객체이기 때문에 클래스 메서드를 제공합니다.
따라서 CCDirector 처럼 (CCDirector:sharedDirector | CCTouchDispatcher:sharedDispatcher) 공용 디스패처를 사용면 됩니다.

터치를 사용할 레이어의 init 메서드 첫 줄에 아래와 같이 하면 터치에 반응하게 됩니다.
self.isTouchEnabled = YES;

터치를 사용할 메서드에는 아래와 같이 적어줍니다. (init 내부나 다른 곳에서나 싱글톤의 클래스 메서드라 상관 없습니다.)
[[CCTouchDispatcher sharedDispatcher] addTargetedDelegate:self ...];

지금 윈도우라서 Xcode 의 오토컴플리션을 사용할 수 없기 때문에 ... 으로 적어뒀습니다 양해부탁;

그럼 화이팅!

───────────────────────────────────────────────────────

같은 고민에 빠진 양키들 ㅋㅋㅋㅋㅋㅋㅋ
http://www.cocos2d-iphone.org/forum/topic/9773

'iOS > Cocos2d Tutorials' 카테고리의 다른 글

cocos2d SimpleAudioEngine  (0) 2010.11.03
메뉴 화면 만들기~!  (0) 2010.10.24
Hello World  (0) 2010.09.17
cocos2d setup guide  (0) 2010.09.01
Tutorials 포스팅 예정..  (0) 2010.08.31
Posted by 독뽀
,