Szmozsánszky István - Flaki
Webfejlesztés (frontend/backend)
Mobil alkalmazásfejlesztés (Android/Firefox OS)
Indie játékfejlesztés
Oh hey, these are some notes. They'll be hidden in your presentation, but you can see them if you open the speaker notes window (hit 's' on your keyboard).
Mik azok a HTML5 játékok?
Miért jó ez nekünk?
Nyílt, folyamatosan fejlődő technológia
Ingyenes: fejlesztés, terjesztés, hozzáférés
Minden további extra plugin nélkül működik (kivéve mikor nem )
Platform-független technológia
Mi az, ami még hiányzik?
Azért sajnos mégsem teljesen platform-független:
Internet Explorer: IE10 előtt gyengécske feature-support
WP7.5 - a mobil IE is folytatja a nagytestvér "hagyományát"
ICS előtti Android verziók stock browsere (néhány esetben ezen a Fennec segíthet)
DRM nem megoldott (obfuszkálás és/vagy minify segíthet)
Hardware és Extrák
További WebAPI-k
További WebAPI-k
Fullscreen API
Bizonyos játékokhoz alapvető elvárás a minél átfogóbb játékélmény ("immersive experience")
Az API-n keresztül kérheti az alkalmazás a teljes képernyős módot, de a felasználó megtagadhatja azt
További WebAPI-k
Multitouch
Az érintőképernyős eszközök többérintéses képességeinek kihasználására jött létre
Az IE itt is keresztbetesz (WP 7.5 nem támogat semmiféle érintéses (Touch) vagy hagyományos egér (Mouse) eventet
További WebAPI-k
Multitouch: Draggabilly
Egységesíti az egeres és touch rendszerek API-jait
Könnyíti a kezelést, támogatja a multitouchot
Próbáljátok ki mobilon/tableten:
További WebAPI-k
Bemenet: Pointer Lock
A már említett "immersive experience"-hez szükéges API-k
Főleg FPS/TPS/Arcade jellegű játékok igénylik
Egérmutató lehorgonyzását végzi a zavartalan játékélmény érdekében
További WebAPI-k
Bemenet: Gamepad API
Konzolos játékvezérlők kezelése webalkalmazásokban
A legkülönfélébb játékokhoz alkalmazható
Elég gyenge támogatottság (csak Firefox (experimental), de a hamarosan Chrome is implementálja)
További WebAPI-k
Hálózat: WebSockets
TCP/IP csatlakozást tesz lehetővé webalkalmazásoknak
Low-level hozzáférést nyújt a hálózati réteghez (így nem vagyunk XHR -re korlátozva)
További WebAPI-k
Hálózat: WebRTC
A WebRTC data streamek használhatók webalkalmazások közötti bináris adatkapcsolatra
Segítségével multiplayer játékok is létrehozhatók
Leegyszerűsíti a peer-to-peer multiplayer játékok írását
Szintén erősen experimental, kis támogatottság (de javul!)
További WebAPI-k
BrowserQuest
Multiplayer online RPG teljes egészében HTML5-ben írva.
További WebAPI-k
Offline: AppCache
Az offline működés megvalósítására hozták létre
Az AppCache manifest segítségével offline használatra tárolhatjuk alkalmazásunk fájljait (Képek, HTML/JS/CSS fájlok)
Alapvető offline képességet valósít meg, dinamikus alkalmazásokhoz más technológiákra is szükség van (Local Storage, IndexedDB)
Használata fokozott odafigyelést igényel
További WebAPI-k
Offline: Storage, IndexedDB, WebSQL
Adatokat tárolhatunk offline használatra (perzisztens módon) az eszközön
Dinamikus Offline alkalmazások megvalósítását teszi lehetővé (pl. térképek letöltése, találkozók tárolása stb.)
Még javában dúl a harc a szabványok közt (IndexedDB vs. WebSQL)
Teljesítmény
Elég gyorsak vagyunk mindehhez?
Teljesítmény
HTML5 Mítoszok
Nagyon sok mítosz kering a HTML5 alkalmassága körül, teljesítmény szempontjából támadják
Christian Heilmann a Mozilla vezető Developer Evangelist (gyk.: a fejlesztőkkel való kapcsolattartás, Open Web Technológiák népszerűsítője) fejlesztője sok kérdést megválaszol a lenti blogbejegyzésben:
Teljesítmény
Emscripten: BananaBread
Multiplayer online web-technológiákból felépülő FPS, C-forráskódból fordítva JavaScriptre (Emscriptennel).
Teljesítmény
Emscripten: DOOM
Emscriptennel fordított DOOM-port JavaScript/HTML5 technológiára.
Teljesítmény
Emscripten: Typed Arrays
Fix típusos tömbök, a javascript dinamikus típusú tömbjeinek helyettesítésére
Gyorsítja a tömbök elérését, a sok memóriamunkával járó oldalak jelentős mértékben gyorsulnak
Könnyíti a gépi fordítók (pl.: Emscripten) munkáját
Támogatottság
Mely platformok támogatják mindezt?
HTML5 játékok célplatformjai
A lista folyamatosan bővül!
A legtöbb asztali böngésző friss változata (IE10, Firefox, Safari, Chrome - Nightly/Canary buildek ajánlottak)
Mobile Safari, Chrome Mobile, Blackberry 10
A legtöbb gyári Android böngésző (ICS/Jelly Bean ajánlot)
Firefox for Android (Nightly ajánlott)
Nintendo Wii U
...no és természetesen a Firefox OS!
Eyecandy
Szemcukor, avagy itt tartunk most
Eyecandy
Unreal Engine 3 Demó
EPIC Games Unreal 3 grafikai motor JavaScriptre portolva.
Eyecandy
Firefox OS - Cut The Rope
Valós idejű fizika a Cut The Rope játékban Firefox OS-en.
Eyecandy
Flash vs HTML5 - Waste Invaders
Mutatós parallax shooter - Flash és HTML5 változaban is.