Hi, Paul try setting internalFormat(GL_RGBA32F_ARB, GL_LUMINANCE_ALPHA32F_ARB, etc), sourceFormat(GL_LUMINANCE_ALPHA or GL_RGBA), and sourceType(GL_FLOAT) for Texture2DArray object
Cheers 21.10.2011, 16:01, "Paul Palumbo" <[email protected]>: > I'm trying to define a Texture2DArray. However, whenever I set the internal > texture format to a 32-bit floating point texture (eg. GL_RGBA32F_ARB, > GL_LUMINANCE_ALPHA32F_ARB, etc), I keep getting OpenGL compile errors: > >> Warning: detected OpenGL error 'invalid enumerant' at >> StateSet::compileGLObejcts() compiling texture attribute >> GL Error when compiling Texture2DArray > > Does the "GL_EXT_texture_array" extension support floating-point texture > arrays? > > I have a Quadro 5000 with 260.19.21 NVIDIA driver. > > Here is how I'm setting up the Texture2DArray: > >> osg::Texture2DArray *textureArray = new osg::Texture2DArray(); >> textureArray->setTextureSize(width, height, depth); >> textureArray->setInternalFormatMode(osg::Texture2DArray::USE_IMAGE_DATA_FORMAT); >> textureArray->setFilter(osg::Texture2D::MIN_FILTER,osg::Texture2D::LINEAR_MIPMAP_LINEAR); >> textureArray->setFilter(osg::Texture2D::MAG_FILTER,osg::Texture2D::LINEAR); >> textureArray->setUseHardwareMipMapGeneration(true); >> >> for (uint32_t i = 0; i<depth; i++) >> { >> Filename filename = filenameArray[i]; // Read in a floating pt TIFF >> image. >> osg::ref_ptr<osg::Image> image = >> osgDB::readImageFile(filename.name()); >> image->setInternalTextureFormat(GL_LUMINANCE_ALPHA32F_ARB); >> textureArray->setImage(i, image.get()); >> } > > Paul P. > > ------------------ > Read this topic online here: > http://forum.openscenegraph.org/viewtopic.php?p=43482#43482 > > _______________________________________________ > 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

