Hi, Perhaps this is as much a SilverLining question so I've reached out to Frank Kane, but I am attempting to use SilverLining’s GetEnvironmentMap to load an HDR cube map into an osg::TextureCubeMap for input into an image based lighting scheme. I can’t seem to figure out how to do this properly.
I’ve tried something like the following, based on these old forum posts I’ve found: http://forum.openscenegraph.org/viewtopic.php?t=15277&view=next http://forum.openscenegraph.org/viewtopic.php?t=12966&view=next Code: osg::TextureCubeMap* hdrEnvMap = new osg::TextureCubeMap; hdrEnvMap->setTextureSize(width, height); hdrEnvMap->setWrap(osg::Texture::WRAP_S, osg::Texture::CLAMP_TO_EDGE); hdrEnvMap->setWrap(osg::Texture::WRAP_T, osg::Texture::CLAMP_TO_EDGE); hdrEnvMap->setWrap(osg::Texture::WRAP_R, osg::Texture::CLAMP_TO_EDGE); hdrEnvMap->setFilter(osg::Texture::MIN_FILTER, osg::Texture::LINEAR_MIPMAP_LINEAR); hdrEnvMap->setFilter(osg::Texture::MAG_FILTER, osg::Texture::LINEAR); hdrEnvMap->setInternalFormat(GL_RGB16F); hdrEnvMap->setSourceFormat(GL_RGB); hdrEnvMap->setSourceType(GL_FLOAT); osg::GraphicsContext* graphicsContext = camera->getGraphicsContext(); unsigned int cid = graphicsContext->getState()->getContextID(); osg::Texture::TextureObject* obj = hdrEnvMap->getTextureObject(cid); obj->setAllocated(true); unsigned int handle = obj->id(); void* ptr = &handle; atmosphere->GetEnvironmentMap(ptr, 6); osg::Texture::TextureObject *textureObject = new osg::Texture::TextureObject(hdrEnvMap, handle, GL_TEXTURE_CUBE_MAP); textureObject->setAllocated(); hdrEnvMap->setTextureObject(cid, textureObject); osg::State *state = camera->getGraphicsContext()->getState(); state->setActiveTextureUnit(0); hdrEnvMap->apply(*state); state->haveAppliedTextureAttribute(0, hdrEnvMap); The environment map seems like it’s being returned correctly, as GetEnvironmentMap returns true, and I call it elsewhere in my codebase to pass to Triton for reflections, which also works okay. So I think it’s a matter of not knowing how to initialize the cube map object in OSG properly. Thanks in advance for any insight. ------------------ Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=72961#72961 _______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

