블로그 이미지
Every unexpected event is a path to learning for you.

카테고리

분류 전체보기 (2737)
Unity3D (817)
Programming (474)
Server (33)
Unreal (4)
Gamebryo (56)
Tip & Tech (228)
협업 (58)
3DS Max (3)
Game (12)
Utility (136)
Etc (96)
Link (32)
Portfolio (19)
Subject (90)
C (20)
C++ (10)
자료구조 (6)
2D API (9)
Network (1)
2D Graphics (2)
3D Graphics (9)
RayTracing (1)
3D API (11)
Scene Graph II (2)
Shader (16)
Physics (3)
iOS,OSX (53)
Android (14)
Linux (5)
잉여 프로젝트 (2)
게임이야기 (3)
Memories (20)
Interest (38)
Thinking (38)
한글 (30)
PaperCraft (5)
Animation (408)
Wallpaper (2)
재테크 (18)
Exercise (3)
나만의 맛집 (3)
냥이 (10)
육아 (16)
Total
Today
Yesterday
04-20 00:00





[팀과제]
1. 게임 대한 클래스 설계 및 구현.
2. 게임에 대한 주제는 어떤한 것이라도 좋다.
3. 기간내에 구현할 수 있게 간단하게 만들것.


C/C++을 마치면서 팀과제로 만든 게임입니다.
모바일 게임 짜요짜요 타이쿤을 콘솔버전으로 만들어 봤습니다.
메인 화면의 한자는 '가유'라는 단어인데 중국어로 '짜요'라고 읽히는데, 기름을 더한다는 뜻으로..'Fighting'과 같은 뜻입니다.
발음이 짜요짜요 타이쿤의 짜요와 같아서 넣어봤습니다.

반응형
Posted by blueasa
, |



==== main() 함수 테스트용 소스 ====
void main()
{
 TQueue<int> queueINT(5);

 printf("check : %s\n",(queueINT.Push(1))?"True":"False");
 printf("check : %s\n",(queueINT.Push(2))?"True":"False");
 printf("check : %s\n",(queueINT.Push(3))?"True":"False");
 printf("check : %s\n",(queueINT.Push(4))?"True":"False");
 printf("check : %s\n",(queueINT.Push(5))?"True":"False");
 printf("check : %s\n",(queueINT.Push(6))?"True":"False");
 printf("check : %s\n",(queueINT.Push(7))?"True":"False");

 printf("%d\n",queueINT.Pop());
    printf("%d\n",queueINT.Pop());
    printf("%d\n",queueINT.Pop());
    printf("%d\n",queueINT.Pop());
    printf("%d\n",queueINT.Pop());
    printf("%d\n",queueINT.Pop());
 printf("%d\n",queueINT.Pop());
 printf("%d\n",queueINT.Pop());

 printf("check : %s\n",(queueINT.Push(8))?"True":"False");
 printf("check : %s\n",(queueINT.Push(9))?"True":"False");
 printf("%d\n",queueINT.Pop());
 printf("%d\n",queueINT.Pop());

 TQueue<char> queueCHAR(5);

 printf("check : %s\n",(queueCHAR.Push('a'))?"True":"False");
 printf("check : %s\n",(queueCHAR.Push('b'))?"True":"False");
 printf("check : %s\n",(queueCHAR.Push('c'))?"True":"False");
 printf("check : %s\n",(queueCHAR.Push('d'))?"True":"False");
 printf("check : %s\n",(queueCHAR.Push('e'))?"True":"False");
 printf("check : %s\n",(queueCHAR.Push('f'))?"True":"False");

 printf("%c\n",queueCHAR.Pop());
    printf("%c\n",queueCHAR.Pop());
    printf("%c\n",queueCHAR.Pop());
    printf("%c\n",queueCHAR.Pop());
    printf("%c\n",queueCHAR.Pop());

 TQueue<float> queueFLOAT(5);

 printf("check : %s\n",(queueFLOAT.Push(1.0f))?"True":"False");
 printf("check : %s\n",(queueFLOAT.Push(2.0f))?"True":"False");
 printf("check : %s\n",(queueFLOAT.Push(3.0f))?"True":"False");
 printf("check : %s\n",(queueFLOAT.Push(4.0f))?"True":"False");
 printf("check : %s\n",(queueFLOAT.Push(5.0f))?"True":"False");
 printf("check : %s\n",(queueFLOAT.Push(6.0f))?"True":"False");

 printf("%.1f\n",queueFLOAT.Pop());
    printf("%.1f\n",queueFLOAT.Pop());
    printf("%.1f\n",queueFLOAT.Pop());
    printf("%.1f\n",queueFLOAT.Pop());
    printf("%.1f\n",queueFLOAT.Pop());

 TQueue<double> queueDOUBLE(5);

 printf("check : %s\n",(queueDOUBLE.Push(1.1f))?"True":"False");
 printf("check : %s\n",(queueDOUBLE.Push(2.2f))?"True":"False");
 printf("check : %s\n",(queueDOUBLE.Push(3.3f))?"True":"False");
 printf("check : %s\n",(queueDOUBLE.Push(4.4f))?"True":"False");
 printf("check : %s\n",(queueDOUBLE.Push(5.5f))?"True":"False");
 printf("check : %s\n",(queueDOUBLE.Push(6.6f))?"True":"False");

 printf("%g\n",queueDOUBLE.Pop());
    printf("%g\n",queueDOUBLE.Pop());
    printf("%g\n",queueDOUBLE.Pop());
    printf("%g\n",queueDOUBLE.Pop());
    printf("%g\n",queueDOUBLE.Pop());

 system("PAUSE");
}

