一般后备缓冲都在建立主表面的时候ddsd.ddsCaps.dwCaps=DDSCAPS_PRIMARYSURFACE|DDSCAPS_FLIP|DDSCAPS_COMPLEX;然后CreateSurface,接着GetAttachedSurface;这样后备缓冲建立在显存中。但是为了速度,我想把后备缓冲建立在系统内存中于是把上面的dwCaps多加上DDSCAPS_SYSTEMMEMORY;然后建立,但是Flip时有问题了。不可以垂直同步。只有自己调用WaitForVerticalBlank。郁闷了,谁能解释一样,Flip到底做了什么工作,还有CreateSurface建立的DDSCAPS_FLIP, DDSCAPS_COMPLEX表面到底是什么?DirectX7.0的文档写得太简单了。而且现在没有完整的DX7.0SDK下载,相看例子都看不到!!....
qq - 回复 | (1337) | skylinewind | 2006-12-07 11:08:37