SlideShare uma empresa Scribd logo
1 de 32
1
Pham Tung
Javascript and HTML5 Game
Overview of Canvas
Game Programming
Libraries & Tools
Demo
Resources & References
- Let’s Get Start
3
HTML5
Web Socket Drag & Drop
Web Storage History
Web Worker Offline App
Web Database /
Indexed DB
Geolocation
Canvas Video / Audio
 Easy to develop
 Fast deployment
 Easy to debug
 Open source
 Free tools
 Wide support:
◦ Web browers
◦ Mobile devices
◦ Social networking application
• Javascript codeLogic
• <canvas>Graphics
• Onkeydown, onmousedown, …Input
• <audio>Sound / Music
• Ajax, WebSocketMultiplayer
• Images, Video, File APIGame Assets
- A Quick Tour of Using Canvas from
Javascript
8
 2D drawing platform within the browser
 Uses nothing more than JavaScript and HTML
– no plugins
 Extensible through a JavaScript API
 Created by Apple for dashboard widgets
 Now openly developed as a W3C spec
Data visualisation
Animated graphics
Web applications
Games
 <canvas height='600' width='800'></canvas>
 Uses the standard screen-based coordinate
system
 Everything is drawn onto the 2D rendering
context (ctx)
 var canvas =
document.getElementById("canvas");
 var ctx = canvas.getContext("2d");
 ctx.fillStyle = 'rgb(255, 0, 0)';
 ctx.strokeStyle = 'rgba(0, 255, 0, 0.5)';
Method Action
fillRect(x, y, w, h) Draws a rectangle using the
current fill style
strokeRect(x, y, w, h) Draws the outline of a rectangle
using the current stroke style
clearRect(x, y, w, h) Clears all pixels within the given
rectangle
 Text
 Shadows & blurring
 Lines, shapes, image
 Gradients
 Saving state of drawing context
 Transformations
 Composites
 Pixel Manipulation
 http://www.html5canvastutorials.com/
 OOP programming allows much to be
achieved through canvas
 It’ s flexible and powerful
◦ Animation engines
◦ Pseudo 3D graphics
 Reading pixel values opens a lot of doors
 Integration with other HTML5 elements is a
killer feature
 HTML5 Canvas
◦ More open than Flash
◦ Smaller result.
◦ Javascript is built into browsers
◦ Works on most of platforms
◦ No need to compile.
 Adobe Flash
◦ Great authoring tool, easy to go from idea to working
product
◦ Better sound support - many JavaScript libraries
use SoundManager2, which falls back on Flash and tends
to lag
◦ Do not work good in all platforms, for example Linux.
- Get to the Core of the Problem
17
var FPS = 60;
setInterval(gameTick,1000/FPS)
function gameTick()
{
processInput();
updateGame();
draw();
}
don’t always need a game loop
 Euclid
◦ Rotation (known angle)
◦ Rotation (unknown angle)
◦ Rotation (triangle overlay)
◦ Rotation + particles
 Newton
◦ Position
◦ Velocity
◦ Acceleration
◦ Collisions
 Optimizing game loop, skipping draw.
 Use requestAnimationFrame instead of
setInterval / setTimeout.
 Frame buffering, multiple canvases.
 Avoid unnecessary canvas state change.
 Dirty rectangle: redraw only those areas that
have changed.
 Use DOM Elements whenever possible.
– Make everything simple
21
Box2DJs
• A port of Box2D Physics Engine to JavaScript.
SoundManager2
• Using HTML5 and Flash, provides reliable cross-
platform audio under a single JavaScript API.
CanvasScript3
• A Javascript sprite library for HTML5 Canvas similar to
FLASH/ActionScript3
Node.js
• Built on Chrome's JavaScript runtime for easily building
fast, scalable network applications.
 1. HTML5 Game Engine
◦ High Performance
◦ Fully Documented
◦ 2d Physics
◦ Intuitive Interface
◦ Offline Support
 http://www.scirra.com/html5-game-engine
 2. Impact Js
◦ Play Everywhere
◦ Flexible Level Editor for Anything 2D
◦ Publish game into the AppStore with almost native
performance
◦ Powerful Debug Tools
 http://impactjs.com/
 3. Isogenic Engine
