Hi,

Your internal format needs to be 16bit per channel to I think, so GL_UNSIGNED_INT_8_8_8_8_REV might be inappropriate. GL_R16UI might do, but I thing you need to use GL_RGBA_INTEGER_EXT as source. Alternatively you can use GL_LUMINANCE with GL_LUMINACE16F.

What exactly are you doing with the image?

Cheers
Sebastian
Hello,

I have a 16bit per channel, 4 channel, image. The format is short (uint16_t). Note that this image is scaled to the full 16bit depth [0, 65536]


I have this code that works well for a 8bit, 4 channel image:

osg::ref_ptr<osg::Image> image = new osg::Image();
 image->setImage(ImageSize, ImageSize,1,
GL_RGBA8,
GL_RGBA,
GL_UNSIGNED_INT_8_8_8_8_REV,
MyDataPtr,
osg::Image::NO_DELETE);



Now I want to por this to 16bit depth.
How is this done?

I tried

 image->setImage(ImageSize, ImageSize,1,
GL_RGBA16UI,
GL_RGBA,
GL_UNSIGNED_INT_8_8_8_8_REV,
MyDataPtr,
osg::Image::NO_DELETE);

But this yields all black textures. How can I do this without converting my 16bit image pixel data?


_______________________________________________
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