HTML and CSS Reference
In-Depth Information
Why Sounds in Apps Are Different: Event Sounds
Why make a game as an example for playing sounds in HTML5? Well, a game is a perfect
example because it is difficult to predict how many sounds might be playing at any one time.
Games are some of the most demanding applications when it comes to sound. In most games,
sounds are played based on user interactions, and those interactions are usually both asyn-
chronous and unpredictable. Because ofthose factors, we need to create a strategy forplaying
sounds that is flexible and resource-efficient.
To demonstrate how tricky sounds can be when using JavaScript and HTML5 with a Canvas
game, we will iterate this game several times until we have a working model.
Here are some assumptions we will make regarding sound in Space Raiders , based on what
we know about the HTML5 audio object:
1. After loading a sound, you can make another object with the same source and “load” it
without having to wait for it to load. (Flash sort of works this way.)
2. Playing sounds locally is the same as playing them on a remotely hosted web page.
It turns out that both of these assumptions are wrong . As we continue through this case study,
we will show you why, as well as how to accommodate them.
Because thisisnotachapteraboutmakinggames, SpaceRaiders isgoingtobeonlyafaçade.
In Hollywood, a façade is a structure built for filming, containing only the parts the camera
will see. For example, a building façade might have only the front wall and windows—with
nothing behind them. Space Raiders is like this because we are going to create only the parts
necessary to include the dynamic sounds we will be using. It will be most of a game, leading
you into Chapters 8 and 9 , which take a deep dive into making complete games with HTML5
Canvas.
Search WWH ::




Custom Search