meta data for this page

CT30A4200 HTML5 Game Development (cs255)

  • 14.2.2013 14:00-15:45 in room 6218.
  • 21.2.2013 12.15-14 in room 6218.
  • 7.3.2013 12.15-14 in room 6218.
  • 14.3.2013 12.15-14 in room 6218.
  • 22.3.2013 10-12 in room 6218.
  • 10.5.2013 POST your progress report on your game
  • 20.5.2013 Status check 12:00 - @6218 (+read 3 other plans).
  • 1.6.2013 Final versions of the games.

Learning wiki for participants (more course stuff below the wiki links).

Update regularary - not just in end of the course. In the wiki mark:

  • Experiments from the “lessons”. Describe the problems with you had with the course (and used OS, browser if they could be related). Describe what you liked.
  • Used hours. Be honest.


Link deleted

Building High Performance Web Applications

4 ECTS in LUT. More information from Jouni Ikonen (course does not have a LUT course number yet).

Class summary: This course will walk you through the major components of building GRITS, an HTML5 game. We'll talk about how to take standard game development techniques, and use them to create high performance HTML5 applications.

Requirements: Basic knowledge of HTML, Javascript, and how the web works is necessary for this course. There is an optional unit on HTML and Javascript to help get you up-to-speed.

PLEASE SEE for virtual course details. ENROL in Udacity AND ENROL ALSO in to receive LUT credit

The course will have weekly discussion meeting in LUT (which you will be informed by email). And there will be a separate game assigment for LUT to show what you have learned.

Course starts on week 6 (week starting 4.2).


Please note! LUT is researching the possibilities to enable students to take Internet online courses. Evaluate your time usage and remember to give feedback about the course!


  Unit 0 - Optional HTML/Javascript crash course
  Object-oriented programming, best practices, debugging and tools
  Unit 1 - Introduction to Canvas rendering
  Introduction to Canvas, using images, and atlasing
  Unit 2 - Map rendering
  Packing and rendering sprites, and using third-party tools
  Unit 3 - Basic Input, handling events
  Event-based programming and the Javascript Event Model
  Unit 4 - The entity hierarchy
  Why object oriented models are important, what an entity is, and how to represent game objects
  Unit 5 - Box2D, and using external libraries
  What is a physics engine, how Box2D works, and how to interface to external javascript libraries
  Unit 6 - Adding multimedia
  The SoundManager wrapper, prefetching, supported formats and best practices
  Unit 7 - Asynchronous Loading
  Why asynchronous loading matters, custom asset caching and asset management
  Unit 8 - Advanced Input and Events
  Gamepad and custom events
  Unit 9 - Adding menu user interfaces to the game
  Dom manipulation, impress.js, and transitions
  Unit 10 - Deploying your game
  Toolchains, profiling and tracing tools, and player experience

Detected things

  • Course could have syllabus, with video and lecture lengths (please compare to Also workload estimation would be useful.
  • On a paper really nice course, but realization needs some additional work.
  • Videos are nice, but for many of us they are too brief. I need a lot of time to go back and forth a video. I also need more explanations.
  • Checking automatic do not tell if you have correct or working answer. Same code might pass only sometimes (after refresh). To believe that my solution actually works I should run the solution in my own computer.
  • Our own solutions should be accessable via syllabus as we have to sometimes take a look to previous test to remind what we did.
  • We should also be able to download solutions, to be able to experiment more with them.
  • Error console horrible. “Student should” - comments are useful. Lets hope that upcoming improvement helps a bit.
  • Problems with video lag at sometimes (thank you for downloadable videos).
  • Had to run two browsers. One to look previous video and onother to work with a test.
  • Small editor window is problem(?)
  • In a test: If you resize browser window, while in test the cursor position and cursor location in code edit window do not match each other.
  • In the tests students had to guess a lot what to do (more explanation, more example material, …)
  • Osx 8.2 worked for one person and did not work for other. Same with chrome, safari and FF (“server error” while submitting or testing code)
  • Many problems with the environment (mainly needs to say only accepted browser in Chrome).
  • Michmatches between some videos and tests.