jjzjj

glutDisplayFunc

全部标签

c++ - 将 1 个参数(指针)传递给 glutDisplayFunc?

我创建了一个虚拟类,它有一个基本的draw()方法,它什么都不做。这样做的目的是能够在OpenGL中绘制自己的其他类、形状和其他东西将继承这个虚拟类,从而允许我创建指向许多不同类的指针数组。这背后的想法是,我希望能够将指向该数组的指针传递到我的glutDisplayFunc回调中。(这恰好被命名为drawScene()。不幸的是,我似乎无法将任何东西传递给它,因为glutDisplayFunc旨在采用一种不带参数且不返回任何内容的方法。有没有办法将参数传递给回调函数,然后将指针传递到我的drawScene函数中?(TLDR?见下文。)本质上我希望能够做到这一点:classa{...};

c++ - 如何将非静态成员函数传递给 glutDisplayFunc

我有一个类,它具有初始化opengl并在单独的线程中运行它的功能。我的问题是:openGL回调如glutDisplayFunc、glutMotionFunc等接受void(*f)void,我不能传递类成员函数。绕路。1)我可以将成员函数声明为静态的,但在这种情况下,我需要将所有使用的成员变量声明为静态的,并最终将整个类声明为静态的。2)我可以使用一些独立的函数并将我的对象声明为全局对象,但这太糟糕了。我想知道是否有一些解决方法,所以我不需要让我的opengl类静态化??(使用C++) 最佳答案 您需要创建一个“thunk”或“tra

c++ - 在类中使用 OpenGL glutDisplayFunc

我创建了一个C++类(myPixmap)来封装OpenGLGLUT工具包执行的工作。类的display()成员函数包含设置GLUT所需的大部分代码。voidmyPixmap::display(){//openanOpenGLwindowifithasn'talreadybeenopenedif(!openedWindow){//command-lineargumentstoappeaseglutchar*argv[]={"myPixmap"};intargc=1;glutInit(&argc,argv);glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB)

c++ - 在类中使用 OpenGL glutDisplayFunc

我创建了一个C++类(myPixmap)来封装OpenGLGLUT工具包执行的工作。类的display()成员函数包含设置GLUT所需的大部分代码。voidmyPixmap::display(){//openanOpenGLwindowifithasn'talreadybeenopenedif(!openedWindow){//command-lineargumentstoappeaseglutchar*argv[]={"myPixmap"};intargc=1;glutInit(&argc,argv);glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB)