diff --git a/src/osgPlugins/dds/ReaderWriterDDS.cpp b/src/osgPlugins/dds/ReaderWriterDDS.cpp index 3fb8d6b4b..f439b6cfe 100644 --- a/src/osgPlugins/dds/ReaderWriterDDS.cpp +++ b/src/osgPlugins/dds/ReaderWriterDDS.cpp @@ -1147,6 +1147,7 @@ bool WriteDDSFile(const osg::Image *img, std::ostream& fout, bool autoFlipDDSWri } break; case GL_LUMINANCE: + case GL_DEPTH_COMPONENT: { ddpf.dwRBitMask = 0x000000ff; PF_flags |= DDPF_LUMINANCE; diff --git a/src/osgPlugins/jpeg/ReaderWriterJPEG.cpp b/src/osgPlugins/jpeg/ReaderWriterJPEG.cpp index b15d92f07..c07e7b969 100644 --- a/src/osgPlugins/jpeg/ReaderWriterJPEG.cpp +++ b/src/osgPlugins/jpeg/ReaderWriterJPEG.cpp @@ -665,6 +665,7 @@ class ReaderWriterJPEG : public osgDB::ReaderWriter int image_components = 3; // Only cater for gray, alpha and RGB for now switch(img.getPixelFormat()) { + case(GL_DEPTH_COMPONENT): case(GL_LUMINANCE): case(GL_ALPHA): { image_color_space = JCS_GRAYSCALE; diff --git a/src/osgPlugins/png/ReaderWriterPNG.cpp b/src/osgPlugins/png/ReaderWriterPNG.cpp index f007a9751..1ff68cec7 100644 --- a/src/osgPlugins/png/ReaderWriterPNG.cpp +++ b/src/osgPlugins/png/ReaderWriterPNG.cpp @@ -114,6 +114,7 @@ class ReaderWriterPNG : public osgDB::ReaderWriter int bit_depth = img.getPixelSizeInBits(); switch(img.getPixelFormat()) { + case(GL_DEPTH_COMPONENT): color = PNG_COLOR_TYPE_GRAY; break; case(GL_LUMINANCE): color = PNG_COLOR_TYPE_GRAY; break; case(GL_ALPHA): color = PNG_COLOR_TYPE_GRAY; break; //Couldn't find a color type for pure alpha, using gray instead case(GL_LUMINANCE_ALPHA): color = PNG_COLOR_TYPE_GRAY_ALPHA ; bit_depth /= 2; break;