最近自学OpenGL,由于计算机比较老,集成的显卡只支持OpenGL1.4,而且有Bug,因此下载了Mesa3D-7.8.2,打算用软件模拟OpenGL。
花了两天时间,在VC2003上编译成功,测试原先集成显卡显示不正常的程序,一切OK。继续测试以前编写的例程,结果悲剧了,大部分程序的画面存在不规则的黑块,甚至画一个简单的立方体都有问题,如下图:
又折腾了一天也没整好,只是感觉似乎和深度测试有关。
都快要绝望了,突然发现Mesa提供的例程基本上都用双缓存,而我的测试程序则是单缓存。于是改为双缓冲,一切都恢复了正常。