Access to display texture for CUDA interop

Ok, I solved the issue myself - or to be said, there was no issue at all.

The registration of the framebuffer texture of the currently displayed frame worked as expected. I made an oopsie when fetching the pixels of the cudaGraphicsResource registered texture.

As you can see above, the InternalFormat of the texture in native OpenGL code was GL_RGBA16F_ARB which is why I wrote the kernel function to account for floating point RGBA values (0.0 - 1.0).

The InternalFormat of the VTK texture on the other hand was GL_RGBA8_EXT - therefore I had to rewrite my kernel function to not compute RGBA from float --> unsigned char but to directly take the RGBA values as is.

1 Like