일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- 데이터베이스
- 스레드
- Thread
- Stack
- Class함수
- 데이터타입
- 반복문
- Exception
- unity
- cocos2dx
- cocos2d-x
- db
- 입출력
- cocos2d
- c++게임엔진
- 동기화블럭
- 게임엔진
- 예외처리
- interface상속
- 상수변수
- java
- oracle
- c++
- Interface
- 문자열
- C/C++
- 프로그래밍
- 예외던지기
- singleton
- c#
- Today
- Total
목록cocos2dx (13)
초보 프로그램 개발자

cocos2d-x 에서 지원해주는 Label 과 Text 기록 Label과 Text의 사용방법은 대부분의 cocos2d 의 클래스 사용법과 비슷하다. // 폰트내용, 해당폰트(기본), 폰트사이즈 Label* lb = Label::createWithTTF("Label", "fonts/arial.ttf" , 50.0f); lb->setPosition(Vec2(CENTER.x, CENTER.y + 100)); lb->setColor(Color3B::WHITE); addChild(lb); Text* text = Text::create("Text", "fonts/arial.ttf", 50.0f); text->setColor(Color3B::WHITE); text->setPosition(Vec2(CENTER.x, ..
cocos2d-x 에서 제공하는 물리엔진에 PhysicsBody라는 클래스는 물리엔진 바디를 만들어 해당 노드에 넣어줄수 있다. heroNode = PlayerNode::create(); currentScene->addChild(heroNode); auto body = PhysicsBody::createBox(Size(50, 50)); body 사이즈 설정 body->setGravityEnable(false); // true = 중력존재, false = 중력x, 아래로떨어지지않음 body->setRotationEnable(false); // 다른 객체와 겹쳐도 돌지 않음(회전x) body->setCategoryBitmask(BITMASK_COLLISION_PLAYER); // 바디의 비트마스크 설정 bo..

cocos2D 의 PhsicsWorld 는 물리엔진을 적용해줄수 있는 곳이다. PhsicsWorld를 배우기 전까진 하나하나 구현해주었는데, 알고나니 신세계였다. Phsics 는 init() 이 아닌 onEnter() 에서 구현해주어야 한다. 선생님과 같이만든 Phsics에 주석으로 설명을 달아 기록하려고 한다. #include "PhsicsJoint.h" Region* Region::create(const Size& size, JointSceneType type) { auto ret = new Region(); if (ret && ret->init(size, type)) ret->autorelease(); else CC_SAFE_DELETE(ret); return ret; } bool Region::i..

cocos2D-X 에서 제공해주는 Particle 시스템이 있는데, 이곳에 들어가면 한눈에 볼수 있다. 출처 : http://www.effecthub.com/particle2dx Particle 클래스에는 (위의 그림 말고도 다른것도 있다.) Particle을 만드는 방법 또한 다른것들과 마찬가지이다. (이전에 출처에 있는 사이트 만드는 과제를 하던것을 가져왔다.) system = ParticleMeteor::create(); system->setPosition(CENTER.x - 300, CENTER.y); addChild(system); 똑같이 create로 만들어 위치시켜주면 된다. particle에 속도, 각도, 시간.... 등등 많은것을 설정해줄수 있으며, 참조한 사이트에 들어가 원하는 Part..

cocos2d 에서 지원해주는 UI로 슬라이더가 있다. Silder는 음량조절할때 움직이는 UI를 생각하면 된다. cocos2d에서 기본적인 리소스파일과 방법을 제시해준다. 출처 : https://docs.cocos.com/cocos2d-x/manual/en/ui_components/sliders.html?h=slider Slider · GitBook No results matching "" docs.cocos.com 사용법은 이렇다. #include "HelloWorldScene.h" Scene* HelloWorld::createScene() { return HelloWorld::create(); } bool HelloWorld::init() { if (!Scene::init()) return true..

cocos2d 에서 지원해주는 버튼 만들어주는 함수 이다. 버튼을 만들기 위해서는 include 해줘야 할것이 있는데, #include "ui/CocosGUI.h" 를 해줘야 한다. 헤더파일에 include 해주었다. #ifndef __HELLOWORLD_SCENE_H__ #define __HELLOWORLD_SCENE_H__ #include "cocos2d.h" #include "ui/CocosGUI.h" #define CENTER Vec2(1280/2, 720/2) using namespace cocos2d; using namespace cocos2d::ui; class HelloWorld : public Scene { public: static Scene* createScene(); virtual ..

이전 난이도조절 버튼을 클릭하면 PlayGame Scene이 시작되며 게임이 시작된다. 해당 칸을 클릭시 색이 변하며, 숫자를 입력할수 있게 된다. 숫자는 옆의 키패드같은 모양으로 클릭해서 넣을수 있다. Finish 버튼을 누르면 스도쿠가 성공인지 실패인지 화면에 3초 보여준뒤 사라지고, Replay 버튼을 누르면 난이도조절로 돌아가 다시 시작할수 있다. (Finish 안해도 가능) #include "stdafx.h" #include "PlayGame.h" Scene* PlayGame::createScene(int level) { return PlayGame::create(level); } PlayGame* PlayGame::create(int level){ auto ret = new PlayGame()..

학원 선생님께서 과제로 cocos2d-x로 스도쿠를 만들어보라고 하셔서 스도쿠를 만들어 보았다. 프로그래밍을 하기 시작전 어떻게 게임을 만들지 큰 틀 먼저 구상을 먼저 해봤다. 매번 선생님과 같이 게임을 만들다가 혼자 만드려고 하니 많이 해본 스도쿠이고, 별거 아니라 생각했지만 역시 하는것과 만드는것은 많이 달랐다... 첫시작에 대부분 게임이 그렇듯 메인 시작화면 -> 난이도선택 -> 게임시작 이렇게 구현을 하려고 생각하고 만들었다. [첫 화면인 MainScene] #include "stdafx.h" #include "MainScene.h" MainScene* MainScene::create() { auto ret = new MainScene(); if (ret && ret->init())ret->aut..

cocos2d-x 에서 키보드와 마우스,터치 이벤트 등록을 할수 있는데, 그중 키보드와 마우스 이벤트를 기록 키보드에서는 bind로 구현을 하였고, 마우스는 람다 형식으로 구현을 하였다. 정석으로 하는것은 bind로 구현하는것으로 배웠다. SceneIngame::onKeyReleased는 cocos2d에서 지원해주는 함수는 아니고 SceneIngame class를 만들고나서 만든 함수이다. 마우스는 따로 키지정을 해줄필요없이, 눌렀는가, 뗏는가, 움직이는가 로 나눌수 있고 키보드는 키마다 지정해줘야 한다. 첫번째 사진의 onMouseDown 에서 event->getLocationInView(); 함수는 해당 마우스위치의 좌표를 가져오는 함수로 자주 사용되어 적어두었다. ★ 이벤트 등록을 한뒤에 꼭 밑에 ..