html5 the new ui library for games
play

HTML5: The New UI Library For Games > Chad Austin > Technical - PowerPoint PPT Presentation

HTML5: The New UI Library For Games > Chad Austin > Technical Director, IMVU HTML IS WINNING Browser wars are hotter than ever > Features like canvas, SVG, CSS3, becoming standard > GPU accelerated compositing &


  1. HTML5: The New UI Library For Games > Chad Austin > Technical Director, IMVU

  2. HTML IS WINNING

  3. Browser wars are hotter than ever > Features like canvas, SVG, CSS3, becoming standard > GPU accelerated compositing & rasterization > Tracing JITs

  4. Terminology > HTML = markup + CSS + JS + Canvas + sockets + etc. > Mozilla = Firefox = Gecko

  5. HISTORY OF IMVU’S UI

  6. 2004-2007: C++ & OpenGL

  7. C++, GL, Win32 > Cons > Hard to find talent > Hard to maintain > Long recompiles and iteration times > Inflexible

  8. 2007-2009: Flash

  9. Flash, Flex > Pros > Able to iterate > Easy animation, video > Cons > High memory usage, address space leaks > Looong mxmlc compile times > Buggy

  10. 2009+: HTML

  11. Pros! > Very fast iteration > Matched intended design to the pixel > Performance was fantastic > Render to texture and composite in 3D scene

  12. 2009+: HTML

  13. 2009+: HTML

  14. 2009+: HTML

  15. BENEFITS OF HTML

  16. Lingua Franca

  17. Hot Reloading, Firebug

  18. jQuery, YUI

  19. Advertising

  20. DEMO

  21. PERFORMANCE?

  22. If your browser can handle this…

  23. Performance > Not a bottleneck for us > Even 3D overlays! > <1 MB per Gecko document loaded > 1000s of friends, inventory items

  24. Performance (Friends) Some DOM ops are O(n), use b-tree

  25. Performance (Inventory) Be careful to release image elements when scrolled out of view

  26. Today’s Drawbacks > Elaborate animation still easier in Flash than SVG/Canvas/JS > 3D: WebGL not prime time yet > Tracing JITs hungrier than Lua/C++

  27. WHO ELSE USES HTML FOR UI?

  28. Wolfire – Overgrowth

  29. Wolfire – Overgrowth (con’t)

  30. Electronic Arts – Skate 3

  31. Netflix on PlayStation 3

  32. In-game Browsers > Second Life > CCP – EVE Online > Funcom – Anarchy Online, Age of Conan > ArenaNet – Guild Wars 2

  33. Getting Started > WebKit http://webkit.org/ vs. Gecko https://developer.mozilla.org/en/Gecko > We chose Gecko, most use WebKit (EA’s PS3 port: http://gpl.ea.com/skate3.html) > Leverage entire stack: stream pixels from HTTP into texture

  34. Wrappers > http://ubrowser.com/ > http://wiki.secondlife.com/wiki/LlMozLib > http://wiki.secondlife.com/wiki/LLQtWebKit > http://www.khrona.com/products/awesomium/ > http://berkelium.org/

  35. Recap > HTML and web technologies are advancing quickly > Already suitable for in-game UIs > Rapid development and iteration > Worked for us, may work for you!

  36. Questions? chad@imvu.com http://engineering.imvu.com We’re hiring!

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend