VTK - 使用OpenGL ES 2.0渲染工件

时间:2016-04-22 10:12:39

标签: opengl-es opengl-es-2.0 vtk google-nativeclient

我正在尝试在完全支持OpenGL ES 2.0的Google Native Client(PNaCl)应用程序上运行VTK Sphere example。在Win32上,该示例工作得很好(左下图),但在使用GLES2的应用程序中,它使用工件渲染(右下图)。球体略微旋转,因此可以更好地看到伪影。 但是2D ImageRotate example可以正常使用GLES2,所以我怀疑这些工件与VTK中的3D渲染有关。

Here is video我已经录制过,渲染问题在立方体上更明显。立方体的一些墙壁是透明的。 有什么想法吗? VTK是否完全支持GLES2?

Win32 (left) and GL ES 2.0 (right) Win32 (left) and GL ES 2.0 (right)

1 个答案:

答案 0 :(得分:0)

我终于按照我的期望开始工作了。

问题是我在创建OpenGL上下文时没有正确设置深度(以及样本大小 - 抗锯齿问题)。 如果将来有人会遇到这个问题,你必须定义你的attrib列表:

const int32_t attrib_list[] =
{
    PP_GRAPHICS3DATTRIB_ALPHA_SIZE,     8,
    PP_GRAPHICS3DATTRIB_DEPTH_SIZE,     24,
    PP_GRAPHICS3DATTRIB_SAMPLES,        8,
    PP_GRAPHICS3DATTRIB_SAMPLE_BUFFERS, 8,

    // ...

    PP_GRAPHICS3DATTRIB_NONE,
};

现在它正确渲染。

相关问题