我一直将 OpenGL 核心功能包在 Delphi VCL 海关控制范围内。 目前, 我正在使用在此控制范围内创建的 < code> TTimer code > 进行环绕。 我强烈认为使用计时器是完全错误的, 因为绘图可能同时重叠和延迟。 相反, 我想将这个绘图环放在线索中。 请参见我的 < a href=> https:// stackoverflow.com/ queseseses/ 10729526/ Opengl-rapid- flickering-issues-and- ow- no-show-showing- image > 原始问题 <, < /a > 与某些闪烁问题有关, 我将问题归罪于我使用的 < code> TTImer 。
<强问/强>
OpenGL 是否安全地在线索内使用? 我该知道什么? 我计划从线索内外调用 OpenGL API 。 它基本上是一个连续循环, 一旦它完成绘图, 它会立即再次开始绘图。 目前, 使用一个计时器, 它取决于等待到达计时器的间隔。 例如, 如果计时器的间隔设为100毫秒, 绘图只需要20毫秒, 那么它就会有 80毫秒等待它再次绘图。 使用一条线可以消除这一延迟 。 我该如何从这条线中发出这样的调用?
< 坚固> 背景 强>
我所有的 API 调用都以原始的样本项目为基础, 它使用应用程序的主线, 实际上完全没有使用 VCL 。 显示图像的窗口是使用纯 Windows API 调用来动态创建的, 绘图是在应用程序的主线中连续循环中重复的 。 这就是为什么我相信使用线索可以解决我的许多问题, 特别是闪烁的问题 。