我想知道使用窗口大小的纹理渲染窗口大小的单个四边形是否比使用双缓冲结合特定于平台的绘制方式将位图直接绘制到窗口更快窗口。
最佳答案
纹理的初始设置往往相对较慢,但一旦完成,绘图速度相当快 - 在图形内存可用的典型情况下,它会在初始过程中将纹理上传到显卡上的内存设置,之后,所有绘图都将从那里开始。同时,初始上传通常还会包含分辨率低至 1x1 的完整 mipmap,因此您上传的不仅仅是全分辨率纹理。
对于特定于平台的绘图,您通常不需要做太多的前期工作。如果位图只有部分可见,则仅上传可见部分。如果要缩放位图,它通常会在 CPU 上缩放并以当前比例将其发送到卡(并且永远不会上传任何类似于 mipmap 的内容)。 OTOH,几乎每次需要重新绘制某些内容时,最终都会重新发送新暴露区域的位图数据。不需要花太多时间就可以失去最小化一开始发送的内容的优势(通常是很小的)。
关于c++ - 这些哪个更快?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3580525/