En la programación de gráficos por computadora, el modo inmediato es un estado de representación en el que la secuencia normal de acciones y el marco en el que existen se omiten por completo y, en algunos casos, se desactivan. Esto significa que la aplicación que se está ejecutando debe llamar directamente a las funciones necesarias para mostrar cualquier cosa en un dispositivo de visualización, como un monitor, en lugar de depender de ciclos innatos fuera del programa. El modo inmediato se usa con mayor frecuencia para programas que requieren los tiempos de renderización más rápidos posibles, como aplicaciones multimedia o videojuegos, o se usa como una herramienta de enseñanza para aprender a usar bibliotecas gráficas complejas. Un programa mal diseñado o implementado incorrectamente que usa renderizado en modo inmediato puede hacer que aparezcan y persistan pantallas en blanco o áreas en blanco de una pantalla, porque no se realizan llamadas automáticas para volver a dibujar el marco actual si es necesario. Una variación se conoce como modo mixto, en el que un programa mantiene el marco de renderizado retenido en su lugar mientras intenta controlar ciertas partes a través de funciones de estilo de modo inmediato.
En muchas aplicaciones informáticas, la presentación de información o gráficos en un dispositivo de visualización se realiza a través de una arquitectura de programa dirigida por eventos. Esto significa que la pantalla se vuelve a dibujar solo en respuesta a algún tipo de entrada de un programa o del usuario. Esto funciona bien para programas como procesadores de texto o navegadores web, pero no funciona para aplicaciones como reproductores multimedia, software de renderizado artístico o videojuegos en los que una pantalla puede necesitar ser redibujada 60 o más veces por segundo sin ningún tipo de aporte. La solución es utilizar el modo inmediato.
En lugar de permitir que un sistema operativo o una biblioteca de gráficos controlen cuándo y cómo se actualiza y renderiza una pantalla, el programa toma el control total, eliminando cualquier barrera entre el dispositivo de visualización y el código de la aplicación. De esta manera, un programa puede crear su propio bucle de visualización, utilizando temporizadores y otro código personalizado, por lo que la pantalla se vuelve a dibujar tantas veces como sea necesario para lograr el resultado deseado. Una complicación en el uso del modo inmediato es que algunas de las características transparentes del renderizado en modo retenido, como un motor de geometría, pueden no estar disponibles, lo que requiere que la aplicación tenga sus propias implementaciones. Otro problema es que un programa puede requerir una gran cantidad de potencia de procesamiento para mantener el ciclo de renderizado a una velocidad aceptable.
Una alternativa al uso exclusivo del modo inmediato es utilizar un modo de renderizado mixto. En este diseño, el marco de renderizado de modo retenido se mantiene en su lugar para que se pueda usar toda la funcionalidad de una biblioteca de gráficos, pero ciertas funciones o métodos se anulan y reemplazan con código generado por el usuario que puede forzar al marco de renderizado existente a operar en una forma que se parece más al modo inmediato. Este método puede ser efectivo, pero también puede crear código que sea difícil de depurar y podría tener resultados inesperados, dependiendo de cómo interactúen el código de usuario y el código de la biblioteca.