220 likes | 328 Views
Software Engineering. IDE and Development Engines engines – crash course. Game engine. Computer game = infrastructure + content Game engine = infrastructure layer of game development process. Game engine. Same infrastructure, several games
E N D
Software Engineering IDE and Development Engines engines – crash course
Game engine • Computer game = infrastructure + content • Game engine = infrastructure layer of game development process
Game engine • Same infrastructure, several games • Example: Unreal engine (http://www.netbeans.org) • Dozens of systems developed using Unrealistic approaches to software design • Big business: Software license can cost upto US$750,000 or more
Game engine – Unreal • Unreal games (a few examples):
IDE Basics in Netbeans • “Technical” issues encapsulated in infrastructure • “Artistic” issues (i.e. content) released from technicalities
IDE engine useful Usefulness versus Genericity generic
IDE engine – 2D engines • Command line apps are (just) slightly simpler to develop and implement, including technical issues • GUI Apps are more complex
2D game engine – example • Gamemaker by Mark Overmars • http://www.gamemaker.nl • Written in Delphi v.7 • About 40 thousand lines of code • Project started in 1999 • First public release took about 4 months • Present version: 6.1
2D game engine - example • Hints: • Follow the simple game construction example in the next slides • From that, infer some basic features your game engine must present • Check the material at http://www.gamemaker.nl • Build your requirements
2D game engine – example • WARNING: • Your project cannot be too complex – otherwise you will not complete the required steps in time • Your project cannot be too simple – it MUST keep the whole team busy, and it MUST be such that a smaller team could not complete it
Gamemaker • A maze game
Gamemaker • Graphic elements (“sprites”) – wall
Gamemaker • Graphic elements (“sprites”) – goal
Gamemaker • Graphic elements (“sprites”) – agent
Gamemaker • Objects – wall (no associated event)
Gamemaker • Objects – goal
Gamemaker • Objects – agent(I): move according to arrows
Gamemaker • Objects – agent(II): grid alignment
Gamemaker • Objects – agent(III): stop when hitting wall
Gamemaker • Rooms:
Gamemaker • Rooms:
Game engines • Additional information: • Game Engine Anatomy 101 – http://www.extremetech.com/article2/0,3973,594,00.asp • Your lecturer • Your teaching assistants • http://www.ime.usp.br/~lidet