◦ Advanced Realtime Networking
◦ Facebook Integration
◦ High Performance Canvas
◦ Physics system built-in utilising Box2d
 http://www.isogenicengine.com/
- A Two Week Game from Scratch
26
 All the usual gameplay, collect coins and
finish the levels.
 No need to download any plugins to play.
 Online version and source code are available
on http://vietgamedev.net/apps/23/mario/
- For further research
29
 Learning HTML5
◦ List of HTML5 Presentation Resources – Earlier post with
many links for this session
◦ HTML5: Edition for Web Authors – Focused subset of the
specification for web devs
◦ HTML5 on the Internet Explorer Learning Site – Videos,
tutorials, articles
◦ HTML5 Demos from Giorgio Sardo – HTML5, CSS, JS, etc.
◦ HTML5 Doctor – HTML5 articles, Element Index, and
resources

Implementing HTML5
◦ CanIUse.com – Details support by browser for HTML5,
CSS3, and other technologies
◦ Modernizr – HTML5 & CSS3 feature detection made easy
◦ HTML5 Cross Browser Polyfills – Helpful for implementing
features while supporting a range of browsers
 HTML5 Specification
 http://developers.whatwg.org/
 Dive into HTML5
 http://diveintohtml5.info/
 Physics for Lazy Game Developers
◦ http://labs.skookum.com/demos/barcampclt_physics/
 Developing Your First HTML5 Game
◦ http://www.script-tutorials.com/html5-game-
development-lesson-1
 HTML5 Canvas Tutorial
 http://www.html5canvastutorials.com/
 HTML5 Game Development Resources
 http://blogs.msdn.com/b/cbowen/archive/2011/12/15/ht
ml5-game-development-resources-from-the-game-
camps.aspx
http://vietgamedev.net
http://yinyangit.wordpress.com
32

Mais conteúdo relacionado

Mais procurados

Hierachical z Map Occlusion Culling
Hierachical z Map Occlusion CullingHierachical z Map Occlusion Culling
Hierachical z Map Occlusion Culling
YEONG-CHEON YOU
 
The Technology of Uncharted: Drake’s Fortune
The Technology of Uncharted: Drake’s FortuneThe Technology of Uncharted: Drake’s Fortune
The Technology of Uncharted: Drake’s Fortune
Naughty Dog
 

Mais procurados (20)

How the Universal Render Pipeline unlocks games for you - Unite Copenhagen 2019
How the Universal Render Pipeline unlocks games for you - Unite Copenhagen 2019How the Universal Render Pipeline unlocks games for you - Unite Copenhagen 2019
How the Universal Render Pipeline unlocks games for you - Unite Copenhagen 2019
 
Masked Software Occlusion Culling
Masked Software Occlusion CullingMasked Software Occlusion Culling
Masked Software Occlusion Culling
 
Masked Occlusion Culling
Masked Occlusion CullingMasked Occlusion Culling
Masked Occlusion Culling
 
Introduction to Unity
Introduction to UnityIntroduction to Unity
Introduction to Unity
 
該準備從 .NET Framework 4.x 遷移至 .NET Core 3.0 了嗎?
該準備從 .NET Framework 4.x 遷移至 .NET Core 3.0 了嗎?該準備從 .NET Framework 4.x 遷移至 .NET Core 3.0 了嗎?
該準備從 .NET Framework 4.x 遷移至 .NET Core 3.0 了嗎?
 
Stochastic Screen-Space Reflections
Stochastic Screen-Space ReflectionsStochastic Screen-Space Reflections
Stochastic Screen-Space Reflections
 
Naughty Dog Vertex
Naughty Dog VertexNaughty Dog Vertex
Naughty Dog Vertex
 
Zabbix Conference Japan 2013 VMware monitoring
Zabbix Conference Japan 2013 VMware monitoringZabbix Conference Japan 2013 VMware monitoring
Zabbix Conference Japan 2013 VMware monitoring
 
Practical Guide for Optimizing Unity on Mobiles
Practical Guide for Optimizing Unity on MobilesPractical Guide for Optimizing Unity on Mobiles
Practical Guide for Optimizing Unity on Mobiles
 
Offshore Game Development Presentation
Offshore Game Development PresentationOffshore Game Development Presentation
Offshore Game Development Presentation
 
