English 中文(简体)
执行 OpenGL 从线索中提取
原标题:Performing OpenGL Drawing from within a Thread

我一直将 OpenGL 核心功能包在 Delphi VCL 海关控制范围内。 目前, 我正在使用在此控制范围内创建的 < code> TTimer 进行环绕。 我强烈认为使用计时器是完全错误的, 因为绘图可能同时重叠和延迟。 相反, 我想将这个绘图环放在线索中。 请参见我的 < 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 调用来动态创建的, 绘图是在应用程序的主线中连续循环中重复的 。 这就是为什么我相信使用线索可以解决我的许多问题, 特别是闪烁的问题 。

最佳回答

OpenGL 上下文只能是给定线索中的当前( 活动) 。 因此, 您要么必须在线索中正确解开当前上下文, 要么您必须使用两个上下文共享数据 。 我强烈建议调整您的设计结构, 只使用一条线进行 OpenGL 调用 。 更多背景可在 < a href=" http://www. equalizergraphics.com/ documentation/parallel OpenGLFAQ. html" rel= “ noreferrer” > > http://www. eqreizergraphics.com/ documentation/parallel OpenGLFAQ. html 上找到 。

问题回答

暂无回答




相关问题
determining the character set to use

my delphi 2009 app has a basic translation system that uses GNUGetText. i had used some win API calls to prepare the fonts. i thought it was working correctly until recently when someone from Malta ...

Help with strange Delphi 5 IDE problems

Ok, I m going nuts here. For the last (almost) four years, I ve been putting up with some extremely bad behavior from my Delphi 5 IDE. Problems include: Seemingly random errors in coride50.bpl ...

How to write a Remote DataModule to run on a linux server?

i would like to know if there are any solution to do this. Does anyone? The big picture: I want to access data over the web, using my delphi thin clients. But i´would like to keep my server/service ...

How convert string to integer in Oxygene

In Delphi, there is a function StrToInt() that converts a string to an integer value; there is also IntToStr(), which does the reverse. These functions doesn t appear to be part of Oxygene, and I can ...

Quick padding of a string in Delphi

I was trying to speed up a certain routine in an application, and my profiler, AQTime, identified one method in particular as a bottleneck. The method has been with us for years, and is part of a "...

热门标签