在计算机图形编程中,立即模式是一种呈现状态,在这种状态下,正常的操作序列及其存在的框架被完全绕过,在某些情况下,停用。这意味着正在运行的应用程序需要直接调用在显示器等显示设备上显示任何内容所需的函数,而不是依赖于...
在计算机图形编程中,立即模式是一种呈现状态,在这种状态下,正常的操作序列及其存在的框架被完全绕过,在某些情况下,停用。这意味着正在运行的应用程序需要直接调用在显示器等显示设备上显示任何内容所需的函数,而不是依赖于程序外部的固有循环。即时模式通常用于需要尽可能快的呈现时间的程序,如多媒体应用程序或视频在学习如何使用复杂的图形库时,或被用作教学工具。使用即时模式渲染的设计不当或执行不当的程序会导致出现并持续出现空白屏幕或屏幕空白区域,因为如果需要的话,不会自动调用来重新绘制当前帧。一种变体称为混合模式,在这种模式下,程序在试图通过立即模式样式的函数控制某些部分的同时,保持保留的呈现框架在适当的位置。在许多计算机应用程序中,人工控制计算机,呈现信息或显示设备的图形是通过事件驱动的程序体系结构来实现的。这意味着屏幕仅在响应来自程序或用户的某种类型的输入时才被重绘。这对于文字处理程序或web浏览器等程序很有效,但对于多媒体播放器等应用程序则不适用,艺术渲染软件或视频游戏,在这种软件中,屏幕可能需要每秒重画60次或更多次,而无需任何输入。解决方案是使用立即模式。该程序不允许操作系统或图形库控制何时以及如何更新和呈现显示,而是完全控制,删除显示设备和应用程序代码之间的任何障碍这样,程序可以使用计时器和其他自定义代码创建自己的显示循环,因此,为了达到所需的结果,屏幕会被尽可能多次或尽可能少地重绘。使用立即模式的一个复杂之处在于,保留模式渲染的某些透明功能(例如几何引擎)可能不可用,这就要求应用程序有自己的实现。另一个问题是程序可能需要大量的处理能力才能以可接受的速度来维持渲染循环。除了使用立即模式之外,另一种选择是使用混合渲染模式。在本设计中,保留模式呈现框架保持不变,因此可以使用图形库的所有功能,但是某些函数或方法被重写并替换为用户生成的代码,这些代码可以强制现有的呈现框架以更接近即时模式的方式操作。此方法可能有效,但也可以创建难以调试的代码,并可能产生意外结果,具体取决于用户代码和库代码交互
-
发表于 2020-08-06 17:49
- 阅读 ( 2055 )
- 分类:电脑网络