*********一段平淡无奇OpenGL的程序,竟然崩溃了,给俺看一下*************
想一个三角形里面套一个三角形,做法完全是平淡无奇,中规中矩的:
GLUtesselator*tess;//生成对象
tess=gluNewTess();
gluTessCallback(tess,GLU_BEGIN,(void(__stdcall*)())glBegin);//定义回调
gluTessCallback(tess,GLU_END,(void(__stdcall*)())glEnd);
gluTessCallback(tess,GLU_VERTEX,(void(__stdcall*)())glVertex3dv);
gluTessProperty(tess,GLU_TESS_BOUNDARY_ONLY,GL_TRUE);
GLdouble inside[3][3]={{0.0,0.5,0.0},{-0.5,0.0,0.0},{0.5,0.0,0.0}};//定义点
GLdouble outside[3][3]={{0.0,0.9,0.0},{-0.9,0.0,0.0},{0.9,0.0,0.0}};
gluTessBeginPolygon(tess,NULL);//开始画
gluTessBeginContour(tess);//画外层
gluTessVertex(tess,outside[0],NULL);
gluTessVertex(tess,outside[1],NULL);
gluTessVertex(tess,outside[2],NULL);
gluTessEndContour(tess);
gluTessBeginContour(tess);//画内层
gluTessVertex(tess,inside[0],NULL);
gluTessVertex(tess,inside[1],NULL);
gluTessVertex(tess,inside[2],NULL);
gluTessEndContour(tess);
gluTessEndPolygon(tess);//画完.
编译时通过,运行时崩溃. 调试时说是一个叫NVOGLNT.DLL的DLL文件里有访问错误,我就头大了. 昨天刚升级到OGL1.5,不会是版本的问题吧
问题点数:20、回复次数:2Top
1 楼wangwenhong1000(乖乖兔)回复于 2006-03-11 20:19:55 得分 0
有可能,在MSN上找找资料Top
2 楼syy64(太平洋)回复于 2006-03-12 12:32:29 得分 20
gluDeleteTess(tess);
在后面加上。
Top




