【问题标题】:Is it possible to retrieve a pixel buffer when setup using the cuda_gl_interop functions?使用 cuda_gl_interop 函数设置时是否可以检索像素缓冲区?
【发布时间】:2013-01-25 23:08:42
【问题描述】:

我已经阅读了该主题,并且正在实施并行光线追踪引擎(目前仅使用光线-球体交叉点),但似乎我只能在 GLUT 窗口中显示我的结果或直接写入文件,而不是两者.我不知道如何实现这一目标。我目前正在设置一个 cudaGraphicsResource 并将其映射到一个 GL 像素缓冲区对象。由于对 OpenGL 相对缺乏经验,我不知道如何在 CPU 上检索像素数据。

编辑:对不起。正如我发布的那样,我发现了令人眼花缭乱的 glReadPixels 例程。会调查的。

【问题讨论】:

    标签: c++ opengl cuda pbo


    【解决方案1】:

    我发现像素缓冲区对象被引用到 CUDA 代码这一事实是无关紧要的。只需进行 glReadPixels(0,0,DIM,DIM,GL_RBGA,GL_UNSIGNED_BYTE,&bucketofdata) 调用就足够简单了。我仍然没有完全回答自己的问题是为什么如果使用 malloc 初始化 bucketofdata 并且仅当它被声明为 GLubyte bucketofdata[DIM*DIM*sizeof(uchar4)] 时上述调用会失败。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-13
      相关资源
      最近更新 更多