标签: immediate-mode

与保留模式 GUI 相比,使用立即模式 GUI 对性能有何影响?

我目前正在开发一个标准的 Windows 桌面应用程序(标准意味着没有花哨的东西:只有按钮、文本、滑块等),并且在研究了一些 GUI 框架并被排斥后决定自己编写一个 GUI 框架他们都。由于这是一个业余项目,我也愿意尝试,并决定使 GUI 立即模式,而不是保留模式,因为我非常喜欢它简化代码的方式。不过,这里有一个问题:

当将即时模式 GUI 用于典型桌面应用程序时,与保留模式 GUI 相比,使用即时模式 GUI 对性能有何影响?

我总是听说 IMGUI 的性能更差,因为它必须重绘每一帧(或者,如果它以某种方式缓存,它仍然必须每帧都执行逻辑)。但我们在这里谈论的还有多少?我是不是消耗了两倍的 CPU 时间?更多的?如果我假设运行 20 个 IMGUI 程序,它会最大限度地使用 CPU(假设我已经对其进行了优化)?我只是想知道大概情况以及权衡在非游戏环境中是否仍然可行,在这种环境中无需重新绘制每一帧。

还有一个我不明白的关于延迟的含义。在章讨论IMGUI工作正在进行书约翰内斯Norneby,解释如下:

框架剪切

在实时应用程序的上下文中需要注意的 IMGUI 的一个方面(每秒不断渲染新帧多次)是用户交互将始终响应在前一帧上绘制的内容。这是因为用户界面必须至少绘制一次,以便用户知道那里有要与之交互的小部件。大多数情况下,如果帧速率足够高,这不会导致任何问题,但这是需要注意的。

这在保留模式 GUI 中有何不同?这是否意味着我在保留模式的 GUI 上多了一个输入延迟帧?

c++ performance user-interface desktop-application immediate-mode

156
推荐指数
1
解决办法
4万
查看次数

如何在即时模式下包含来自其他.swift文件的.swift文件?

拥有一个带有函数定义的文件bar.swift:

func bar() {
    println("bar")
}
Run Code Online (Sandbox Code Playgroud)

以及立即模式运行的脚本foo.swift:

#!/usr/bin/xcrun swift -i
bar()
Run Code Online (Sandbox Code Playgroud)

如何导入bar.swiftbar()来自功能foo.swift

immediate-mode swift

20
推荐指数
1
解决办法
2794
查看次数

自定义控制流编译字的示例

Forth着名的允许用户通过为控制流定义新单词来改变语言(超出标准给出的单词:DO,LOOP,BEGIN,UNTIL,WHILE,REPEAT,LEAVE IF,THEN,ELSE,CASE,ENDCASE等)

是否有人们实际创建自己的新控制流程词的常见例子?有哪些典型和有用的例子?或者标准已经定义了人们实际需要的一切?

我希望找到一些有用的语言扩展示例,这些示例已经被接受或证明通常有助于使语言更具表现力.

compilation forth control-flow gforth immediate-mode

9
推荐指数
2
解决办法
271
查看次数

文字VS即时操作数

在本学期的系统软件课程中,我们正在学习汇编程序和其他系统软件.在阅读整个课程时,我遇到了LITERALS的主题.

在文字和立即操作数之间进行了比较,他们说它们之间的唯一区别是文字不是作为指令的一部分组装的,而立即操作数则是.

如果我们可以使用立即操作数,为什么我们必须使用文字?是什么让他们与众不同?换句话说,何时使用文字以及何时使用立即操作数?

assembly literals systems-programming immediate-mode

5
推荐指数
1
解决办法
8517
查看次数

什么是现代OpenGL相当于glBegin/glEnd

我正在为OpenGL构建一个图形API,它基于基本的调用绘图图形样式.基本上,不是将数据存储到GPU中,而是使用它的句柄调用它,而是提供信息以绘制每次更新应该绘制的内容.我知道它很慢,但它很简单,适用于非性能关键应用程序.无论如何,有没有现代的glBegin/glEnd?它不需要调用每个顶点,但我可以在每次更新时发送数据,而不将顶点存储在gpu中?

c++ opengl abstraction immediate-mode

3
推荐指数
1
解决办法
7128
查看次数