PixelCanvas example

PixelCanvas.update is called sequentially after any changes to a Pixel. What this means is that updates to the canvas can occur multiple times per frame, and since we know that each call to PixelCanvas.update provides the Pixel that was changed, we can save time in our update method by only updating the supplied Pixel. Where, conversely, we would iterate through the entire matrix and needlessly update every Pixel, regardless of whether it had actually changed.