opengl

    1热度

    1回答

    我有一个OpenGL的应用程序,我过去编译过,但现在不能在同一台机器上。这个问题似乎在片段着色器中没有正确编译。 我使用: GLEW 2.1.0 GLFW 3.2.1 也正在对节目的开始创建的所有必要的条件。下面是我的程序化功能的样子: std::string vSource, fSource; try { vSource = getSource(vertexShader, "ver

    -1热度

    1回答

    这是使用OpenGL我的第一次,所以这可能是一个愚蠢的问题,但我的代码glBegin()和glEnd()之间拉动GL_INVALID_OPERATION误差(1218或0x0502) 。我只打几个简单的命令,但glGetError()在本函数开始时返回0,最后返回1218。 此函数用于绘制任何简单形状的单个实例,并且在调试器中逐步完成后,这些变量就是我想要的那些变量。还要注意的是,尽管这是一个愚蠢

    4热度

    1回答

    我使用EGL与Xlib和OpenGL。当我直接在窗户上画画时,一切都很好。现在我试图使用pixmaps作为EGL表面,但OpenGL根本不会改变它。 我用OpenGL的蓝色清理背景。下面是我得到的,而不是: 这里的小例子,demonstaiting问题(绘图本垃圾)。 更新:我添加了错误检查,并找出eglCopyBuffers产生EGL_BAD_NATIVE_PIXMAP。 Docs告诉这可能发生

    -1热度

    1回答

    我真的很困惑于OpenGL中的所有类型格式。我基本上想创建一个我可以写整数的纹理,也可以从中读取整数。我试过以下内容: glTexImage2D(GL_TEXTURE_2D, 0, GL_R32I, bufferRes.x, bufferRes.y, 0, GL_RED, GL_INT, NULL); 这给了我一个“无效的操作”错误。如果我将GL_R32I更改为GL_RED,我不会收到此错误。

    -2热度

    1回答

    最近我一直在OpenGL写一个游戏引擎,并有一个问题。当我生成我的BSP文件(Quake 3)时,它会生成非常奇怪的顶点!我检查了顶点向量,继承人包含的内容的截图(它重演) 我检查glGetError,它没有返回值(零)!我真的很难过,我不知道该怎么做。 这里是我的代码: #include <GL/glew.h> #include <GLFW/glfw3.h> #include <iostre

    -1热度

    1回答

    我有这个简单的例子,当我试图拨打context()->moveToThread(render_thread_);时,这个程序崩溃。谁能帮忙? class FrameRenderer: public QThread { Q_OBJECT public: FrameRenderer(QGLCanvas *parent):m_parent(parent), QThread(){}

    0热度

    1回答

    用于我用一个均匀的块这样的: uniform matrices { mat4 pv_matrix; mat4 screen_matrix; }; 与由 UniformBlockBinding明确定义相同的结合点不同着色器 。 以均匀的缓冲区对象的工作需要查询偏移是这样的: int offsets = new int[Length]; GL.GetActiveUnifo

    1热度

    1回答

    我目前正在研究增强现实应用程序。目标设备是光学透视HMD,我需要校准其显示器以实现虚拟对象的正确配准。 我用那个implementation of SPAAM为android来做到这一点,结果足够精确,我的目的。 我的问题是,校准应用程序输出给一个4×4 投影矩阵我可以直接与OpenGL的使用为例。但是,我仅使用接受光学校准参数的Augmented Reality框架,其格式为 Field of

    4热度

    1回答

    我有一个非常简单的程序,它将红色虚拟贴图映射到四边形。 这里是C++纹理定义: struct DummyRGB8Texture2d { uint8_t data[3*4]; int width; int height; }; DummyRGB8Texture2d myTexture { { 255,0,0, 255,0,0

    2热度

    2回答

    我试图拖动GLFW未修饰的窗口,但我遇到了一些事件的滞后,即使我使用glfwWaitEvents() 我有一个光标位置的回调,和一个简单的循环: // register a cursor position callback glfwSetCursorPosCallback(win, cursor_pos_callback); // then loop.. while(!glfwWindow