## Výučba programovania tvorbou počítačových hier
miroslav.binas@tuke.sk / [**OSS Conf 2019**](http://ossconf.soit.sk/)
## Hráte sa počítačové hry?
![Assassin's Creed](images/assassins.creed.jpg)
![TIS 100](images/tis.100.jpg)
## Naprogramovali ste si vlastnú počítačovú hru?
[![Pygame logo](images/logo-pygame.png)](https://www.pygame.org/news)
[![SDL logo](images/logo-sdl.png)](https://www.libsdl.org/)
Since 1998
![Steam logo](images/logo-steam.jpg)
## Inštalácia
* Raspberry Pi - predinštalované
* `sudo dnf install pgzero mu`
* `pip install pgzero mu-editor`
Note:
* https://www.raspberrypi.org/magpi/wp-content/uploads/2015/06/35_PygameZero.jpg
### Pygame Zero is for creating games without boilerplate.
Note:
* ukazat co je to boilerplate
* ukazat, ako to je v pygame
## Demo Time
tentokrát to nebude hra :-/
## Pygame Features I.
* preferovaný procedurálny prístup
* dá sa pracovať aj objektovo
* nevie pracovať s animáciami
* možno bude vedieť ;-)
* problém s mapami
* ideálne pre jednoobrazovkové hry
* chýba podpora pre editor levelov, napr. [Tiled](https://www.mapeditor.org/)
## Pygame Features II.
* plánovaná podpora pre ovládače
* dá sa obísť na RPi cez GPIO (Zero)
* dá sa k RPi pripojiť [micro:bit](https://microbit.org/) a použiť ho ako ovládač ;)
* preklad dokumentácie do [slovenčiny](https://pgzero-slovak.readthedocs.io/sk/latest/index.html)
## Odkazy
* [Pygame Zero homepage](https://pygame-zero.readthedocs.io/) ([sk](https://pgzero-slovak.readthedocs.io/sk/latest/index.html))
* [Wireframe](https://wireframe.raspberrypi.org/) and [MagPi](https://www.raspberrypi.org/magpi/) Magazines
* [Mission Python](https://nostarch.com/missionpython) ([YouTube Video](https://www.youtube.com/watch?time_continue=2&v=_2aglIeW1kQ))
* [Tvorba počítačových hier s Pygame Zero](https://legacy.gitbook.com/book/bletvaska/tvorba-pocitacovych-hier-s-pygame-zero/details) - poznámky ku tvorivej dielni
* [PyWeek](https://pyweek.org/) - Python Game Programming Challenge
![qr code](https://api.qrserver.com/v1/create-qr-code/?data=http://bit.ly/2Xjkt4m&size=300x300)
(**http://bit.ly/2Xjkt4m**)