iDev 211

드래곤 플라이트 따라 만들기 - 9. 폭발 효과 애니메이션

폭발 효과 에니매이션 총알에 맞은 적 또는 플레이어 케릭터가 적과 충돌할 경우에 폭발하는 애니메이션이 보이게 된다. cocos2d에서 제공하는 파티클을 사용하여서 폭발하는 효과를 더 현실감 있고 화려하게 구현 하는 방법도 있다. 이 튜토리얼에서는 한두가지의 이미지로 폭발 파티클 효과를 비슷하게 구현하도록 하겠다. 폭발 스프라이트 애니메이션을구현 하기 위해서 CCSprite를 상속 받아서 Dust 라는 이름으로 클래스를 만든다. Dust.h 로 이동하여 아래 코드를 추가한다. @interface Dust : CCSprite { CCArray *dusts; CCArray *explosions;} @property (nonatomic, weak) CCSpriteBatchNode *batch; -(void)an..

iDev/Cocos2D 2013.02.12

라즈베리 파이로 타임 머신 서버 구성하기

원문 : Raspberry Pi – Time Machine Server 타임 머신을 사용하여 백업을 하고 있었긴 했지만, 유선으로 백업을 해야하는지라 항상 연결되지 않아서 듬성 듬성 백업을 했었다. 그래서 타임 캡슐을 살까하다가 어마어마한 가격(36~59만원)에 좌절하고, 에어포트 익스프레스는 HDD를 지원하지 않아서 에어포트 익스트림을 22만원이라는 저렴하지 않은 가격에 구입을 할 까 생각을 하고 있었다. 그러던 찰나 집에 뒹굴던 Raspberry Pi(라즈베리 파이)를 잘 사용하면 타임 머신 서버로 사용 가능하다는 것이 생각이 났다. 그래서 삽을 들었다. 역시나 삽질은 한번에 되지 않는 법. 이리저리 찾아 다니다가 괜찮은 블로그 포스팅을 발견하여 번역을 하기로 했다. (원문의 저자도 나와 똑같은 글 ..

iDev/Raspberry Pi 2013.02.11

드래곤 플라이트 따라 만들기 - 8. Head-up Display

HUD (Head-up Display) 대부분 게임에는 시간이나 점수를 보여주는 HUD가 있다. 우리 게임에도 간단하게 HUD를 추가하도록 하자. 단순하게 움직인 거리를 나타내는 것만 표시할 것이다. 적을 죽여서 점수에 반영하는 것은 숙제로 남기기로 하겠다. 우선 CCLayer를 상속받아서 HUDLayer이름으로 클래스 하나를 생성한다. 그리고 HUDLayer.h에 아래 코드와 같이 작성한다. @interface HUDLayer : CCLayer { CCLabelTTF *scoreLabel;} -(void)setScoreText:(int)score; 점수(거리)를 보여주는 Label을 인스턴스 변수로 추가한다. 그리고 외부에서 점수를 메시지로 보낼 수 있도록 메소드를 하나 생성한다. HUDLayer.m으..

iDev/Cocos2D 2013.02.09

OS X, iOS의 TextViews 에서 글자/단어수 계산하는 오픈소스

Matt Gemmell이 iOS와 OS X의 TextView에서 단어수를 계산하기 위한 목적으로 MGWordCounter 개발하여 공개하였다.MGWordCounter 는 OS X의 NSTextViews 와 iOS의 UITextViews 에서 글자수와 단어수를 계산해준다.Readme에서 가져온 특징이다. 비동기적으로 계산한다.(백그라운드로..)필요한 것 보다 더 많은 계산을 시도 하지 않는다.텍스트뷰에서 전체 텍스트와 선택된 텍스트 모두 계산한다. 직접 컴파일해서 테스트해본 결과 이미지이다.Github에서 MGWordCounter 의 소스코드를 다운로드 받을수 있다.왜 빨리 공개 했는지는 모르겠지만 버그가 많다. 영어외에 한국어는 잘 지원하지 않는 치명적인 버그가 있다.

iDev 2013.02.05

Vine영상을 Gif로 만들어주는 맥앱 오픈소스

트위터에서 짧은 비디오 영상 공유 SNS을 Vine을 인수후 지난 1월에 공개하였다.Vine은 GIF 컨셉과 비슷한 6초의 짧은 비디오 영상을 공유 할수 있다. estenh가 Vine의 영상을 GIF로 변환해주는 맥용 툴 Vine GIF'r 을 만들어서 오픈소스로 공개 하였다. 실행을 한후 vine 영상의 URL 링크를 넣으면 아래와 같이 GIF로 변환되어서 저장된다. Github에서 VineGifR을 다운로드 받을 수 있다.

iDev 2013.02.05

드래곤 플라이트 따라 만들기 - 7. 날갯짓 애니메이션

기본적인 게임 기능은 다 구현되었지만 밋밋한 화면을 역동적으로 하기 위해서 애니메이션을 추가하도록 하겠다. 이번 장에서는 플레이어와 적의 날갯짓 애니메이션을 구현하겠다. 날갯짓 애니메이션적의 날갯짓을 하기 위해서는 기본적인 날개 스프라이트를 왼쪽 날개는 오른쪽에 오른쪽 날개는 왼쪽에 축을 두고 위아래로 살짝씩만 회전을 하면 된다. 우선 enemy.h 로 이동을 해서 아래 코드를 변수로 추가한다. BOOL wingDown;날개가 내려갔는지 올라갔는지를 체크하기 위한 변수이다. 그리고 본격적으로 애니메이션을 구현하기 위해 enemy.m 파일로 이동한다. 특정 시간마다 반복적으로 메소드를 호출해야 하기때문에 스케쥴러를 위한 메소드 -(void)updateWings:(ccTime)dt 를 하나 만들어 아래와 같..

iDev/Cocos2D 2013.02.05

드래곤 플라이트 따라 만들기 - 6. 충돌 처리 및 적 게이지

이번 파트에서는 총알과 플레이어 충돌, 적과 플레이어 충돌 그리고 적의 에너지 게이지 추가를 구현하겠다. 총알과 플레이어 케릭터 충돌처리 총알과 플레이어 케릭터의 충돌처리는 아주 간단하다. 플레이어 스프라이트의 바운딩 박스 영역과 총알 스프라이트의 바운딩 박스의 영역이 겹치면 충돌했다고 처리하면 된다. 물론 더 세세한 충돌처리를 위해서는 케릭터의 모양을 여러 개의 영역으로 나눠서 충돌했는지를 체크하거나, 더 정확하게 하려면 플레이어 케릭트 외곽선을 전부 따서 하는 방법도 있다. 여러가지 방법이 있긴 하지만 가장 간단한 방법을 선택하도록 한다. gameLayer.h 에 이동하여 충돌하였는지를 체크 할수 있게 변수하나를 추가한다. BOOL isCollision; 충돌 처리를 위해서 gameLayer.m으로 ..

iDev/Cocos2D 2013.01.31

드래곤 플라이트 따라 만들기 - 5. 총알 추가

이번 파트에서는 총알을 생성하고 총알과 적의 충돌처리 하는 것을 구현하겠다. 총알 추가플레이어 케릭터에서는 특별한 액션이 필요하지 않고 끊임없이 총알이 발사 된다. 레벨에 따라서 총알의 모양, 강도만 다를 뿐이다. 총알 스프라이트를 구현하기 위해서 Bullet 스프라이트를 CCSprite를 상속받아서 생성한다. 그리고 Bullet.h 이동한다. 아래 코드를 추가한다. //총알의 종류와 강도typedef enum { //총알의 강도를 나타낸다. kFirst = 20} BulletType; @interface Bullet : CCSprite {} @property (nonatomic, readwrite) BulletType bulletType;총알의 종류와 강도를 나타내는 변수와 총알 타입을 설정 할 수 있..

iDev/Cocos2D 2013.01.29

express.js 3.x + socket.io 같은 포트에 함께 사용하기

express.js 3.x, socket.io을 함께 같은 포트를 사용하기 위해서 아래와 같이 코드를 살짝 변경하면 된다. 기본 템플릿만을 이용했으므로 세세한 것은 알아서 수정하면 될 듯. // 1.var server = http.createServer(app).listen(app.get('port'), function(){ console.log("Express server listening on port " + app.get('port'));}); // 2.var sio = io.listen(server); // 3.sio.sockets.on('connection', function (socket) { socket.emit('news', { hello: 'world' }); socket.on('my o..

iDev 2013.01.28

드래곤 플라이트 따라 만들기 - 4. 적 케릭터

* 혹시 안되는것이 있거나 하면 바로 리플로 알려주세요. 구현하면서 글을 작성해야 좋은데, 구현 해놓고 역으로 글을 쓰니까 코드가 살짝 꼬이는것이 있네요. 생각하면서 작성을 하고 있긴 하지만 이상한 곳이 많을 것 같습니다. 이번 파트에서는 적 케릭터를 추가하고 적이 없어지고 다시 생성되는 것을 구현하겠다. 적 케릭터 만들기 드래곤 플라이트에서 적은 적의 레벨에 따라서 여러 종류의 색상으로 달라진다. 하얀색이 약한 놈, 노란색은 조금더 강한 놈 ... 점점 강하게 된다. 적의 스프라이트를 상세하게 분석하면 몸통, 기본과 공격 받을때가 달라지는 양쪽 눈, 날개 짓 하는 양쪽 날개 그리고 에너지 상태를 나타내는 에너지 바로 구분 할 수 있다. 그리고 다섯 마리의 적들이 한 줄로 나란하게 나온다. 아래로 움직여..

iDev/Cocos2D 2013.01.24