Overlay rendering performance seemed bottlenecked by drawImage calls. To
reduce both the number of calls and the number of different source
buffers, cache overlay buffers for squares of chunks. This adds a very
small extra cost for updates (one additional drawImage) and some cost
for drawing chunks outside of view, but this is more than made up for by
the savings.
By default, the aggregate are 4x4 squares of chunks.
* Added shape tooltip
* Shortened and simplified shape tooltip code
* added special logic for cutters so they remove overlays of empty outputs, and added clearing overlays on clear items
* Updated base-sr.yaml
Added all translations for Serbian language. This translation is, to my knowledge, 100% complete.
* Update base-sr.yaml
Fixed yamllint errors.
Track input slot assignment by array index rather than including extra
data in a new object. This greatly reduces the amount of garbage
generated by tryTakeItem and other item process operations.
* Update base-fr.yaml
I added some translations for the puzzle mode and fixed some spelling and grammar errors made on previous traductions.
* Update base-fr.yaml
Many other translations (including puzzle mode) and some corrections
* Update base-fr.yaml
Many other translations (including puzzle mode) and some corrections
* Update base-fr.yaml
Some corrections
* Update base-fr.yaml
Some translations made on untranslated texts