如何在两个不同的borland builder窗口中绘制相同的opengl图
How to paint the same opengl drawing in two different borland builder windows?
我有一个borland builder窗口窗体,其中绘制了一个opengl项目上的计时器。我想同时在另一个borland builder窗口中绘制这个opengl项目。
我应该使用像素缓冲对象,还是帧缓冲对象?与glReadPixels ?或者glBindFrameBuffer ?什么时候需要调用这些函数?在我画画之前还是之后?
或者将第一种形式的RC或DC称为第二种形式更简单吗?如果可能的话,我该怎么称呼它呢?
为其他窗口创建额外的OpenGL上下文,使用也共享纹理的wglShareLists
共享上下文对象。
-
如果要显示相同的视图(相同的分辨率,渲染等):使用纹理作为framebuffer对象的颜色缓冲区附件,绘制到这个FBO。然后在所有窗口中使用此纹理绘制纹理四边形。
-
如果不同的视图:单独渲染每个窗口
请不要认为没有像"OpenGL项目"这样的东西。OpenGL每次只处理一个原语(=三角形,四边形,点,线),渲染中没有持久性。
相关文章:
- 如何在Qt窗口小部件中使用QStringView(或QStringRef)
- 问:如何使用C++中的按钮从窗口打开窗口
- TDateTime格式在C++Builder中不会更改
- SDL 窗口不会弹出
- 在createdialog创建的窗口中捕获用于编辑控件的OnMouseMove消息
- 如何在cpp文件之间切换窗口?在Qt中
- QuadTree只在窗口的右上角绘制
- VS Code "command":"make"与终端窗口中的命令行"make"不同
- 如何在C++中找到active directory中禁用和锁定的窗口帐户
- 处理闪烁窗口事件
- C++Builder中的OnClick事件签名存在问题
- 如何通过按下第三个窗口中的按钮,将QString从一个窗口获取到另一个窗口
- C++win32 API创建多个类似视口的窗口
- SFML RenderWindow打开窗口需要很长时间
- 如何将不同的可执行文件合并到一个窗口框架中进行编码?像浏览器一样
- 获取 SFML 窗口的 HWND 和高可用性?
- 如何获取 GLFW 窗口 ID?
- GLEW/GLUT:调用init并创建一个窗口后,取消初始化并重新初始化?
- 如何在c++ Builder中禁用WM_ONPAINT消息来接收我的窗口
- 如何在两个不同的borland builder窗口中绘制相同的opengl图