O que é o modo imediato?
Na programação gráfica de computadores, o modo imediato é um estado de renderização em que a sequência normal de ações e a estrutura em que existem são completamente ignoradas e, em alguns casos, desativadas. Isso significa que o aplicativo que está sendo executado precisa chamar diretamente as funções necessárias para mostrar qualquer coisa em um dispositivo de exibição, como um monitor, em vez de confiar em ciclos inatos fora do programa. O modo imediato é mais frequentemente usado para programas que exigem os tempos de renderização mais rápidos possíveis, como aplicativos multimídia ou videogames ou são usados como uma ferramenta de ensino ao aprender a usar bibliotecas gráficas complexas. Um programa mal projetado ou implementado incorretamente que usa a renderização imediata do modo pode causar telas em branco ou áreas em branco de uma tela para aparecer e persistir, porque nenhuma chamada automática é feita para redesenhar o quadro atual, se necessário. Uma variação é conhecida como modo misto, no qual um programa mantém a estrutura de renderização retida em vigor enquanto tenta controlarl Certas partes dele através de funções de estilo de modo imediato.
Em muitos aplicativos de computador, a renderização ou os gráficos em um dispositivo de exibição é executada através da arquitetura do programa orientada por eventos. Isso significa que a tela é redesenhada apenas em resposta a algum tipo de entrada de um programa ou do usuário. Isso funciona bem para programas como processadores de texto ou navegadores da Web, mas não funciona para aplicativos como players multimídia, software de renderização artística ou videogames nos quais uma tela pode precisar ser redesenhada 60 ou mais vezes a cada segundo, sem qualquer tipo de entrada. A solução é usar o modo imediato.
Em vez de permitir que um sistema operacional ou biblioteca gráfica controlasse quando e como uma tela é atualizada e renderizada, o programa assume o controle total, removendo quaisquer barreiras entre o dispositivo de exibição e o código do aplicativo. Dessa forma, um programa pode criar seu próprio DISLAY Loop, usando temporizadores e outros códigos personalizados, para que a tela seja redesenhada o máximo ou o máximo necessário para alcançar o resultado desejado. Uma complicação no uso do modo imediato é que alguns dos recursos transparentes da renderização do modo retido - como um mecanismo de geometria - podem não estar disponíveis, exigindo que o aplicativo tenha suas próprias implementações. Outra questão é que um programa pode exigir uma grande quantidade de poder de processamento para manter o loop de renderização a uma velocidade aceitável.
Uma alternativa para usar o modo imediato exclusivamente é usar um modo de renderização misto. Nesse design, a estrutura de renderização do modo retido é mantida no local para que toda a funcionalidade de uma biblioteca de gráficos possa ser usada, mas certas funções ou métodos são substituídos e substituídos por código gerado pelo usuário que podem forçar a estrutura de renderização existente a operar de uma maneira que é mais como o modo imediato. Este método pode ser eficaz, mas também pode criar código difícil de definirbug e pode ter resultados inesperados, dependendo de como o código do usuário e o código da biblioteca interagem.