본문 바로가기

프로그래밍/cocos2d-x

(8)
cocos2d-x 3.0 터치이벤트 정리 cocos2d-x3.0에서는 터치이벤트 다루는 방법이 2.X 버전과 많이 달라졌다.setTouchEnabled 함수가 deprecate 되고 EventListener 를 생성해서 dispatcher 에 등록하는 방법으로 바뀌었다.인터페이스와 같은 사용방법이므로 모든 메소드를 구현해 주어야 한다. #ads_1 1. 싱글터치 (타겟터치) class HelloWorld: public cocos2d::LayerColor{ //... virtual bool onTouchBegan(Touch* touch, Event* unused_event); virtual void onTouchMoved(Touch* touch, Event* unused_event); virtual void onTouchCancelled(Touc..
졸라 어려운 게임 어려운 게임 #ads_1 https://play.google.com/store/apps/details?id=com.plug.game #ads_2
CCNotification 을 이용한 메세지 송수신과 콜백함수 cocos2d-x 에서는 윈도우의 sendMessage 나 postMessage 와 같이 메세지 송,수신 방법으로 콜백을 처리할 수 있다.인터페이스를 만들어 구현한 다음 이벤트핸들러를 세팅하는 복잡한 구현을 간단하게 처리할 수 있다.CCNotification 이 이런 방법을 제공한다.#ads_1- 메세지를 수신하는 측 -메세지를 받을 곳에서 메세지수신자를 등록한다.bool init(){.... CCNotificationCenter::sharedNotificationCenter()->addObserver(this, callfuncO_selector(ActionLayer::receiveMessage), "hello", NULL); //메세지박스에서 메세지를 꺼내 hello 라는 글자가 들어있으면 receiv..
미사일 터렛을 터치한 곳쪽으로 바라보게 회전하기 미사일터렛을 터치한 곳을 바라보도록 회전시키는 부분이다. 산수도 제대로 공부 안 한 덕에 이해가 빨리 안되어서 정리해 둔다.#ads_1// location //터치한 좌표 // player // 터렛 //shootVector = 터치좌표 - 터렛좌표 CCPoint shootVector = ccpSub(location, player->getPosition()); //좌표값으로 각도를 구한다(라디안값으로 리턴됨) float radAngle = ccpToAngle(shootVector); //라디안값을 degree로 변환한다. (목표각도) float degreeAngle = CC_RADIAN_TO_DEGREES(-1 * radAngle); //현재각도와 목표각도의 각도차이를 구한다. //CCRotateTo 액..
cocos2d-x 클래스 다이어그램 Cocos2d-x Class Diagram클래스 계층도가 궁금해 몇시간들여 분석해 봤습니다. 2.1.4 기준입니다.클릭해서 보세요. #ads_1#ads_1
visual studio 에서 CCLog 출력하기 Visual Studio 에서 CCLog 출력하기Visual Studio 에서 디폴트로 만들어지는 프로젝트로 CCLog를 실행하면 출력되지 않는다.왜냐하면 CCLog는 printf 함수를 사용해 콘솔창에 결과를 찍는 함수인데 main.cpp의 진입함수가 윈도우즈의 _tWinMain() 함수로 되어 있어 콘솔창이 나타나지 않고 실행되기 때문이다. 아래처럼 main.cpp 의 내용을 바꾸어 준다.#ads_1#include "main.h" #include "AppDelegate.h" #include "CCEGLView.h" USING_NS_CC; // uncomment below line, open debug console // #define USE_WIN32_CONSOLE /* 모두 주석처리한다 int AP..
build_native.sh 에서 새로운 클래스 인식을 못할때 해당 프로젝트폴더에서 proj.android 폴더안에 Android.mk 파일을 에디터로 열어본다.아래처럼 cpp파일을 추가하는 부분이 있다.#ads_1LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := game_shared LOCAL_MODULE_FILENAME := libgame LOCAL_SRC_FILES := hellocpp/main.cpp \ ../../Classes/AppDelegate.cpp \ ../../Classes/HelloWorldScene.cpp \ ../../Classes/TouchPoint.cpp LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes LOCAL_WHOLE_STATI..
cocos2dx를 비주얼스튜디오에서 작업하기 위한 세팅 요약정리 #ads_11. JDK 설치한다설치 후 Path 설정JAVA_HOME : jdk루트CLASS_PATH : jdk 루트 / bin 2. CygWin 설치CygWin은 윈도우상에서 리눅스 소스를 컴파일해주는 프로그램 Devel항목과 Editor항목을 Install로 변경 후 설치 (엄청 오래걸림) Path 설정cygwin/bincygwin/usr/include 3. 안드로이드 SDK 설치Path 설정sdk 루트 / tools 4. 이클립스 설치안드로이드 관련 PlugIn 설치Help -> Install New Software..플러그인 주소 : http://dl-ssl.google.com/android/eclipse/ SDK Manager 열고 아래 항목 설치Tools 항목 선택안드로이드 버전 선택 5. 안..