Screen Space Decals in Warhammer 40,000: Space Marine
Screen Space Decals in Warhammer 40,000: Space MarineScreen Space Decals in Warhammer 40,000: Space Marine
Screen Space Decals in Warhammer 40,000: Space Marine
 
Hierachical z Map Occlusion Culling
Hierachical z Map Occlusion CullingHierachical z Map Occlusion Culling
Hierachical z Map Occlusion Culling
 
Androidへのdebianインストール奮闘記
Androidへのdebianインストール奮闘記Androidへのdebianインストール奮闘記
Androidへのdebianインストール奮闘記
 
Unity Game Engine - Basics
Unity Game Engine - BasicsUnity Game Engine - Basics
Unity Game Engine - Basics
 
The Technology of Uncharted: Drake’s Fortune
The Technology of Uncharted: Drake’s FortuneThe Technology of Uncharted: Drake’s Fortune
The Technology of Uncharted: Drake’s Fortune
 
Android Internals
Android InternalsAndroid Internals
Android Internals
 
Bindless Deferred Decals in The Surge 2
Bindless Deferred Decals in The Surge 2Bindless Deferred Decals in The Surge 2
Bindless Deferred Decals in The Surge 2
 
게임 BM 이야기
게임 BM 이야기게임 BM 이야기
게임 BM 이야기
 
SIGGRAPH 2018 - Full Rays Ahead! From Raster to Real-Time Raytracing
SIGGRAPH 2018 - Full Rays Ahead! From Raster to Real-Time RaytracingSIGGRAPH 2018 - Full Rays Ahead! From Raster to Real-Time Raytracing
SIGGRAPH 2018 - Full Rays Ahead! From Raster to Real-Time Raytracing
 
CUDA Raytracing을 이용한 Voxel오브젝트 가시성 테스트
CUDA Raytracing을 이용한 Voxel오브젝트 가시성 테스트CUDA Raytracing을 이용한 Voxel오브젝트 가시성 테스트
CUDA Raytracing을 이용한 Voxel오브젝트 가시성 테스트
 

Semelhante a Html5 Game Development with Canvas

SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13
SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13
SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13
Fred Sauer
 
Ie9 dev overview (300) beta
Ie9 dev overview (300) betaIe9 dev overview (300) beta
Ie9 dev overview (300) beta
Kirk Yamamoto
 

Semelhante a Html5 Game Development with Canvas (20)

Html5 (games)
Html5 (games)Html5 (games)
Html5 (games)
 
Programming Language Final PPT
Programming Language Final PPTProgramming Language Final PPT
Programming Language Final PPT
 
Introduction to HTML5 & CSS3
Introduction to HTML5 & CSS3Introduction to HTML5 & CSS3
Introduction to HTML5 & CSS3
 
SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13
SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13
SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13
 
Building Kick Ass Video Games for the Cloud
Building Kick Ass Video Games for the CloudBuilding Kick Ass Video Games for the Cloud
Building Kick Ass Video Games for the Cloud
 
Introduction to html5 game programming with impact js
Introduction to html5 game programming with impact jsIntroduction to html5 game programming with impact js
Introduction to html5 game programming with impact js
 
Improving Game Performance in the Browser
Improving Game Performance in the BrowserImproving Game Performance in the Browser
Improving Game Performance in the Browser
 
Full stack development in Go
Full stack development in GoFull stack development in Go
Full stack development in Go
 
Introduction to html5 game programming with ImpactJs
Introduction to html5 game programming with ImpactJsIntroduction to html5 game programming with ImpactJs
Introduction to html5 game programming with ImpactJs
 
Rapid and Reliable Developing with HTML5 & GWT
Rapid and Reliable Developing with HTML5 & GWTRapid and Reliable Developing with HTML5 & GWT
Rapid and Reliable Developing with HTML5 & GWT
 
AAA 3D GRAPHICS ON THE WEB WITH REACTJS + BABYLONJS + UNITY3D by Denis Radin ...
AAA 3D GRAPHICS ON THE WEB WITH REACTJS + BABYLONJS + UNITY3D by Denis Radin ...AAA 3D GRAPHICS ON THE WEB WITH REACTJS + BABYLONJS + UNITY3D by Denis Radin ...
AAA 3D GRAPHICS ON THE WEB WITH REACTJS + BABYLONJS + UNITY3D by Denis Radin ...
 
