请问:怎么进行复杂图形的高速绘制~

请教:如何进行复杂图形的高速绘制~~~~~~~~~~~~~~~~
一系列较复杂的图形,用到十几种以上的笔、刷子、字体,进行矩形、圆形、线、区域绘制及填充。绘制面积几乎是全屏,绘制时间要求控制在50ms以内。

我以前一直是用 gdi配合多重缓冲进行绘制,实时性不错,但就是线条的锯齿问题很讨厌,我曾经尝试过使用 gdi/gdi+ 混合的方式进行绘制,但是速度慢得不可接受。

如果不使用 directX 或者是 OpenGL,有没有什么相对简单的方式能够实现反锯齿的同时满足上述要求?

谢谢! 

------解决方案--------------------
高性能的还是尽量使用硬件支持特性比较好
------解决方案--------------------
这个就要靠图象叠代来解决了,不过GDI+的我没试过,我做三维渲染(D3DX)时到是经常使用,原理就是通过sureface把上一次的结果保存在纹理中,下一次计算时继续叠加。
------解决方案--------------------
    绘制时间要求控制在50ms以内,这个得通过程序来控制几个CPU分配给程序及采用线程并提高线程优先级,也就是采用线程在后台绘制,绘制完成后再在前台显示。
    通过程序控制CPU数量分配给程序,网上可以查到需要用到什么函数,线程更是简单,其实还是用到了你采用的双缓冲方式。
    现在计算机一般都是至少两核的,你可以决定给程序分配几个核。
------解决方案--------------------
另外,最好用GDI画图,因为其它的方式画图越方便速度就越慢,如果能用汇编更好(其实现在的汇编也可以和VC结合使用,好象看雪学院网站里有讲如何使用汇编和VC相结合,同时有一本书专门讲了汇编和VC混合编程),但现在一般不会这么干的,除非是破解别人的软件有可能用到汇编
------解决方案--------------------
引用:
图像如何迭代能够达到消锯齿的目的呢?
现有的设计,图像迭代速度应该可以满足要求的

  消锯齿在D3DX里不是已经帮你做了吗,不就是反走样打开就可以了。
  你们讨论的问题其实有点偏离,其实性能的瓶颈不在画上面,而是在动作的叠加上。如果试着考虑动作是无穷的话,那么如果要把动作记下来,再按照次序去画势必出现问题。所以只有将单次的动作产生的结果与原来的结果合并生成新的结果才能解决问题。
  用什么东西去画都是次要的,要解决无穷的叠加才是本质。
------解决方案--------------------
附图一张,我使用图象叠代画毛绒效果
请问:怎么进行复杂图形的高速绘制~
------解决方案--------------------
最简单的方法就是往显卡上画,这个速度很快的。我做的项目跟你出现了同样的问题。就是闪,没有办法,主管说直接绘制到显卡上面。
------解决方案--------------------
每次应该只动了很少一部分吧,只重绘这一部分,然后刷到屏幕上。
------解决方案--------------------
肯定要用到双缓冲的,除非你的客户不在乎闪烁.
另外DIRECTX 3D   OPENGL  这些,都是底层的C语言,可以说速度很快的,就是使用起来比GDI还麻烦.
------解决方案--------------------
引用:
发了两个帖子,俺合并一下,谢谢各位了!

daoxwj :
--------------------------------
换成Opengl很快的
我以前也碰到了类似的问题,改成用Opengl来渲染后就快多了 


Mackz:
--------------------------……

GDI+?这家伙的抗锯齿会使过程更慢!
------解决方案--------------------
引用:
最简单的方法就是往显卡上画,这个速度很快的。我做的项目跟你出现了同样的问题。就是闪,没有办法,主管说直接绘制到显卡上面。


什么接口?
------解决方案--------------------
引用:
引用:最简单的方法就是往显卡上画,这个速度很快的。我做的项目跟你出现了同样的问题。就是闪,没有办法,主管说直接绘制到显卡上面。

什么接口?

OpenCl     opengl 或者是directX