Hvad er øjeblikkelig tilstand?
Ved programmering af computergrafik er øjeblikkelig tilstand en gengivelsestilstand, hvor den normale handlingssekvens og rammen, hvori de findes, er omgået og i nogle tilfælde deaktiveret. Dette betyder, at den applikation, der køres, skal direkte kalde de nødvendige funktioner til at vise noget på en displayindretning, f.eks. En skærm, i stedet for at stole på medfødte cyklusser uden for programmet. Øjeblikkelig tilstand bruges oftest til programmer, der kræver de hurtigst mulige gengivelsestider, såsom multimedie-applikationer eller videospil, eller bruges som et undervisningsværktøj, når man lærer at bruge komplekse grafiske biblioteker. Et dårligt designet eller forkert implementeret program, der bruger øjeblikkelig tilstand gengivelse, kan forårsage, at blanke skærme eller tomme områder på en skærm vises og vedvarer, fordi der ikke foretages automatiske opkald for at tegne den aktuelle ramme om nødvendigt. En variation er kendt som blandet tilstand, hvor et program holder den bevarede gengivelsesramme på plads, mens man forsøger at kontrollere visse dele af det gennem øjeblikkelige modusstilfunktioner.
I mange computerapplikationer udføres gengivelse af information eller grafik til en skærmenhed gennem begivenhedsdrevet programarkitektur. Dette betyder, at skærmen kun tegnes igen som svar på en eller anden type input fra et program eller brugeren. Dette fungerer godt til programmer som tekstbehandlere eller webbrowsere, men det fungerer ikke til applikationer såsom multimediaspillere, kunstnerisk gengivelsessoftware eller videospil, hvor en skærm muligvis skal tegnes om 60 eller flere gange hvert sekund uden nogen form for input. Løsningen er at bruge øjeblikkelig tilstand.
I stedet for at lade et operativsystem eller grafikbibliotek styre, hvornår og hvordan en skærm opdateres og gengives, tager programmet fuldstændig kontrol og fjerner eventuelle barrierer mellem displayenheden og applikationskoden. På denne måde kan et program oprette sin egen visningssløjfe ved hjælp af timere og anden brugerdefineret kode, så skærmen tegnes så mange eller så få gange som nødvendigt for at opnå det ønskede resultat. En komplikation ved brug af øjeblikkelig tilstand er, at nogle af de gennemsigtige funktioner i gengivelse af bevaret tilstand - såsom en geometri-motor - muligvis ikke er tilgængelige, hvilket kræver, at applikationen har sine egne implementeringer. Et andet problem er, at et program kan kræve en stor mængde processorkraft for at opretholde gengivelsessløjfen på en acceptabel hastighed.
Et alternativ til udelukkende at bruge øjeblikkelig tilstand er at bruge en blandet gengivelsestilstand. I dette design holdes den tilbageholdte tilstand-gengivelsesramme på plads, så al funktionalitet i et grafikbibliotek kan bruges, men visse funktioner eller metoder er tilsidesat og erstattet af brugergenereret kode, der kan tvinge den eksisterende gengivelsesramme til at fungere i en måde, der ligner mere øjeblikkelig tilstand. Denne metode kan være effektiv, men den kan også oprette kode, der er vanskelig at fejlsøge og kunne have uventede resultater, afhængigt af hvordan brugerkoden og bibliotekskoden interagerer.