JS Fest 2019. Денис Радин. AAA 3D графика в Web с ReactJS, BabylonJS и Unity3D
JS Fest 2019. Денис Радин. AAA 3D графика в Web с ReactJS, BabylonJS и Unity3DJS Fest 2019. Денис Радин. AAA 3D графика в Web с ReactJS, BabylonJS и Unity3D
JS Fest 2019. Денис Радин. AAA 3D графика в Web с ReactJS, BabylonJS и Unity3D
 
W3C HTML5 KIG-The complete guide to building html5 games
W3C HTML5 KIG-The complete guide to building html5 gamesW3C HTML5 KIG-The complete guide to building html5 games
W3C HTML5 KIG-The complete guide to building html5 games
 
Nodejs and WebSockets
Nodejs and WebSocketsNodejs and WebSockets
Nodejs and WebSockets
 
HTML5DevConf 2013 (October): WebGL is a game changer!
HTML5DevConf 2013 (October): WebGL is a game changer!HTML5DevConf 2013 (October): WebGL is a game changer!
HTML5DevConf 2013 (October): WebGL is a game changer!
 
Node azure
Node azureNode azure
Node azure
 
Ie9 dev overview (300) beta
Ie9 dev overview (300) betaIe9 dev overview (300) beta
Ie9 dev overview (300) beta
 
An Introduction To Android
An Introduction To AndroidAn Introduction To Android
An Introduction To Android
 
Capstone Project Final Presentation
Capstone Project Final PresentationCapstone Project Final Presentation
Capstone Project Final Presentation
 
GWT Introduction and Overview - SV Code Camp 09
GWT Introduction and Overview - SV Code Camp 09GWT Introduction and Overview - SV Code Camp 09
GWT Introduction and Overview - SV Code Camp 09
 

Último

1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
QucHHunhnh
 
Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.
MateoGardella
 
Seal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxSeal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptx
negromaestrong
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
heathfieldcps1
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
kauryashika82
 
Gardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch LetterGardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch Letter
MateoGardella
 

Último (20)

SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdf
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.
 
Seal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxSeal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptx
 
SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...
SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...
SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
Advance Mobile Application Development class 07
Advance Mobile Application Development class 07Advance Mobile Application Development class 07
Advance Mobile Application Development class 07
 
Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdf
 
fourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writingfourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writing
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 
Gardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch LetterGardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch Letter
 

