首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >完成最少量的GPU工作

完成最少量的GPU工作
EN

Stack Overflow用户
提问于 2017-03-25 09:47:40
回答 1查看 137关注 0票数 0

一个应用程序是否有可能“节流”从一个实时(例如60 app )图形应用,总是呈现成简单地显示一个“位图”(例如一个简单的比特blit的3D世界的内容,而不是一个完整的重新计算)。然后,当给出用户输入(或出现某些应用特定条件)时,它会重新进入实时模式。

使用某种监控程序代码,我设想有可能抓取帧缓冲区的内容,暂停3d图形,然后只在以前抓取的帧缓冲区上使用blit,而不是重新呈现不变的场景。

这将是为了节省电力/风扇吹在弱图形卡,而不是不断渲染时,不需要。

以上是实现这一目标的合适策略吗?是否有可能“暂停”3D渲染?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-03-25 13:38:15

您的应用程序应该对用户输入或其他特定事件做出反应。只有在数据发生变化时才更改缓冲区。只有更新矩阵,如果用户移动相机。

您可以将其绘制到FBO中,然后将其放入“普通”帧缓冲区。这样,只有在没有改变的情况下才需要闪电战。

你也可以避免GPU闪电战。使用glReadPixels从FBO获取位图,并使用usage (即与设备上下文一起使用)将位图通过CPU的使用而不是GPU的使用将其混合到窗口中。

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

https://stackoverflow.com/questions/43014896

复制
相关文章

相似问题

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