Você está na página 1de 17

Air Hockey 2D Physics Game

Project Report

University Of Information Technology, IP UNIVERSITY,

Acknowledgement
I express my gratitude to XXXXX for providing me the infrastructure to carry out the project work and I would also like to thank all my classmates for their valuable suggestions and helpful discussions. World is contracting with the growth of mobile phone technology. As the number of users is increasing day by day, facilities are also increasing. Starting with simple regular handsets which were used just for making phone calls, mobiles have changed our lives and have become part of it. Now they are not used just for making calls but they have innumerable uses and can be used as a Camera , Music player, Tablet PC, T.V. , Web browser, Games etc . Game development is an ever green and rapidly growing market today, and therefore this is my attempt at developing a physics based 2D game.

XXXXXXX UIT, IP University

ABSTRACT
The world is contracting with the growth of mobile phone technology. As the number of users is increasing day by day, facilities are also increasing. Starting with simple regular handsets which were used just for making phone calls, mobiles have changed our lives and have become part of it. Now they are not used just for making calls but they have innumerable uses and can be used as a Camera , Music player, Tablet PC, T.V. , Web browser, Games etc . And with the new technologies, new software and operating systems are required. Operating Systems have developed a lot in last 15 years. Starting from black and white phones to recent smart phones or mini computers, mobile OS has come far away. Especially for smart phones, Mobile OS has greatly evolved from Palm OS in 1996 to Windows pocket PC in 2000 then to Blackberry OS and Android. One of the most widely used mobile OS these days is ANDROID. Android is a software bunch comprising not only of operating system but also middleware and key applications. Android Inc was founded in Palo Alto of California, U.S. by Andy Rubin, Rich miner, Nick sears and Chris White in 2003. Later Android Inc. was acquired by Google in 2005. After original release there have been number of updates in the original version of Android. This Project is aimed at developing an Air Hockey game, and is built for the Android OS. This game has been built in Java.

INDEX
1 Introduction 1.1 Project Summary 1.2 Innovativeness 1.3 Project Scope 1.4 Tools & Technologies Used 1.4.1 AndEngine 1.4.2 Eclipse 1.4.3 Photoshop 1.4.4 Android SDK 2 Software and Hardware Requirement 2.1 Software Requirements 2.2 Hardware Requirements 3 - Software Design 3.1 Usecase Diagram 3.2 Class Diagram 4 - Screenshots 5 - Future Enhancement 6 Conclusion 7 Bibliography 7.1 Books 7.2 Websites

1: INTRODUCTION
1.1 PROJECT SUMMARY:
Project Title: Air Hockey 2D Physics Game Problem Statement: Create a 2D game which simulates the game of air hockey on an android device. The software should be able to take uninterrupted inputs smoothly during the gameplay, and hence should be highly optimized. The software should also have a player running on Artificial Intelligence to serve as an opponent to the user. Scores should be maintained and updated on each goal and results should be declared at the end of the game. Project Description: The project deals with the task of designing a game by creating various algorithms. These algorithms are responsible for various things like making possible the physics emulation of the player in the game, for gesture recognition on the devices which helps user to control the player, etc. The software will be able to increase the difficulty of the levels as the user makes progress in the game. Java is a programming language originally developed by Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities. Java applications are typically compiled to bytecode that can run on any Java Virtual Machine (JVM) regardless of computer architecture. One characteristic of Java is platform independence, which means that programs written in the Java language must run similarly on any supported hardware/operating-system platform. One should be able to write a program once, compile it once, and run it anywhere. This is achieved by compiling the Java language code, not to machine code but to Java

bytecode instructions analogous to machine code but intended to be interpreted by a virtual machine (VM) written specifically for the host hardware. End-users commonly use a JRE installed on their own machine, or in a Web browser. Standardized libraries provide a generic way to access host specific features such as graphics, threading and networking. In some JVM versions, bytecode can be compiled to native code, either before or during program execution, resulting in faster execution. A major benefit of using byte code is portability.

1.2 INNOVATIVENESS:
Gaming industry is an evergreen and fast growing area in the world. Developing a game not only tests the programming ability of the programmer, but also tests the efficiency, creativity, and his ability to map the real world environment into the software product he is developing. This project not only covers the programming aspects, but also GUI (Graphical User Interface) designing

