software engineering
DESCRIPTION
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 - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Software Engineering](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814212550346895dae1cc8/html5/thumbnails/1.jpg)
Software Engineering
IDE and Development Engines engines – crash course
![Page 2: Software Engineering](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814212550346895dae1cc8/html5/thumbnails/2.jpg)
Game engine
Computer game = infrastructure + content
Game engine = infrastructure layer of game development process
![Page 3: Software Engineering](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814212550346895dae1cc8/html5/thumbnails/3.jpg)
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
![Page 4: Software Engineering](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814212550346895dae1cc8/html5/thumbnails/4.jpg)
Game engine – Unreal
Unreal games (a few examples):
![Page 5: Software Engineering](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814212550346895dae1cc8/html5/thumbnails/5.jpg)
IDE Basics in Netbeans
“Technical” issues encapsulated in infrastructure
“Artistic” issues (i.e. content) released from technicalities
![Page 6: Software Engineering](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814212550346895dae1cc8/html5/thumbnails/6.jpg)
IDE engine
generic
usef
ul
Usefulness versus Genericity
![Page 7: Software Engineering](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814212550346895dae1cc8/html5/thumbnails/7.jpg)
IDE engine – 2D engines
Command line apps are (just) slightly simpler to develop and implement, including technical issues
GUI Apps are more complex
![Page 8: Software Engineering](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814212550346895dae1cc8/html5/thumbnails/8.jpg)
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
![Page 9: Software Engineering](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814212550346895dae1cc8/html5/thumbnails/9.jpg)
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
![Page 10: Software Engineering](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814212550346895dae1cc8/html5/thumbnails/10.jpg)
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
![Page 11: Software Engineering](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814212550346895dae1cc8/html5/thumbnails/11.jpg)
Gamemaker
A maze game
![Page 12: Software Engineering](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814212550346895dae1cc8/html5/thumbnails/12.jpg)
Gamemaker
Graphic elements (“sprites”) – wall
![Page 13: Software Engineering](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814212550346895dae1cc8/html5/thumbnails/13.jpg)
Gamemaker
Graphic elements (“sprites”) – goal
![Page 14: Software Engineering](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814212550346895dae1cc8/html5/thumbnails/14.jpg)
Gamemaker
Graphic elements (“sprites”) – agent
![Page 15: Software Engineering](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814212550346895dae1cc8/html5/thumbnails/15.jpg)
Gamemaker
Objects – wall (no associated event)
![Page 16: Software Engineering](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814212550346895dae1cc8/html5/thumbnails/16.jpg)
Gamemaker
Objects – goal
![Page 17: Software Engineering](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814212550346895dae1cc8/html5/thumbnails/17.jpg)
Gamemaker
Objects – agent(I): move according to arrows
![Page 18: Software Engineering](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814212550346895dae1cc8/html5/thumbnails/18.jpg)
Gamemaker
Objects – agent(II): grid alignment
![Page 19: Software Engineering](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814212550346895dae1cc8/html5/thumbnails/19.jpg)
Gamemaker
Objects – agent(III): stop when hitting wall
![Page 20: Software Engineering](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814212550346895dae1cc8/html5/thumbnails/20.jpg)
Gamemaker
Rooms:
![Page 21: Software Engineering](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814212550346895dae1cc8/html5/thumbnails/21.jpg)
Gamemaker
Rooms:
![Page 22: Software Engineering](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56814212550346895dae1cc8/html5/thumbnails/22.jpg)
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