HelloWorld Project 수정 HelloWorld 프로젝트를 수정하여 기본적인 Sprite를 다루어 본다. 이전 강의에서 배웠던 것을 기초로 Cocos2d-x 새 프로젝트를 생성한다. 프로젝트 ...
Go to lecture
Test Action 지난 강에서 제작한 HelloBird 프로젝트를 다음과 같이 수정한다. bool HelloWorld::init() { if (!Layer::init()) return false; Sprite* firstSprite = ...
Go to lecture
Bounce Ball Project #1 다음의 Resource 파일을 Resource에 복사 Download: Res02.zip HelloWorldScene.h 파일을 다음과 같이 수정 #define FORCE 200.0f #include "cocos2d.h" ...
Go to lecture
Touch Event Project Touch 라는 프로젝트를 생성하고 HelloWorldScene을 다음과 같이 수정 #ifndef __HELLOWORLD_SCENE_H__ #define __HELLOWORLD_SCENE_H__ #define COCOS2D_DEBUG 1 #include "cocos2d.h" ...
Go to lecture
Scene Transition Project SceneTrans 라는 새 프로젝트 생성 다음의 Resource 파일을 압축 해제하여 Resource 디렉토리에 복사 Download: Res03.zip 다음과 같이 클래스 ...
Go to lecture
Keyboard Event Handling Project Keyboard 라는 프로젝트를 생성 아래의 Resource 파일을 압축 해제하여 Resource에 위치 Download: Res01.zip HelloWorldScene을 다음과 같이 ...
Go to lecture
Basic Data Types cocos2d::Vec2 2차원 벡터, x값과 y값을 가지고 있다. Vec2는 일반적으로 정적 타입으로 선언되고 정적 타입으로 Assign된다. Vec2는 2차원 ...
Go to lecture
Cocos2d-x For Windows/Android환경 구축 Cocos2d-x 는 개발 환경을 위해 여러가지 시스템을 필요로 한다. Cocos2d-x SDK 다운로드 및 설치 cocos2d-x는 다음의 ...
Go to lecture
Director Cocos2d-x의 전체 움직임을 총괄하는 Signetone Instance (Singletone : 한 애플리케이션에서 하나 이상 인스턴스가 존재하지 않게 만드는 디자인) Director는 OpenGLView와 ...
Go to lecture
Scale float scale Node는 setScale 을 통해 자신의 크기를 변경할 수 있다. (배율) Node는 getScale 을 통해 자신의 현재 크기를 ...
Go to lecture
DrawNode : Node Cocos2d-x 의 일반 Drawing 개체. 어떤 UI, 게임툴이 제공하는 것 과 마찬가지로 Cocos2d-x 도 기본적인 드로잉 메서드를 ...
Go to lecture
cosos2d::ui::SizeType Modifier and Type | Method & Description Members ABSOLUTE | 절대크기 PERCENT | 부모 노드의 크기에 비례한 크기 Widget ...
Go to lecture
Action 어떠한 노드에 특별한 효과를 주는일을 Cocos2d-x 에서는 Action이라고 한다. 가능한 효과와 가능하지 않은 효과가 존재한다. 이번에는 여러가지 기초 Action에 ...
Go to lecture
Event Cocos2d-x는 사용자로부터 어떠한 행동이 발생한 것을 Event라고 정의한다. 또한 이를 적절하게 처리해주는것을 EventHandling(이벤트 핸들링) 이라고 한다. Event Data Types ...
Go to lecture
Scheduler Scheduler는 어떠한 노드에서 주기적으로 실행되는 함수이다. 일반적으로 게임 엔진은 스케줄러를 통해 충돌, 물리엔진, 애니메이션 구현 등을 하게 된다. Regist ...
Go to lecture
Cocos2d-x Sound Engine CocosDension::SimpleAudioEngine 간편하게 오디오를 구축할 수 있는 SingleTone 클래스 Header File namespace CocosDension; #include "SimpleAudioEngine.h" Modifier and Type ...
Go to lecture
Cocos2d-x Data save cocos2d::UserDefault 사용하기 쉬운 가장 기본적인 데이터 저장 방법 간편하다 / 느리다 (실제로 UserDefault를 통해 데이터를 실시간 저장할 ...
Go to lecture
ValueMap Data Save Cocos2d::Data cocos2d-x에서 사용하기 편리하도록 char*(byte array)를 관리해준다. 이 클래스 내부에는 char*(byte array)가 존재한다. 일반적으로 stack인스턴스로 사용한다. Modifier ...
Go to lecture
FileUtils FileUtils는 크게 2가지 파트로 나뉘어 있다. SearchPath등록과 File I/O파트로 나눌 수 있겠는데. 이 부분에서는 File I/O를 위한 부분만을 확인하도록 ...
Go to lecture
CC_CALLBACK( ... ) std::bind 를 사용하기 위해서는 많은 내용을 의미없이 타이핑해야한다. (std::placeholders 라던가 ...) 그러한 코딩 노가다를 줄이기 위한 간단한 ...
Go to lecture
Node Inherit Cocos2d-x에서 노드를 상속하고 확장해야 할 경우 (일반적으로 새로운 Scene을 포함하는 레이어를 제작 할 경우 등)에는 다음과 같은 코딩 ...
Go to lecture
Localization Text 기본적으로 C++ 프로젝트는 C++ 소스 파일을 어떻게 저장하느냐, 운영체제마다 어떻게 컴파일 하느냐에 따라 문자열 셋이 달라진다. 따라서 한중일 ...
Go to lecture
Layout (Widget) cocos2d-x 에서는 위젯(ui 노드) 배치의 방법을 도와주는 정형화된 틀이 존재한다. 이를 가능하게 해주는 것이 Layout이다. 중요 : Layout은 ...
Go to lecture
Scale9Sprite 모든 UI 디자인이 그렇듯, UI 가 비트맵일 경우, 확대 / 축소 시 계단현상이 발생하고 품질이 저하될 뿐만 아니라. 기존에 ...
Go to lecture
ScrollView : Widget 상, 하, 좌, 우 등으로 뷰의 크기가 화면보다 큰 개체를 좌우로 이동하여 잘린 형태의 부분만 보여주는 뷰의 ...
Go to lecture
ListView : ScrollView ScrollView를 상속받은, 일반적으로 세로로 View들이 늘어서 있는 형태를 제공하며, 역시 터치나 스크롤링을 할 수 있는 인터페이스를 제공한다 ...
Go to lecture
PageView : ListView 좌, 우로 움직이되 뷰의 크기만큼 한꺼번에 움직일 수 있는 ScrollView, 페이지들이 여러개 존재하는것 처럼 움직일 수 있는 ...
Go to lecture
Node Masking 마스킹이란 어떤 비트맵 노드를 다른 비트맵 노드로 감싸, 감싼 비트맵 노드의 투명도에 비례해서 나타나거나 나타나지 않거나 하게 해주는 ...
Go to lecture
TextureCache & Texture2D TextureCache는 읽어온 비트맵 텍스쳐를 관리하는 SingleTone 인스턴스이다. Texture2D는 읽어온 2D 텍스쳐를 컨트롤하는 클래스이다. Sprite, Button등 비트맵을 사용하는 ...
Go to lecture
Particle System Particle System은 입자를 표현하는 방법이다. Cocos2d-x에서는 입자를 표현하기 위한 파티클 시스템을 제공해주며, 이 파티클 시스템(2D)를 통해 다양한 효과 ...
Go to lecture
Particle System (2D) - 2 이전강의에서는 파티클 시스템의 프리셋을 활용하여 파티클을 제작해 보았다. 이번에는 파티클 시스템의 프리셋 혹은 프리셋을 사용하지 ...
Go to lecture
Network Cocos2d-x에서는 네트워크 통신을 위한 간단한 인터페이스를 제공한다. 이 인터페이스를 이용하면 서버-클라이언트 통신이 가능하게 되며, 필요한 정보 혹은 데이터를 네트워크에서 ...
Go to lecture
Network (JSON Format) JSON 이란 JavaScript Object Notation의 약자로 사람이 읽고 쓰기에 용이하며 경량의 데이터 타입인데, 기계가 분석하고 생성하기에도 편한 ...
Go to lecture
Memory Management Cocos2d-x의 모든 Node, Action, Widget, 은 Ref를 상속받아 만들어져 있고 이 Ref는 메모리 관리를 위한 특별한 시스템에 등록되는데, ...
Go to lecture
cocos2d::Vector cocos2d::Vector는 std::vector와 동일한 방법으로 사용할 수 있는 템플릿 클래스이다. cocos2d::Vector는 std::vector와 유사하나, 결정적으로 자동으로 메모리 관리를 해주는데 에 차별점이 ...
Go to lecture
Resolution Policy / Display System Cocos2d-x 는 다양한 디스플레이 시스템을 제공한다. 디스플레이 시스템을 통해 여러가지 해상도, 종-횡비 디스플레이에 대응할 수 ...
Go to lecture
Parallax Scrolling Parallax : 시차, 관측 위치에 따른 물체나 방향의 차이 1940년대부터 전통적인 애니메이션이나 게임에서 사용된 기법. 화면을 구성하는 이미지들의 ...
Go to lecture
Tilemap Tilemap은 Cocos2d-x에서 타일형식 맵을 읽어들이기 위한 노드이다. Cocos2d-x에서는 특별히 TMX확장자를 갖는 맵을 읽어들이는데. 이 파일을 만들기 위한 툴 중 ...
Go to lecture
TMXTiledMap Tiled로 작성한 Map을 Cocos2d-x에 적용하기 위한 Node *제한사항 : 하나의 레이어에 여러가지의 Tileset이 적용된 Tmx는 지원하지 못한다. TMX 좌표는 ...
Go to lecture
GL_BLEND Cocos2d-x에서는 OpenGL Blend를 제공한다. 기본적으로 GL_FUNC_ADD Equation만을 제공한다. BlendFunc Color를 갖는 Node는 모두 setBlendFunc( ... ) 라는 함수가 존재한다 ...
Go to lecture
Physics Cocos2d-x에서는 기본적으로 Chipmunk라는 2d-3d 물리엔진을 제공한다. 기존에는 Box2d를 사용했으나. 성능상의 문제로 Chipmunk를 기본 물리엔진으로 채택하였다. 용어 Moment : Moment ...
Go to lecture
PhysicsShape 물리법칙을 적용할 도형이 된다. 일반적으로 혼자서 생성되지 않고, PhysicsBody에서 자동으로 생성하거나, PhysicsBody에 알맞은 Parameter를 통해 작성된다. PhysicsShape는 하나의 PhysicsBody를 ...
Go to lecture
Experiment 여러가지 물리 작용 실험 물리 작용 실험을 위해 아래와 같은 2차원 지형을 작성한다. void HelloWorld::makeTerrain(){ PhysicsWorld* world = getScene()->getPhysicsWorld(); ...
Go to lecture
Physics Experiment #2 void HelloWorld::onEnter(){ Layer::onEnter(); PhysicsWorld* world = getScene()->getPhysicsWorld(); world->setDebugDrawMask(PhysicsWorld::DEBUGDRAW_ALL); PhysicsBody* body; Node* node; body = PhysicsBody::createEdgeBox(Size(500, 400)); node ...
Go to lecture
PhysicsJoint PhysicsJoint는 두개의 PhysicsBody를 연결하는 물리개념이다. 줄에 매달린 동전과 줄을 매달고 있는 못 정도로 생각할 수 있다. 서로의 Body에게 각각의 ...
Go to lecture
Joint (각 전달) PhysicsJointRotarySpring : PhysicsJoint 두 개의 Body가 Spring에 연결된 것 처럼 움직이되, 거리가 아닌 각을 전달한다. Modifier and ...
Go to lecture
Physics - Collision EventListenerPhysicsContact : EventListener Modifier and Type | Method & Description Constructor static EventListenerPhysicsContact* | create() ~~ 물리 ...
Go to lecture
Query / RayCast Cocos2d-x에서 물리엔진은 각각의 질의를 통해 물리 세계의 어떠한 물체들의 정보를 종합해 반환받을 수 있다. Cocos2d-x에서는 Raycast 라는 ...
Go to lecture