본문 바로가기

Programming/Cocos2D

Cocos2D프로젝트 포토폴리오 제목 : Take 2 Heaven 작업기간 : 2달 작업하면서 느낀점 1. 리소스 구하기가 생각외로 어려움. 2. Cocos2D라는 라이브러리를 처음만져봄으로서 책보고 공부하면서 만드는데 시간이 생각외로 많이 걸림. 3. 아직 완전한 설계없이 시작했다가 중간에 2번 뒤집으면서 그래도 짜겠다는 신념아래 설계가 엉망으로 되었음....... 처음 설계의 중요성을 느끼게 해준 작업 4.슈퍼클래스를 만들어서 상속받는 단계가 결코 쉽지 않다는..추상화,캪슐화는 앞으로도 계속 공부해야될 슈퍼스터디 항목임. 5.하지만 유니티 보다 Cocos2D가 손맛이 좋다는거.~~ㅎㅎ 더보기
스케줄 배경씬 띄우기 플레이어 구현 몬스터 구현 플레이어,몬스터 기본 애니메이션 몬스터 랜덤좌표 배치 몬스터 타격 몬스터 이동 사운드 구현 스킬구현 콤보구현 보스구현 스테이지2 이동 12월 15일 현재상황 배경씬 띄우기 (완료) 로딩 , 메뉴, 게임 씬으로 구분 플레이어 구현 (완료) 몬스터 구현 (완료) 플레이어,몬스터 기본 애니메이션 (완료) 2.5는 액션으로 에니메이션을 구현한다. 몬스터 랜덤좌표 배치 (완료) 매니져와,몬스터간의 구분 확실히 해야됨. 더보기
vitual 가상함수 가상 함수 가상함수는 기본 클래스에서 virtual 로 선언되고 파생클래스에서 재정의 되는 함수다. 따라서 각 파생클래스는 자신만의 가상 함수 버전을 가질 수 있다. base와 first_d ,second_d모두 who()라는 함수를 각각 호출할수있다. base에서 who()는 가상함수로 선언된다. 이것은 이 가상함수가 파생클래스에 의해 재정의 될 수 있음을 의미한다. 그리고 기본 클래스 포인터는 파생 클래스의 객체를 참조할 수 있다. 그래서 who()가 호출될 때, C++는 p가 어느 형의 객체를 가리키고 있는지 확인하고 그 형에 근거하여, 어느 버전의 who()를 호출할 것인가를 결정한다 만약 가상함수가 아닌 일반함수로 선언되면... 결과를 보면 앞선 결과와는 전혀 다른 값이 출력된 것을 볼 수 있다.. 더보기
10월 29일 일일보고서 Hero.cpp 타격포인트 싱글톤으로 주고받기 Enemy.cpp 더보기
10월 28일 작업보고서 Enemy cpp파일.. 흰색 512.png를 띄운후 50,50사이즈의작은 사각형을 만들고 흰색으로 체운다. EnemyManagr.cpp 5개의 Enemy를 생성해준다. 위치는 랜덤값을넣어서 실행. 히어로역시 Enemy와 같은박법으로 생성 히어로의 타격포인트를 잡아준다... 여기서 문제다..어택메세지를 주고받는데서 문제가 생김..해결요망.. 코어 생성이 너무너무 해깔린다.아직까진... 조금 더 봐야 알겠지만.일단 문제가 생긴 타격 포지션 값을 주고받는 방법을 다른방법으로 생각해보장. 더보기
10월 28일 일일보고서 Hero와 Enemy를 만들어서 타격시 Enemy의 색을 붉은색으로 만든다음 1초후 다시 흰색으로 돌린다.!! 타격 포인트를 설정하여 타격포인트와 Enemy의 거리를 체크....쿵~~빨개요~~다시 하예요로 만든다. 더보기
10월 27일 작업보고서 좌우 타격 구현,배경,캐릭 애니메이션 구현,배경 스크롤 구현, 좌우 타격구현은 성공, 하지만 배경애스크롤 실패.. 배경 을 2종으로 설정했을시 같이 움직여버리는 오류 .... 좀더 연구연구. void Obj_Hero::update(float dt) { m_bAttackDirection=false; int HeroPositionX = this ->getPosition().x ; if(m_iDirection == VK_LEFT) m_pATPoint = HeroPositionX - 100; else m_pATPoint = HeroPositionX + 100; if(GetAsyncKeyState(VK_RIGHT)) { m_iDirection = VK_RIGHT; this->setFlipX(false); } if.. 더보기
10월 24일 일일 보고서 현재 캐릭을 띄우고 타격구현을 위하여 기초 작업을 시작했다. 1.기본 윈도우창 사이즈를 구현한다. 2.배경 을 띄운다. 3.배경에 Hero와 Enemy를 각각 하나씩 붙여넣는다. 4.캐릭터 좌우로 움직이게한다. 5.캐릭터 앞 포지션에 타격rectangle을 띄운다. 6.타격할때마다 recteangle의 색을 바꾸게한다. 1,2,3,4성공 5,6, 실패. 실패요인 1.배운건 cocos2d-x0.9 버젼이였는데 내가 현재 포토폴리오로 제작할려는 버젼은 2.0.4버젼이다. 실수한거 같다. 기능만 추가된줄알았는데 함수나 매개변수가 없다.ㅜㅜ 2.그래도 책이 2.0.4버젼이니까 최대한 도움을 받자는 생각으로 했으니 책역시 모바일,맥전용으로 설명되어있어서 조금은 힘들다. 3.그래도 고통과 인내의 시간을 지나면서 하.. 더보기