Html5 Game Development with Canvas

  • 2. Javascript and HTML5 Game Overview of Canvas Game Programming Libraries & Tools Demo Resources & References
  • 3. - Let’s Get Start 3
  • 4. HTML5 Web Socket Drag & Drop Web Storage History Web Worker Offline App Web Database / Indexed DB Geolocation Canvas Video / Audio
  • 5.  Easy to develop  Fast deployment  Easy to debug  Open source  Free tools  Wide support: ◦ Web browers ◦ Mobile devices ◦ Social networking application
  • 6.
  • 7. • Javascript codeLogic • <canvas>Graphics • Onkeydown, onmousedown, …Input • <audio>Sound / Music • Ajax, WebSocketMultiplayer • Images, Video, File APIGame Assets
  • 8. - A Quick Tour of Using Canvas from Javascript 8
  • 9.  2D drawing platform within the browser  Uses nothing more than JavaScript and HTML – no plugins  Extensible through a JavaScript API  Created by Apple for dashboard widgets  Now openly developed as a W3C spec
  • 11.  <canvas height='600' width='800'></canvas>  Uses the standard screen-based coordinate system
  • 12.  Everything is drawn onto the 2D rendering context (ctx)
  • 13.  var canvas = document.getElementById("canvas");  var ctx = canvas.getContext("2d");  ctx.fillStyle = 'rgb(255, 0, 0)';  ctx.strokeStyle = 'rgba(0, 255, 0, 0.5)'; Method Action fillRect(x, y, w, h) Draws a rectangle using the current fill style strokeRect(x, y, w, h) Draws the outline of a rectangle using the current stroke style clearRect(x, y, w, h) Clears all pixels within the given rectangle
  • 14.  Text  Shadows & blurring  Lines, shapes, image  Gradients  Saving state of drawing context  Transformations  Composites  Pixel Manipulation  http://www.html5canvastutorials.com/
  • 15.  OOP programming allows much to be achieved through canvas  It’ s flexible and powerful ◦ Animation engines ◦ Pseudo 3D graphics  Reading pixel values opens a lot of doors  Integration with other HTML5 elements is a killer feature
  • 16.  HTML5 Canvas ◦ More open than Flash ◦ Smaller result. ◦ Javascript is built into browsers ◦ Works on most of platforms ◦ No need to compile.  Adobe Flash ◦ Great authoring tool, easy to go from idea to working product ◦ Better sound support - many JavaScript libraries use SoundManager2, which falls back on Flash and tends to lag ◦ Do not work good in all platforms, for example Linux.
  • 17. - Get to the Core of the Problem 17
  • 18. var FPS = 60; setInterval(gameTick,1000/FPS) function gameTick() { processInput(); updateGame(); draw(); } don’t always need a game loop
  • 19.  Euclid ◦ Rotation (known angle) ◦ Rotation (unknown angle) ◦ Rotation (triangle overlay) ◦ Rotation + particles  Newton ◦ Position ◦ Velocity ◦ Acceleration ◦ Collisions
  • 20.  Optimizing game loop, skipping draw.  Use requestAnimationFrame instead of setInterval / setTimeout.  Frame buffering, multiple canvases.  Avoid unnecessary canvas state change.  Dirty rectangle: redraw only those areas that have changed.  Use DOM Elements whenever possible.
  • 21. – Make everything simple 21
  • 22. Box2DJs • A port of Box2D Physics Engine to JavaScript. SoundManager2 • Using HTML5 and Flash, provides reliable cross- platform audio under a single JavaScript API. CanvasScript3 • A Javascript sprite library for HTML5 Canvas similar to FLASH/ActionScript3 Node.js • Built on Chrome's JavaScript runtime for easily building fast, scalable network applications.
  • 23.  1. HTML5 Game Engine ◦ High Performance ◦ Fully Documented ◦ 2d Physics ◦ Intuitive Interface ◦ Offline Support  http://www.scirra.com/html5-game-engine
  • 24.  2. Impact Js ◦ Play Everywhere ◦ Flexible Level Editor for Anything 2D ◦ Publish game into the AppStore with almost native performance ◦ Powerful Debug Tools  http://impactjs.com/
  • 25.  3. Isogenic Engine ◦ Advanced Realtime Networking ◦ Facebook Integration ◦ High Performance Canvas ◦ Physics system built-in utilising Box2d  http://www.isogenicengine.com/
  • 26. - A Two Week Game from Scratch 26
  • 27.  All the usual gameplay, collect coins and finish the levels.  No need to download any plugins to play.  Online version and source code are available on http://vietgamedev.net/apps/23/mario/
  • 28.
  • 29. - For further research 29
  • 30.  Learning HTML5 ◦ List of HTML5 Presentation Resources – Earlier post with many links for this session ◦ HTML5: Edition for Web Authors – Focused subset of the specification for web devs ◦ HTML5 on the Internet Explorer Learning Site – Videos, tutorials, articles ◦ HTML5 Demos from Giorgio Sardo – HTML5, CSS, JS, etc. ◦ HTML5 Doctor – HTML5 articles, Element Index, and resources  Implementing HTML5 ◦ CanIUse.com – Details support by browser for HTML5, CSS3, and other technologies ◦ Modernizr – HTML5 & CSS3 feature detection made easy ◦ HTML5 Cross Browser Polyfills – Helpful for implementing features while supporting a range of browsers
  • 31.  HTML5 Specification  http://developers.whatwg.org/  Dive into HTML5  http://diveintohtml5.info/  Physics for Lazy Game Developers ◦ http://labs.skookum.com/demos/barcampclt_physics/  Developing Your First HTML5 Game ◦ http://www.script-tutorials.com/html5-game- development-lesson-1  HTML5 Canvas Tutorial  http://www.html5canvastutorials.com/  HTML5 Game Development Resources  http://blogs.msdn.com/b/cbowen/archive/2011/12/15/ht ml5-game-development-resources-from-the-game- camps.aspx