The Screen Draw Process - Valkryst/VTerminal GitHub Wiki
Screen
All components have their TileGrid copied onto the TileGrid of the Screen.
If the component is a Layer, then all of the Layer's child-components are copied onto the TileGrid of the Layer, and then the Layer's TileGrid is copied onto the TileGrid of the Screen.
The Screen draws it's TileGrid to it's Canvas.
Only Tiles which have changed are drawn.
Tile
If a character has been significantly altered (colors changed, shaders added/removed, character changed, etc...), or if the character has never had a sprite generated, then the ImageCache will generate a new sprite for the character.
The base image is loaded.
The character's colors are applied to the image.
The character's shaders are applied to the image.
The image is converted from a BufferedImage into a VolatileImage.
The image is cached.
The character's image is retrieved from the ImageCache and drawn.