How to render / draw a framebuffer buffer object without glDrawPixels

According to opengl spec 4.0 glDrawPixels is deprecated.

For cuda compatibility, it is best to use "opengl buffer objects". (An alternative could be textures or surfaces, but they have caching / concurrency problems and therefore are not suitable for my cuda core).

I just want to create a cuda core that uses this display object of the opengl buffer and uses it as a "pixel array" or a piece of memory pixel, and then the buffer is not displayed.

Then I want opengl to draw a buffer object in a framebuffer. I would like to use opengl api which is not deprecated.

What other paths / apis exist to draw a buffer object into the frame buffer? (You also cannot use buffers for buffers, since they probably have the same problem as problems with cuda / caching arrays, so this excludes the object / extension framebuffer?!?).

Is there a flaw / missing functionality in opengl 4.0 now that glDrawPixels is deprecated? Or is there an alternative?

+5
source share
2 answers

glDrawPixelswas removed from GL 3.2 and above (it is not outdated. Deprecated funds are "available but will be removed in the future"). It was deleted because it was usually not a quick way to draw pixel data on the screen.

glTexSubImage2D , . blit glBlitFramebuffer.

+3

, :

  • " ", , , , "(opengl) ()".

  • cuda. ( , "

  • tex * opengl api-, . (, , , , , .)

  • . , / framebuffer. ( , , ).

+2

All Articles