반응형
Posted by blueasa
, |


팀과제

Use Case Diagram *
Class Diagram (x)
Object Diagram
Interaction Diagram
Sequence Diagram *
Collaboration Diagram
Package Diagram
State Diagram *
Activity Diagram *
Deployment Diagram 
반응형
Posted by blueasa
, |


캐릭터, 유저(플레이어), 아이템에 관한 클래스다이어그램을 작성하시오!
UML 설계(StarUML 사용)와 함께 구현한 코드를 작성한다.

 유저는 캐릭터를 0~3개 가질수 있으며,
캐릭터는 아이템을 0~5개 가질수 있다.

메소드와 속성 또한 작성하시오!

반응형
Posted by blueasa
, |



String 클래스 만들기
- MSDN 참조
- 만들수 있는데까지... 만들기.
- main 함수에 Test Code 만들기.

===== 테스트용 코드 =======
 MyCString s6('x', 6);
 s6.Output();
 s6.Insert(3, "abc");
 s6.Output();
 s6.GetBuffer(10);
 s6 = "Test Time";
 s6.Output();
 MyCString a = "1234";
 MyCString b = "456" + a;
 a.Output();
 b.Output();
 b.SetAt(0, '*');
 b.Output();
 if(a != b)
  printf("a != b\n");
 if(a > b)
  printf("a > b\n");
 else
  printf("a <= b\n");
 MyCString c = "abcde";
 c.Delete(0, 2);
 c.Output();
 printf("s6.Compare(s3) : %d\n", s6.Compare(s3));
 cout<<s3;

반응형
Posted by blueasa
, |


Complex 클래스 만들기 

void main()
{
// 관계 연산자 // ==,=! (실수,허수) 대소(실수만 생각) 상수 포함
// 증감 연산자 ++, --, +=, -=, *=, /=, 상수 포함
// c = ++a; // 실수만 증가 ...
// c.Output();
// a++; // 실수만 나중에 증가 ...
// c.Output();
// 대입 연산자
// 복사생성자
// Complex c = a;
// 대입연산자
// c = a;
// 기본연산자 처리
// c = 2*(1 + a*3 + 2)*(1 / (1 - b/2))+ (b - 1);
// c.Output(); 
}

반응형
Posted by blueasa
, |


- extern, Singleton 싱글톤 static 이 어떻게 쓰이는지 4인 1조 팀으로 모여서 조사 및 스터디를 했습니다.

반응형
Posted by blueasa
, |



자동차 클래스 만들기
- 화살표키 적용
- 디스플레이: 속도, 기어, 방향
- 만들고 싶은데로 추가할 수 있음.
반응형
Posted by blueasa
, |



입력받은 학생 수 대로 이름 국어 영어 수학 점수를 입력받아
이름, 국어, 영어, 수학, 총점, 평균, 등수 순으로 출력한다.
등수는 오름차순(1등부터 차례대로 출력) 

class 로 만들어라
class Student
{
private:
    char *m_szName;
};

- 이름 입력 받으면, char szName[1024];
- 동적할당.. malloc/free.
- 복사생성자
class StudentMgr  // Student 클래스를 관리하는 클래스

- 학생의 수를 입력 받아. Student 동적 할당.... new/delete

Student.h/cpp
StudentMgr.h/cpp

생성자를 만들고 값을 초기화 시켜라.
예) "Noname"
 

멤버변수는 private 속성을 가지도록 한다.

void main()
{
     // Test 
     Student a("홍길동", 100, 90, 80);
     Student b = a; // 복사생성자.
     // 프로그램이 실행되도록 만들어 주고.
}

- DetectMemoryLeak.h 추가시킨다.


반응형
Posted by blueasa
, |



MAX 명의 이름 국어 영어 수학 점수를 입력받아
이름, 국어, 수학, 총점, 평균, 등수 순으로 출력한다.
등수는 오름차순(1등부터 차례대로 출력)

class 로 만들어라
class Student
class StudentMgr

// Student 클래스를 관리하는 클래스
Student.h/cpp
StudentMgr.h/cpp

생성자를 만들고 값을 초기화 시켜라.
예) "Noname"

멤버변수는 private 속성을 가지도록 한다.

반응형
Posted by blueasa
, |