# GFX Mental Model Status: pedagogical Companion spec: [`../specs/04-gfx-peripheral.md`](../specs/04-gfx-peripheral.md) PROMETEU trata gráficos como um periférico explícito, não como uma GPU moderna. O modelo mental correto é o de uma máquina 2D retro com: - framebuffer; - tile banks; - tile layers; - sprites por ordem de desenho; - composição determinística por frame. ## Why This Exists O objetivo não é imitar hardware histórico byte a byte. O objetivo é capturar a família de restrições e de linguagem visual de consoles como SNES, CPS-2 e Neo Geo, mas em um contrato pequeno, portátil e implementável em desktop e hardware DIY. Isso produz algumas consequências importantes: - desenho por ordem importa mais do que “efeitos”; - paletas importam como parte do asset design; - o programador pensa em rasterização, não em shaders; - o custo visual fica mais observável. ## What The GFX Is Not PROMETEU GFX não é: - pipeline moderno de GPU; - framebuffer RGBA com alpha arbitrário; - sistema de shaders; - composição automática pós-processada. Essas ausências são deliberadas. Elas forçam uma linguagem visual mais próxima de console clássico e mantêm o contrato executável em ambientes modestos. ## Practical Intuition - Tile layers existem para mundo e cenário. - HUD existe para informação fixa e deve permanecer desacoplado da câmera. - Sprites existem para entidades móveis e sua profundidade depende da ordem e da prioridade. - Paletas existem para variar estado visual sem duplicar tile art. - Fade existe como efeito especial discreto, não como alpha genérico. ## Palette Thinking Uma boa maneira de pensar PROMETEU é: arte e cor não são a mesma coisa. O tile é a forma. A paleta é o estado visual. Isso habilita: - variação de inimigos; - mudança de bioma; - dano, gelo, veneno, power-up; - temas de HUD; - ciclos de dia e noite. ## Use Cases - troca de área com `Scene Fade`; - troca de HUD com `HUD Fade`; - flash de dano ou teleporte; - swap global de paleta para clima ou estado de mundo.