Book Image

jQuery Game Development Essentials

By : Selim Arsever
Book Image

jQuery Game Development Essentials

By: Selim Arsever

Overview of this book

jQuery is a leading multi-browser JavaScript library that developers across the world utilize on a daily basis to help simplify client-side scripting. Using the friendly and powerful jQuery to create games based on DOM manipulations and CSS transforms allows you to target a vast array of browsers and devices without having to worry about individual peculiarities."jQuery Game Development Essentials" will teach you how to use the environment, language, and framework that you're familiar with in an entirely new way so that you can create beautiful and addictive games. With concrete examples and detailed technical explanations you will learn how to apply game development techniques in a highly practical context.This essential reference explains classic game development techniques like sprite animations, tile-maps, collision detection, and parallax scrolling in a context specific to jQuery. In addition, there is coverage of advanced topics specific to creating games with the popular JavaScript library, such as integration with social networks alongside multiplayer and mobile support. jQuery Game Development Essentials will take you on a journey that will utilize your existing skills as a web developer so that you can create fantastic, addictive games that run right in the browser.
Table of Contents (17 chapters)
jQuery Game Development Essentials
Credits
About the Author
About the Reviewer
www.PacktPub.com
Preface
Index

Intervals and timeouts


In our game we used a lot of setInterval calls. You may think that those calls are multithreaded, but they are not. JavaScript is strictly single-threaded (with the recent exception of WebWorkers, but we won't look into that here). This means that all those calls are really run one after the other.

If you're interested in the dirty details of how exactly intervals and timeouts work, I would recommend reading the excellent article written by John Resig, How JavaScript Timers Work (http://ejohn.org/blog/how-javascript-timers-work/).

Therefore, intervals and timeouts don't add multithreading to your code, and there are many reasons why you may want to avoid using them too much. First, it makes your code somewhat difficult to debug. Indeed, depending on how much time each call takes, your interval will be executed in a different order, and even those will be of the exact same periodicity.

Furthermore, performance-wise, using setInterval and setTimeout too much can be very...