如何从OpenGL中使用绘制的对象中选取3D坐标及其颜色?

时间:2019-05-31 13:32:57

标签: c++ qt opengl qglwidget

我想从使用OpenGL绘制的对象中拾取并显示X,Y,Z坐标。我在Qt中使用QGLWidget进行渲染。我可以选择RGBA组合中的像素值。但是我无法获取X,Y,Z坐标。

读取像素值的代码:

void readPixels( int x, int y )
{
    // 4 bytes per pixel (RGBA), 1x1 bitmap
    vector< unsigned char > pixels( 1 * 1 * 4 );
    glReadPixels(x,  y, 1, 1, GL_RGBA, GL_UNSIGNED_BYTE, &pixels[0] );

    qDebug() << "r: " << (int) pixels[0];
    qDebug() << "g: " << (int) pixels[1];
    qDebug() << "b: " << (int) pixels[2] ;
    qDebug() << "a: " << (int) pixels[3] ;

}

我需要知道如何立即读取“坐标”值。

Expected Output

0 个答案:

没有答案