1.3 PROJECT SCOPE:


The game can be very helpful software for people who want to find a source of entertainment, which is mobile. For full functionality, some modules of the game may require network access on the device. Further, the game provides the single player functionality and local multiplayer as well, and can be extended to online multiplayer in the future.

1.4 TOOLS & TECHNOLOGIES USED:


The technologies that were used in the development of the game are as follows: 1.4.1 ANDENGINE What is AndEngine? AndEngine is a free 2D OpenGL game engine for the Android platform. Along with the core engine, the platform supports extensions, such as the following: PhysicsBox2DExtension : Allows use of Box2D physics. TMXTiledMapExtension : Allows reading of files generated in the TMX Map Format. TexturePackerExtension : Allows use of sprite sheets or sprite atlases generated by TexturePacker. MultiplayerExtension : Supports multiplayer

1.4.2 ECLIPSE What is Eclipse? In computer programming, Eclipse is an Integrated development environment (IDE) comprising a base workspace and an extensible plug-in system for customizing the environment. It is written mostly in Java. It can be used to develop applications in Java and, by means of various plug-ins, other programming languages including Ada, C, C++, COBOL, Fortran, Haskell, JavaScript, Lasso, Perl, PHP, Python, R, Ruby (including Ruby on Rails framework), Scala, Clojure, Groovy, Scheme, and Erlang. It can also be used to develop packages for the software Mathematica. Development environments include the Eclipse Java development tools (JDT) for Java and Scala, Eclipse CDT for C/C++ and Eclipse PDT for PHP, among others. 1.4.3 PHOTOSHOP What is Photoshop? Adobe Photoshop is a graphics editing program developed and published by Adobe Systems. Adobe's 2003 "Creative Suite" rebranding led to Adobe Photoshop 8's renaming to Adobe Photoshop CS. Thus, Adobe Photoshop CS6 is the 13th major release of Adobe Photoshop. The CS rebranding also resulted in Adobe offering numerous software packages containing multiple Adobe programs for a reduced price. Adobe Photoshop is released in two editions: Adobe Photoshop, and Adobe Photoshop Extended, with the Extended having extra 3D image creation, motion graphics editing, and advanced image analysis features. Adobe Photoshop Extended is included in all of Adobe's Creative Suite offerings except Design Standard, which includes the Adobe Photoshop edition. 1.4.4 ANDROID SDK Android applications are usually developed in the Java programming language using the Android Software Development Kit, but other development tools are available. As of October 2012, more than 700,000 applications have been developed for Android, with over 25 billion downloads.

2: SOFTWARE AND HARDWARE REQUIREMENT

2.1 Software Requirements:


Android 2.2 or higher OpenGL ES 2.0

2.2 Hardware Requirements:


800 MHz processor or better 256 MB RAM or more 7 MB free internal storage 4 Multitouch inputs or more Network connection to internet

3: SOFTWARE DESIGN

3.1 USECASE Diagram

3.2 CLASS Diagram

4: SCREENSHOTS
Main Menu:

Instructions Menu:

Player Vs Player - Scene 01:

Player Vs Player - Scene 02:

Career Scene 01:

Career - Scene 02:

Career Scene 03:

5: FUTURE ENHANCEMENT
It can support online scoreboards. It can be extended to online multiplayer matches. The AI can be made more intelligent. More power-ups can be made available in the game

6: CONCLUSION
From a proper analysis of positive points and constraints on the component, it can be safely concluded that the product is an efficient GUI based component. This application is working properly and meeting to all user requirements. After doing this project, I have learned many things and I would like to thank all the concerned individuals who have contributed to my precious learning. I have also understood the importance of naming conventions and coding conventions in development process. I am sure that I can perform better as I step up on the ladder of experience.

7: BIBLIOGRAPHY
7.1 BOOKS:
Head First Java Kathy Sierra & Bert Bates

7.2 WEBSITES:

http://www.andengine.org https://github.com/nicolasgramlich/AndEngine http://www.raywenderlich.com/ http://www.box2d.org

http://www.youtube.com/ https://www.google.com/

Você também pode gostar