当前位置: 代码迷 >> 高性能计算 >> 关于直接读取显存,和显存相关的一些有关问题
  详细解决方案

关于直接读取显存,和显存相关的一些有关问题

热度:70   发布时间:2016-05-11 09:14:53.0
关于直接读取显存,和显存相关的一些问题
最近想直接读取显卡生成显示在桌面上的图像。
有几个疑惑,渴求解疑。
1:使用directx来读取frontbuffer可以吗,如果方向走错了,怎么样能达到要求,因为使用bitblt读取屏幕数据的话,会有一个显存到内存的传输过程,这样效率会不高,还会导致其他一些问题。

2:显存是用来存储处理过后和处理之前的数据的,我可不可以认为最终显示在屏幕上的一帧数据,在显示前的那一刻是在显存中的。 如果是一个R8B8G8A8格式的数据。1920×1080分辨率。 岂不是要 1920*1080*4/1024/1024 = 7.9G 的显存,这样现在的显卡完全达不到。 还是说显存里面只存储了部分屏幕的数据,然后不停的处理,输出到显示器上。如果是这样的话,那么某一刻的话 ,我就没法完全获取桌面上的数据了吗?

thanks a lot,in advance. :)

------解决方案--------------------
1920*1080*4/1024/1024 = 7.9M,谢谢。
------解决方案--------------------
引用:
是不是还可以认为,无论3D 还是2D,最终经过显卡处理完成,输出到显示器的前一刻。都是一个平面的图像?所谓3D无非是处理一些阴影,纹理,本质上来说和平面没什么区别?


虽然不是权威得知的,但我想如果让你去设计实现的时候,肯定都会采取这种方式的,考虑的核心肯定不在2D、3D差别上,而应该更注重实现性能上的优化处理。
  相关解决方案
本站暂不开放注册!
内测阶段只得通过邀请码进行注册!
 
  • 最近登录:Wed Jan 25 07:16:30 CST 2017
  • 最近登录:Wed Jan 25 07:16:30 CST 2017
  • 最近登录:Wed Jan 25 07:16:30 CST 2017
  • 最近登录:Wed Jan 25 07:16:30 CST 2017
  • 最近登录:Wed Jan 25 07:16:30 CST 2017