Game Programming - University of Brawijaya

Download Report

Transcript Game Programming - University of Brawijaya

Eriq Muhammad Adams J.
[email protected]
Agenda







Game
Genre
Game Engine
Game Engine Structure
Game Development Workflow
Terminology
Tips
Game
 Greg Costikyan : "A game is a form of art in which
participants, termed players, make decisions in order
to manage resources through game tokens in the
pursuit of a goal.“
 Eric Zimmerman : "An activity with some rules
engaged in for an outcome."
Game (cont.)
 To build an impressive game you have to learn game
design (please read game design books).
 Game design is the process of:
 Imagining a game.
 Defining the way it works.
 Describing the elements that make up the game
(conceptual, functional, artistic, and others).
 Transmitting that information to the team that will build
the game.
Game (cont.)
 Ideas may came from :
 Dream (daydream).
 Other media such as television, movies, books, etc.
 Other games.
Genre
 Action games normally include physical challenges, puzzles, races,
and a variety of conflict challenges, mostly at the personal level.
 Strategy games tend to include strategic (naturally), tactical, and
logistical challenges, in addition to the occasional economic ones.
 Role-playing games involve tactical, logistical, and exploration
challenges
 Real-world simulations include sports games and vehicle
simulations, including military vehicles.
 Construction and management games such as Roller Coaster
Tycoon are primarily about economic and conceptual challenges.
 Adventure games are chiefly about exploration and puzzle-solving.
Game Engine
 A game engine is a software system designed for the
creation and development of video games.
 Game Engine has several sub engines such as sound
engine, graphic engine, physics engine, AI engine, etc.
 Commercial Engine : Unreal Engine, C4 Engine, Unity 3D,
Renderware, GameByro, etc
 Open Source Engine : Illricht (C++), Ogre 3D (C++), Panda
3D (Python/C++), Jmonkey Engine (Java), Xith3D (Java),
JPCT (Java), Slick2d (Java), AndEngine (android/Java), etc.
Game Engine Structure
Game Development Workflow
Idea
Requirement
Gathering
Planning
Development
Milestone
Release
Phase
Debugging &
Testing
Phase
Development
Phase
http://jmonkeyengine.org/wiki/doku.php/jme3:intermediate:best_practices
Terminology
 See the basic game development terminology at
http://jmonkeyengine.org/wiki/doku.php/jme3:termin
ology
Tips
 Use Version Control to versioning codes : CVS,
Subversion, Mercurial, etc.
 Understanding your audiences (for core games or
casual games).
 Don’t reinvent the wheel
 In programming, do complex thing first.
References
 New Riders - Andrew Rollings and Ernest Adams on
Game Design
 New Riders - Chris Crawford on Game Design
 http://jmonkeyengine.org/wiki/doku.php/jme3