Das Vorgehen, was du wahrscheinlich meinst, habe ich mal unter dem Begriff "Paging" gehört und auch selbst schon implementiert.
Ich selbst nutze dafür allerdings Framebuffer von einer festen Größe (z.B. 10x10 Tiles).
Wenn sich etwas in einer dieser Pages ändert, wird diese invalidiert und komplett neu gezeichnet.
Der Framebuffer wird, wenn er fertig ist, in einer Texture gespeichert.
Somit muss die Grafikkarte nicht ständig den Kontext wechseln (bei vielen Tilesets), sondern hat nur x feste gecachte Bilder, die sie 1:1 so rendert.
Wenn man allerdings weniger Tilesets als Pages auf dem Bildschirm hat, kann dies evtl. auch eher weniger Performance bedeuten. Denn das teure für die Grafikkarte sind die Kontext-Switche (also wenn z.B. ein anderes Tileset verwendet wird usw.). Ansonsten ist es eher eine deutliche Performance Optimierung. Kommt aber auf den Anwendungsfall drauf an.
Beispiel-Code (Achtung! Gleicht eher einem Prototyp, deshalb ist die Code Qualität nicht die beste!):
https://github.com/JuKu/mmo-engine-clien…meview/renderer
Ich hoffe, ich konnte dir etwas helfen.