Public Member Functions | |
CubeMapGenerator (int texture_size=64) | |
CubeMapGenerator (const CubeMapGenerator ©, const osg::CopyOp ©op=osg::CopyOp::SHALLOW_COPY) | |
osg::Image * | getImage (osg::TextureCubeMap::Face face) |
const osg::Image * | getImage (osg::TextureCubeMap::Face face) const |
void | generateMap (bool use_osg_system=true) |
Generate the six cube images. | |
Protected Member Functions | |
virtual | ~CubeMapGenerator () |
CubeMapGenerator & | operator= (const CubeMapGenerator &) |
void | set_pixel (int index, int c, int r, const osg::Vec4 &color) |
virtual osg::Vec4 | compute_color (const osg::Vec3 &R) const =0 |
Override this method to define how colors are computed. | |
Static Protected Member Functions | |
static osg::Vec4 | vector_to_color (const osg::Vec3 &vec) |
It exposes the necessary interface to access the six generated images; descendants should only override the compute_color() method.
osgUtil::CubeMapGenerator::CubeMapGenerator | ( | int | texture_size = 64 |
) | [explicit] |
osgUtil::CubeMapGenerator::CubeMapGenerator | ( | const CubeMapGenerator & | copy, | |
const osg::CopyOp & | copyop = osg::CopyOp::SHALLOW_COPY | |||
) |
virtual osgUtil::CubeMapGenerator::~CubeMapGenerator | ( | ) | [inline, protected, virtual] |
osg::Image * osgUtil::CubeMapGenerator::getImage | ( | osg::TextureCubeMap::Face | face | ) | [inline] |
const osg::Image * osgUtil::CubeMapGenerator::getImage | ( | osg::TextureCubeMap::Face | face | ) | const [inline] |
void osgUtil::CubeMapGenerator::generateMap | ( | bool | use_osg_system = true |
) |
Generate the six cube images.
If use_osg_system is true, then the OSG's coordinate system is used instead of the default OpenGL one.
CubeMapGenerator& osgUtil::CubeMapGenerator::operator= | ( | const CubeMapGenerator & | ) | [inline, protected] |
void osgUtil::CubeMapGenerator::set_pixel | ( | int | index, | |
int | c, | |||
int | r, | |||
const osg::Vec4 & | color | |||
) | [inline, protected] |
osg::Vec4 osgUtil::CubeMapGenerator::vector_to_color | ( | const osg::Vec3 & | vec | ) | [inline, static, protected] |
virtual osg::Vec4 osgUtil::CubeMapGenerator::compute_color | ( | const osg::Vec3 & | R | ) | const [protected, pure virtual] |
Override this method to define how colors are computed.
The parameter R is the reflection vector, pointing from the center of the cube. The return value should be the RGBA color associated with that reflection ray.
Implemented in osgUtil::HalfWayMapGenerator, osgUtil::HighlightMapGenerator, and osgUtil::ReflectionMapGenerator.