cocos2d-x에서는 단어 연상과 소스를 직접 보는 것이 매우 중요합니다. 여러분이 뭔가를 만들려고 해요. 예를 들어 CCSprite라고 합시다. cocos2d-x에서 대부분의 객체는 포인터로 만들어야 합니다. 그럼 CCSprite * pSprite = 라고 쓰고 CCSprite:: 를 코드에 입력합니다. 그리고 인텔리센스 기능을 켜보면 CCSprite의 함수들을 볼 수 있게 됩니다. 거기서 핵심적인 것은 스프라이트를 만들어주는 함수입니다. CCSprite의 클래스 내부에는 반환형이 CCSprite* 이고 static으로 선언된 함수들이 몇가지 있습니다. 사실 이 static 함수들을 찾는건 상당히 귀찮은 일입니다. 여기서 단어연상이 필요합니다. "스프라이트를 지금 만들어야 하는 상황이네? 생성자 같은..
가로 60, 세로 60의 이펙트 애니메이션 5개가 모여있는 그림 파일 입니다. (Image\attackeffect.png) cocos2d-x에서 중요한 점은 상속관계가 어떻게 되어 있고 그 관계 속에서 유연하게 생각하는 것이라고 생각합니다. cocos2d-x에서 애니메이션(CCAnimate)은 액션에 속합니다. 기본적인 플로우는 이렇습니다. 1. 그림파일을 텍스쳐로 로드 2. CCSpriteFrame을 만드는데 텍스쳐 파일 속의 애니메이션(각각의 그림)을 Rect로 뜯어서 SpriteFrame에 삽입 3. CCSprite를 하나 생성하고 (보통) 애니메이팅의 첫번째 애니메이션을 그림으로 삽입 4. CCSpriteFrame의 MutableArray를 생성하고 거기에 아까 만들었던 SpriteFrame을 넣..
http://www.cocos2d-x.org/projects/cocos2d-x/wiki/Download 여기에 들어가서 cocos2d-1.0.1-x-0.9.1 @ Aug 17, 2011을 다운 받습니다. 다운 받으면 zip 파일이 나오는데, 압축 해제를 해서 나온 폴더에서 계속 들어가다 보면 파일이 좀 많이 나옵니다. 여기서 cocos2d0win32.vc2010.sln을 실행합니다. c++ 환경이니까 vs2010을 여러버전 설치 하신 분은 c++ 환경으로 들어가시구요. 프로젝트 목록들이 나올 겁니다.(Solution Explorer) 여기서 tests를 오른쪽 클릭 하면 Set as startup project라는게 있습니다. 그걸로 하면 Ctrl+F5 키를 누르면 테스트 프로젝트로 실행됩니다.(예제 모..
출처 : http://blog.naver.com/slime321?Redirect=Log&logNo=50016097032 Surface 의 특질을 제대로 표현하기 위해서는 Texture mapping 기술에 대하여 제대로 알아 둘 필요가 있습니다.. Surface 의 특질을 표현하기 위하여 각각의 surface 는 blue, red, green 등의 컬러의 집합체에 의하여 정의 되어진다고 생각해도 크게 틀리지 않을 것 입니다.. 실제 세계에서는 많은 surface 들이 여러가지 색깔을 가지고 있습니다.. 나무는 나뭇결의 변화 있는 모습을 보여 주고 있고.. 옷감의 경우는 또 다른 예를 보여 주게 되는데.. 이것은 종종 다색 이라기 보다는 단색의 반복적인 patterns 으로 나타나게 되어지는 경우도 있습니..
파이프 라인] 로컬 스페이스 월드 스페이스 뷰 스페이스 후면 추려내기 조명 클리핑 투영 뷰포트 래스터 라이즈 모델링 스페이스 D3D TS _WORLD D3DX Matrix LookAtLH backface culling D3DCULL projection 표현영역 삼각형 픽셀컬러 계산 - 로컬 스페이스 - 월드스페이스 : 로컬 좌표시스템(0,0,0)의 3D모델을 월드좌표 시스템으로 옮긴다. D3DXMATRIX cubeWorldMatrix; D3DXMatrixTranslation( &cubeWorldMatrix, -3.0f, 2.0f, 6.0f ); Device->SetTransform( D3DTS_WORLD, &cubeWorldMatrix ); drawCube(); - 뷰스페이스 : 월드 스페이스내의 카메라..
I. 전투 프로그래밍이란? 얼마전에 필자의 회사에서 만들고 있는 게임의 개발에 참여할 스탭모집 공고를 낸 적이 있다. 공고는 몇 개의 부문으로 이루어져 있는데, 그중의 한 부문이 ‘전투 프로그래머’를 모집하는 것이었다. 그 공고를 낸 이후 사람들과 이야기를 나누면서 ‘전투 프로그래밍이 무엇인가? 회사에서 전투 프로그래머에게 구체적으로 무슨 일을 시키게 되는 것인가?' 에 대한 명확한 설명이 필요하다는 것을 느꼈다. 그래서 전투 프로그래밍에 대한 본 개론서를 쓰게 되었다. 전투 프로그래밍이란 것에 대한 어떤 별도의 엄밀한 학술적 정의가 따로 있는 것은 아니다. 다만 FinalFantasy 같은 RPG의 엔딩 스탭롤을 보면 프로그래머의 파트중에 Battle Programmer 라는 란이 따로 있는 것을 볼 ..
#include "Mover.h" //============================================================== // 댷벍븿뫬 CMover::CMover(CTaskList* list, int shape_id, float x, float y, float angle) : CTask(list), Shape(&ShapeList[shape_id]), X(x), Y(y), Angle(angle), Scale(1), Alpha(1), Alive(true), Color(-1) {} void CMover::Move() { } void CMover::DrawSub(CTexture* texture, float size, float fade) { if (texture) { float sw..
- Total
- Today
- Yesterday