首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在两个不同的位置渲染OpenGL场景

在两个不同的位置渲染OpenGL场景
EN

Stack Overflow用户
提问于 2018-05-04 13:20:55
回答 1查看 218关注 0票数 0

我正在编写一个呈现OpenGL场景的应用程序。此应用程序有两个窗口:

  1. 只显示渲染场景的大窗口
  2. 一个“控制窗口”,提供多个设置和呈现场景的预览。

此应用程序是用.NET编写的(用于控制窗口部分),并使用本机C++ DLL创建呈现窗口并执行实际的OpenGL呈现。

这很好,但是仍然缺少一个重要的部分:在我的.NET控件窗口中获得呈现场景的实时预览。

到目前为止,我可以想到两种解决方案:

  1. 不仅将场景渲染到屏幕上,而且还将其渲染到内存中。然后把那块记忆塞给我的.NET WinForm。最后,将图像绘制到PictureBox或其他地方。<-这听起来太慢了!
  2. 让我的原生OpenGL渲染器渲染两次场景,一次渲染到本机全尺寸窗口,一次呈现到控件(面板?)在我的.NET表格上。

选项2听起来更快,但我不知道它是否/如何工作。这能办到吗?有没有更好的选择?

EN

回答 1

Stack Overflow用户

发布于 2018-05-04 14:37:40

查看有关帧缓冲器的文档。它基本上是您呈现的目的地,默认情况下它是您的视口(或者是后台缓冲区,一旦它准备好了,它就会与显示的缓冲区切换)。

第一个选项通常应该更快,因为你只渲染一次场景,然后基本上复制一个纹理。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50175989

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档