#include <GL/gl.h>
#include <GL/glaux.h>
//#include "glos.h"void Show3D()
{
     auxInitDisplayMode(AUX_SINGLE|AUX_RGBA);
     auxInitPosition(0,0,500,500);
     auxInitWindow("simple");     glClearColor(0.0,0.0,0.0,0.0);
     glClear(GL_COLOR_BUFFER_BIT);
     glColor3f(1.0,0.0,0.0);
     glRectf(-0.5,-0.5,0.5,0.5);
     glFlush();     Sleep(1000);
}Include:  C:\Program Files\Microsoft Visual Studio\VC98\INCLUDE
Library:  C:\Program Files\Microsoft Visual Studio\VC98\LIBLink下:GDI32.lib OPENGL32.LIB GLAUX.LIB glu32.lib运行时的提示:
Loaded 'C:\WINNT\system32\g400icd.dll', no matching symbolic information found.
Loaded 'C:\WINNT\system32\mcd32.dll', no matching symbolic information found.
该程序我在VC60下编译已经通过,在运行的时候也出来了背景为黑色的窗口,但是应该显示的红色方块没有。请问是为什么啊? 

解决方案 »

  1.   

    我这里运行没问题,能看到红色方块。
    不过你说的情况也还是有可能发生的。因为你只是用opengl新开了一个窗口,然后绘制一次图像(一个红色的矩形)。如果切换以下应用程序,也就是用别的程序覆盖一下这个窗口,那么红色的矩形就不回再出现了。
    再要想看到,必须用auxMainLoop();之类的函数注册一个重绘窗口的消息处理函数。以便在需要重新绘制的时候画出红色矩形。
      

  2.   

    看楼上说的就知道是高手了,能否给我一个简单的代码示例?
    我是在单文档视图的菜单上执行该函数,结果系统重新弹出一个带有标题的黑色窗口,没有被覆盖也没有刷新。
    初学OpenGL,多多指教!
    email: [email protected]