Differences

This shows you the differences between two versions of the page.

fyp:ik0801 [2009/04/25 00:30] (current)
Line 1: Line 1:
 +====== FYP IK0801 iPhone Games I (Phase 2) ======
 +([[fyp/ik0801/:Phase 1]] | Phase 2)
 +====== Title ======
 +
 +iPhone Gaming
 +
 +====== People ======
 +
 +Supervisor:
 +
 +[[king@cse.cuhk.edu.hk|Prof. KING Kuo Chin, Irwin]]
 +
 +Student:
 +
 +[[mhli6@cse.cuhk.edu.hk|Li Man Ho]], [[tlyu6@cse.cuhk.edu.hk|Yu Tak Leung]]
 +
 +
 +====== Prerequisite ======
 +
 +Game development, excellent programming skills, Creative thinkinig.
 +
 +====== Keywords ======
 +
 +iPhone, computer graphics, image processing, mini games
 +====== Project description ======
 +
 +  * New and different game - The Great Maze
 +
 +In this semester, we nearly design another game instead of continue to develop last semester game. Last semester we successfully build a 2D maze game with battle. But this semester we never satisfy with the 2D game. Therefore we implement it to a 3D game. With the technique that accumulate last semester, we change the base model of maze from 2D to 3D, this benefit to smooth the transition during the movement in the maze. Moreover, we change the game play a little bit. Instead of run through the maze and hunting monster, the new aim is to hunt the treasure in the multiple level maze. In the maze , there may be some trouble for passing one place to another. In this time, user may come to some mini games, to finish different target of mini game in order to continue run in the maze.
 +
 +The mini game may different any times and different mini game may need different technique. This added an interest on the game. And with different requirement of mini game, different feature of iPhone may needed.
 +====== User Guide ======
 +
 +The user guide gives guide to user how to play the game. And it also explain the screen item as well as some demonstrate how to play a mini game. It is recommended to read this before play the game.
 +
 +{{:fyp:ik0801:3dmaze_user_guide.pdf|}}
 +====== WC Statistic ======
 +
 +Sound Engine
 +    Lines   Words Characters
 +      38     113    1054 GBMusicTrack.h
 +      59     395    2693 SoundEffect.h
 +     201     840    6598 GBMusicTrack.m
 +      99     562    4020 SoundEffect.m
 +     -----------------------------------
 +     397    1910   14365 total
 +
 +3D Engine
 +    Lines   Words Characters
 +     489    1305   14057 CCMD2Model.cpp
 +      87     203    1585 CCSprite.cpp
 +      58      89     808 CCTexture.cpp
 +     236     561    6257 CCMD2Model.h
 +      36      83     617 CCSprite.h
 +      33      63     581 CCTexture.h
 +     115     636    4777 Texture2D.h
 +      95     262    2027 Vector3D.h
 +      17      47     348 Wrapper.h
 +    -----------------------------------
 +    1166    3249   31057 total
 +
 +Game Classes
 +    Lines   Words Characters
 +      32      65     591 Cross.h
 +      76     210    1830 EAGLView.h
 +      26      53     492 Level1_1.h
 +      26      53     473 Level1_2.h
 +      26      53     473 Level1_3.h
 +      29      57     529 Level1_4.h
 +      28      62     567 MiniGame.h
 +      71     168    1811 ModelControler.h
 +      33      69     696 RubiksCube.h
 +      28      55     466 WhacAMole.h
 +      22      48     396 _dMazeAppDelegate.h
 +      17      38     336 accelerometerDelegate.h
 +      28      75     681 imgControler.h
 +      16      36     267 template.h
 +     156     341    3782 Cross.mm
 +     370     886   10285 EAGLView.mm
 +     293    1097    8361 Level1_1.mm
 +     242     991    6677 Level1_2.mm
 +     210     886    5863 Level1_3.mm
 +     312    1181    8934 Level1_4.mm
 +      72     156    1470 MiniGame.mm
 +     487    1023   10750 ModelControler.mm
 +     205     509    5772 RubiksCube.mm
 +     101     236    2506 WhacAMole.mm
 +      39      73     694 _dMazeAppDelegate.mm
 +      36     102    1073 accelerometerDelegate.mm
 +      48     124    1011 imgControler.mm
 +      68     532    1920 template.mm
 +    ----------------------------------------------
 +    3097    9179   78706 total
 +
 +====== Game screen ======
 +^Week|  Week 1  |  Week 2  |
 +^ |  -  |  -  |
 +^Week|  Week 3&4  |  Week 5  |
 +^ |  {{:fyp:ik0801:p2week4_screen.png?200x100|3D Maze}}  |  {{:fyp:ik0801:p2week5_screen.png?200x100|3D Maze}}  |
 +^Week|  Week 6-7  |  Week 8  |
 +^ |  {{:fyp:ik0801:p2week6_2_screen.png?200x100|3D Maze}}  |  {{:fyp:ik0801:p2week8_screen.jpg?200x100|3D Maze}}   |
 +^ |  {{:fyp:ik0801:p2week6_screen.png?200x100|3D Maze}}  |  {{:fyp:ik0801:p2week8_screen2.jpg?200x100|3D Maze}}  |
 +^Week|  Week 9  |  Week 10  |
 +^ |  {{:fyp:ik0801:p2week9_screen1.jpg?200x100|Mini game}}  |  {{:fyp:ik0801:p2week10_1_screen.jpg?200x100|Mini game}}   |
 +^ |  {{:fyp:ik0801:p2week9_screen2.jpg?200x100|Mini game}}  |  {{:fyp:ik0801:p2week10_2_screen.jpg?200x100|Mini game}}   |
 +^Week|  Week 11  |  Week 12  |
 +^ |  {{:fyp:ik0801:p2week11_screen1.jpg?200x100|Mini game}}  |  -  |
 +^ |  {{:fyp:ik0801:p2week11_screen2.jpg?200x100|Mini game}}  |  -  |
 +
 +
 +====== Schedule ======
 +
 +^ Week2  | FYP Review | - Design the FYP schedule .\\ - Review the game design and features.|  -  |
 +^ Week3  | Sound | - Background music. \\ - Effect sound  |  -  |
 +^ Week4  | Complete Story | - To complete the game story.\\ <hi #ffff00>1. add a town screen.</hi> \\ 2. item system. \\ 3. level of  maze.  |  3D maze implementation.  |
 +^ Week5  | Complete Story | - To complete the game story.\\ 1. add a town screen. \\ <hi #ffff00>2. item system.</hi> \\ 3. level of maze.  |  3D maze implementation.  |
 +^ Week6  | Complete Story | - To complete the game story.\\ 1. add a town screen. \\ 2. item system. \\ <hi #ffff00>3. level of maze.</hi>  |  Maze misc - "stage" task  |
 +^ Week7  | Map Events | - Event to trigger a mini game. \\ - mini apply more features of iphone - (multi-touch). |   Maze misc - items  |
 +^ Week8  | Map Events | - Event to trigger a mini game. \\ - mini apply more features of iphone - (multi-touch & motion sensor). |   Maze misc - level setting  |
 +^ Week9  | Map Events | - Event to trigger a mini game. \\ - mini apply more features of iphone - (motion sensor). |  -  |
 +^ Week10 | Map Editor(<hi #ff0000>pending</hi>) | - Try to implement map editor |  -  |
 +^ Week11 | Map Editor(<hi #ff0000>pending</hi>) | - Try to implement map editor |  -  |
 +^ Week12 | Appshop & Report | - Put the game in App Store and prepare for the report. |  -  |
 +^ Week13 | Appshop & Report | - Bug fixing and improvement |  -  |
 +^ Week14 | Appshop & Report | - Bug fixing and improvement |  -  |
 +====== History ======
 +^ Week ^ Content ^ Source ^ Status ^
 +|  Week2  | 1. Review the project.\\ 2. Schedule planning. |  -  |  **DONE**  |
 +|  -  |Sound implementation. \\ 1. Background music. \\ 2. Effect sounds.  |  -  |  PLANNING  |
 +| Week3-Week4 | 1. Introduce  background music. \\ 2. introduce effect music. \\ 3. MD2 model loader. \\ 4. Introduce open source  game basic APIs. \\ 5. 3D model learning. \\  - 3D model creation by 3D Studio Max. \\ - 3D Studio Max texture mapping  \\ - 3D Studio Max plugin MD2 exporter and texture exporter. \\   |  {{:fyp:ik0801:3dmazeweek4.zip| source}}  |  **DONE**  |
 +|  -  | 1. Map control. \\ - import phase 1 stuff to new project. \\ - maze  border bounding. \\ 2. Texture Mapping \\ - continue to learn the 3D Max Texture mapping skills.  |  -  |  PLANNING  |
 +|  -  | Low quality of textures... |  -  |  PROBLEMS  |
 +|  Week5  | 1. Implement the 3D maze border bounding. \\ 2. Mini map  migration. \\ 3. Level change. (current stage two level available). \\ 4. State bar|  [[http://y-diva.com/fyp/source/3dMazeWeek5.zip|source ]]  |  **DONE**  |
 +| | 1. Draw enemy models. \\ 2. Draw levels \\ 3. Implement Battle |  -  |  PLANNING  |
 +|  Week6-7  | 1. Improve the texture display. \\ 2. make the model more realistic \\ 2. implement "stage" instead of battle. user need to complete a "stage" task to pass it.  |  [[http://y-diva.com/fyp/source/3dMazeWeek6.zip|source[unstable] ]]  |  **DONE**  |
 +|  -  | 1. Solve the unstable problem. \\ 2. implement another "stage". \\ 3. Draw  level   |  -  |  PLANNING  |
 +|  -  | 1. unstable object rendering.|  -  |  PROBLEMS  |
 +|  Week8  | 1. Test on read device. \\  - adjust moving speed. \\ - refresh rate.  \\ 2. introduce trap event. \\ 3. 3 new maps(with sky) \\ 4. development map generator.  |  [[http://y-diva.com/fyp/source/3dMazeWeek8.zip|source]] \\ [[http://www.y-diva.com./fyp/genMap.php|mapGen(v1.0)]]  |  **DONE**  |
 +|  -  | 1. Map development. \\ 2. Mini game development. \\ 3. improve map generator.   |  -  |  PLANNING  |
 +|  Week9  | 1. Introduce two new mini games. \\ 2. improve the map generator.  |  [[http://y-diva.com/fyp/source/3dMazeWeek9.zip|source]] \\ [[http://www.y-diva.com./fyp/genMap2.php|mapGen(v1.1)]]  |  **DONE**  |
 +|  -  | 1. Add animations. \\ 2. improve map generator.   |  -  |  PLANNING  |
 +|  Week10  | 1. Introduce particle system. \\ - fire particle. \\ - snow particle. \\ 2. improve sense of menu buttons.  |  [[http://y-diva.com/fyp/source/3dMazeWeek10.zip|source]]  |  **DONE**  |
 +|  -  | 1. Add animations. \\ 2. improve map generator. \\ 3. complete game flow.   |  -  |  PLANNING  |
 +|  Week11  | 1. Introduce in game tutorial. \\ - Introduce item system.  \\ - System optimization.   |  [[http://y-diva.com/fyp/source/3dMazeWeek11.zip|source]]  |  **DONE**  |
 +|  -  | 1. Handle memory leak.  \\ 2. complete game flow.   |  -  |  PLANNING  |
 +|  -  | 1. not enough memory to allocate for all resource in same time. |  -  |  PROBLEM  |
 +|  Week??  | 1. Complete story. \\ 2. Preferment  optimization.  \\  3. Opening/Ending  animation. |  [[http://y-diva.com/fyp/source/3dMazeFinal.zip|source]]  |  **DONE**  |
 +
 +====== Reference ======
 + [[http://www.cocoachina.com/bbs/|Cocoa China]]
 + [[http://developer.apple.com/iphone/|iPhone Dev Center]]
 + [[http://www.waylon-art.com/uvw_tutorial/uvwtut_01.html|UVW Mapping]]
 
fyp/ik0801.txt · Last modified: 2009/04/25 00:30 (external edit)     Back to top