Am 01.04.2016 um 16:37 schrieb Bruno Oliveira:
Hello,

I am trying to render a single image with 30.000x30.000 pixels. I do this by loaindg a PNG file into a single osg::Image object, and asigningt it to a texture within a gl quad.


However, this crashes my app (my gpu only supports 16.368 pixel images, ans had only 2gm ram).
This question has been asked a while ago. Generally the answer boiled down to: you most probably can't. OpenGL imposes a limit to the maximum texture size. Modern desktop GPUs should handle 8192*8192, but you cannot assume to have this. Biggest support I've seen so far was 16384. One option is to split the image into pieces and to use multiple adjacent quads with the pieces assigned. The memory issue might be resolved using compressed textures (basically using GL_COMPRESSED_RGB for your texture format).

Do you really need to display the complete resolution? If not, the simplest option is to resize the texture before displaying it.

Cheers
Sebastian

How should this be done? Is there some utility in OSG to do this out of the box?


_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to