我参加了人机交互课程,教授将Windows Forms的渲染模型与现代浏览器和WPF中使用的模型进行了比较。他分别称他们为“油漆模型”和“保留模型”。当他解释它时我并没有真正得到改变,现在我试图谷歌它但没有出现。有人可以解释一下这两种渲染模型之间的差异吗?
答案 0 :(得分:0)
这是猜测,因为这两个术语都不是标准的。
Windows窗体使用GDI进行显示。这意味着如果窗口被另一个窗口覆盖然后被覆盖,WinForms通过重新运行代码来重绘覆盖的部分以呈现屏幕。实际上,每当窗口的一部分需要重新绘制时,它都会被重新绘制,一遍又一遍。
WPF和一些现代浏览器使用类似于游戏的渲染管道在其窗口中显示。此管道基于状态机。程序设置其显示状态,然后基于该状态执行渲染。我猜猜你的教授是什么意思"保留"因为状态被保留,然后在需要时重新渲染。
WPF渲染器是DirectX,而有些浏览器使用OpenGL。有关OpenGL"状态机"的更多信息看到这个答案。 https://stackoverflow.com/a/15195685