gpt4 book ai didi

c++ - 如何优化绘图例程以在 Windows CE 中实现最大刷新率?

转载 作者:行者123 更新时间:2023-11-28 08:24:28 25 4
gpt4 key购买 nike

在我的应用程序中,我正在绘制一些线条(如垂直图),刷新率约为每秒 30 次。我计算了性能,绘制完整的线条需要 400 毫秒,但这不够快,因为我们必须每 34 毫秒刷新一次屏幕。

我正在利用 CDC。

我们将在配备 400 MHz 处理器的 Windows CE 设备上绘图。绘图涉及View DC上的MoveToLineToFillRect等简单的MFC API:

CDC* pDC = GetDC(); //draw vertical line from one end of screen to the other 
pDC->MoveTo(some xy Cordinates);
pDC->LineTo(some xy Points);

我们如何优化绘图例程?请提出任何建议。

最佳答案

自 Windows Vista 以来,GDI 操作(BitBlt 除外)不再通过硬件加速,而是通过软件完成。

要获得所需的性能,您可能需要使用 Direct3D 或 OpenGl。

虽然this msdn document这意味着,从 NT 6.1 开始,GDI 的硬件加速又回到了桌面上。我仍然希望 OpenGL 和 D3D 提供的基于 vector 的 API 应该执行得更可靠 - GDI 线条绘制不是驱动程序编写者努力优化的东西。


作为对目标为 Windows CE 的更新的回答:Direct X显然至少从 CE 2.1 开始就可以在 Windows CE 上使用

我仍然打赌 GDI 在 CE 上没有特别的硬件加速;如果有任何硬件支持,DirectX 将是访问它的方式。

关于c++ - 如何优化绘图例程以在 Windows CE 中实现最大刷新率?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4524527/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com