Thanks for writing in such detail, Christofer. These are two separate issues, so I'll take them one at a time.
Seriously does not update a source node after changing the
src of the image. But it should, so I'll fix that. Shouldn't be too hard.
When you set
target.source to the
ImageData object, it implicitly creates a new source node there. And when you set it to another
ImageData object, it does not destroy the original node, because it's impossible for Seriously to know if you might need it again. For example:
So you've got a whole bunch of source nodes, each with its very own ImageData, GPU texture and FBO. If you really need to do it this way, you want to destroy old source nodes when you're done with them. Like this:
Generally, using ImageData is almost never the best option. You're usually better off just building the source node based on the canvas. And remember to call
.update() on that node before you draw it, because Seriously doesn't have any other way to know when a canvas is ready for a redraw.