Directx 有没有比Windows GDI更快的绘图方法? 我在C++ C++语言(Visual C++)中使用了Windows GDI(GDI32.LIB)来绘制图表。事实上,这是我唯一的绘画知识

Directx 有没有比Windows GDI更快的绘图方法? 我在C++ C++语言(Visual C++)中使用了Windows GDI(GDI32.LIB)来绘制图表。事实上,这是我唯一的绘画知识,directx,gdi+,gdi,Directx,Gdi+,Gdi,当我用数百个GDI函数(如ArcTo MoveToEx)绘制一个图时,图上的打开速度很慢。这就是问题所在 然后我想到了我是否可以使用CUDA或一些技术来提高性能 我是初学者。当我在CPU或图形卡中调用GDI函数MoveToEx时,我甚至不知道Windows是如何处理的 你能给我一个开始的方向吗 先谢谢你 迈尔斯你有没有尝试过创建一个memoryDC,在那里画出你所有的东西,然后在它完成后,用一个swift拷贝把它放到屏幕上?直接在用户屏幕上绘图从来都不快。@Agent\L显然你给了我一个很好的指

当我用数百个GDI函数(如ArcTo MoveToEx)绘制一个图时,图上的打开速度很慢。这就是问题所在

然后我想到了我是否可以使用CUDA或一些技术来提高性能

我是初学者。当我在CPU或图形卡中调用GDI函数MoveToEx时,我甚至不知道Windows是如何处理的

你能给我一个开始的方向吗

先谢谢你
迈尔斯

你有没有尝试过创建一个memoryDC,在那里画出你所有的东西,然后在它完成后,用一个swift
拷贝把它放到屏幕上
?直接在用户屏幕上绘图从来都不快。@Agent\L显然你给了我一个很好的指导,谢谢。如果可能的话,你能告诉我更多的方法吗?特别是“把你所有的东西都画在那里”和“把它扔到屏幕上”。我写了一个关于双缓冲的答案,这可能会帮助你:@milesma,Redeye说它叫“双缓冲”(谢谢,我忘了确切的术语)。请看一看,我认为这对start解释了很多。@Agent_L“GDI默认情况下在系统内存中维护其资源,特别是位图。Direct2D在显示适配器的视频内存中维护其资源。”-继续阅读,它进入了“创建深度”。(也许我表达得不对,但那篇MSDN文章应该能澄清问题)