작업일지/Project W2012. 12. 12. 20:43

0. 대략적으로 구색을 갖춘 게임(?)을 완성 했다.



아직 고칠점도 많고 허접해 보이긴 하지만 일단 대략적인 기능 구현은 끝냈다.

그리고 인턴 지원 & Fail.


일단 기록을 해놔야겠다 싶어서 동영상으로 올려 본다.



일단 이 게임은 보시다 시피 모바일 용이다. 안드로이드와 IOS 크로스플랫폼이 가능한 cocos2d-x 엔진 기반으로 작성되었고

개인적인 작업용이고 또 시판할 목적은 아닌지라 cocos2d-x 로고는 넣지 않았다.

( 물론 아이콘은 cocos2d-x 기본 아이콘이라서 어느정도 표시는 될거라 생각)

이 게임의 룰은 간단하다 문제를 보고 틀린답을 고르는 것이다. 

주어진 시간은 1분. 5콤보 이상을 할 경우 피버 모드로 돌입 약 1.5배의 가산점을 얻을 수 있다.

목표는 가장 낮은 점수를 얻는 것이다. 그래서 제목도 도전 오답왕이다. 

(반디캠으로 win32 어플리케이션을 캡쳐했다. 그래서 그런지 애니메이션이 부자연스럽다.)


이 게임을 만들게 된 계기가.... 사실 약간 사회 비판적이긴 한데 ....

우리는 살아오면서 항상 정답만을 강요 받아오고 있다고 생각했다. 

왜 틀리면 안되는 걸까? 라고 문득 생각이 들어서 만들기 시작한 게임이다.


하지만 아이러니 하게도 오답은 정답을 알아야 맞출수 있다. (저런.......)


여튼 그러하다. 


어제 인턴 탈락 소식을 들었는데 이미 주말부터 맨붕 상태라 코딩은 물론이거니와 컴퓨터에 거의 손을 대지 않았다.

(어휴.....유리멘탈....)

떨어지긴 했지만 뭐랄까 사실 되게 우울했다. 그냥 아무것도 못할 것만 같아서.

하지만 그렇게 있는다고 해서 달라질 것도 없다. 그래서 오늘도 난 코딩을 한다.



뭐...... 하다보면 되겠지...... 



라며 날 위로 해 본다.




2012-12-12 ProjectW 완료.


추가 - Project W Class 구조도


나름대로 계층 구조를 그려보았다. 

헤더파일은 제외하고 클래스 단위로만 표기 해놓은 것으로 최상단엔 cocos2d-x 의 클래스인 CCLayer가 있고 이를 Basic 클래스가 상속 그리고 각각의 장면의 기초가 되는 클래스인 IntroScene,CategoryBasic,GameBasic 클래스가 상속 받는다.

구조도에는 표시되지 않았지만 각각 클래스에서 사용하는 리소스들을 관리 편의성을 위해 resource 헤더파일을 작성, 헤더파일 내부에 static으로 정의하여 사용하였고 또 Game~클래스에서는 Layer 구분을 위해 Layer Tag 를 상수로 정의하여 사용하였다.

각 클래스의 변수는 기본적으로 private로 선언 하였고 함수들은 몇몇 함수를 제외하고는 public으로 선언하여 사용하였다.

부모 클래스에서 미리 선언해야하는 몇몇 CallBack 함수는 virtual로 선언하여 자식 클래스에서 Overwrite 가능하도록 만들었다


각 클래스에서 구현된 기능들을 열거 해보자면

Basic - Loading, Tip Script, HardWareKey Func. , 게임종료

IntroScene -  인트로로고, 첫화면, 화면 터치 CallBack

CategoryBasic - 카테고리 선택 화면

Category - 카테고리 선택후 CallBack

GameBasic - 게임 화면 배경 각종 오브젝트 (콤보나 피버등 화면 표시에 관련된 것들,Bgm 로딩)

GameTime - 게임 시간관련(콤보타이머,게임시간 타이머)

GameQuiz - 퀴즈표시 관련(퀴즈 스크립트 로드, 퀴즈 표시 순서, 답표시 순서)

GameScene - 각종 타이머 실행, Bgm 실행, Starting Counter 등)


음..... 대충 이렇게 설명을 했지만서도 음음..... 제대로 한게 맞는지 의문스럽다.. ㄷㄷ

좀 더 공부가 필요 할 것 같다.








'작업일지 > Project W' 카테고리의 다른 글

20121127 작업일지  (0) 2012.11.27
20121112 작업일지  (0) 2012.11.12
20121110 작업일지  (0) 2012.11.10
20121105 작업일지  (0) 2012.11.05
20121104 작업 진행 내역  (0) 2012.11.04
Posted by Anix