The public interfaces to osgText and osg::GLExtensions changed.
if( empty() )
return pos;
-
+#if OSG_VERSION_LESS_THAN(3,3,4)
GlyphQuads::Coords2 const& coords = _quads->_coords;
+#else
+ GlyphQuads::Coords2 refCoords = _quads->_coords;
+ GlyphQuads::Coords2::element_type &coords = *refCoords.get();
+#endif
size_t global_i = _begin + i;
if( global_i == _begin )
return cursorPos(0);
GlyphQuads::Glyphs const& glyphs = _quads->_glyphs;
+ #if OSG_VERSION_LESS_THAN(3,3,4)
GlyphQuads::Coords2 const& coords = _quads->_coords;
+#else
+ GlyphQuads::Coords2 refCoords = _quads->_coords;
+ GlyphQuads::Coords2::element_type &coords = *refCoords.get();
+#endif
float const HIT_FRACTION = 0.6;
float const character_width = _text->getCharacterHeight()
const GlyphQuads& quads = _textureGlyphQuadMap.begin()->second;
const GlyphQuads::Glyphs& glyphs = quads._glyphs;
- const GlyphQuads::Coords2& coords = quads._coords;
+#if OSG_VERSION_LESS_THAN(3,3,4)
+ GlyphQuads::Coords2 const& coords = quads._coords;
+#else
+ GlyphQuads::Coords2 refCoords = quads._coords;
+ GlyphQuads::Coords2::element_type &coords = *refCoords.get();
+#endif
+
const GlyphQuads::LineNumbers& line_numbers = quads._lineNumbers;
float wr = _characterHeight / getCharacterAspectRatio();
= GL2Extensions::Get(static_cast<unsigned>(contextId), true);
if (!extensions)
return;
+#if OSG_VERSION_LESS_THAN(3,3,3)
if (!extensions->isGlslSupported())
return;
value = extensions->getLanguageVersion();
+#else
+ if (!extensions->isGlslSupported)
+ return;
+ value = extensions->glslLanguageVersion;
+#endif
}
};
= GL2Extensions::Get(static_cast<unsigned>(contextId), true);
if (!extensions)
return;
+#if OSG_VERSION_LESS_THAN(3,3,3)
value = extensions->isGlslSupported();
+#else
+ value = extensions->isGlslSupported;
+#endif
}
};
sortData.frameSorted = frameNumber;
}
-
+
+#if OSG_VERSION_LESS_THAN(3,3,3)
const Extensions* extensions = getExtensions(state.getContextID(),true);
+#else
+ const GLExtensions* extensions = GLExtensions::Get(state.getContextID(), true);
+#endif
GLfloat ua1[3] = { (GLfloat) alpha_factor,
(GLfloat) shade_factor,
(GLfloat) cloud_height };
void ShaderGeometry::drawImplementation(osg::RenderInfo& renderInfo) const
{
State& state = *renderInfo.getState();
+#if OSG_VERSION_LESS_THAN(3,3,3)
const Extensions* extensions = getExtensions(state.getContextID(), true);
+#else
+ const GLExtensions* extensions = GLExtensions::Get(state.getContextID(), true);
+#endif
Vec4Array::const_iterator citer = _posScaleArray->begin();
Vec4Array::const_iterator cend = _posScaleArray->end();
FloatArray::const_iterator viter = _vertexAttribArray->begin();
#include "SGSceneFeatures.hxx"
+#include <osg/Version>
#include <osg/FragmentProgram>
#include <osg/VertexProgram>
#include <osg/Point>
#include <osg/PointSprite>
#include <osg/Texture>
+#include <osg/GLExtensions>
#include <OpenThreads/Mutex>
#include <OpenThreads/ScopedLock>
bool
SGSceneFeatures::getHavePointSprites(unsigned contextId) const
{
+#if OSG_VERSION_LESS_THAN(3,3,3)
return osg::PointSprite::isPointSpriteSupported(contextId);
+#else
+ const osg::GLExtensions* ex = osg::GLExtensions::Get(contextId, true);
+ return ex && ex->isPointSpriteSupported;
+#endif
}
bool
SGSceneFeatures::getHaveFragmentPrograms(unsigned contextId) const
{
+#if OSG_VERSION_LESS_THAN(3,3,3)
const osg::FragmentProgram::Extensions* fpe;
fpe = osg::FragmentProgram::getExtensions(contextId, true);
if (!fpe)
return false;
return true;
+#else
+ const osg::GLExtensions* ex = osg::GLExtensions::Get(contextId, true);
+ return ex && ex->isFragmentProgramSupported;
+#endif
}
bool
SGSceneFeatures::getHaveVertexPrograms(unsigned contextId) const
{
+#if OSG_VERSION_LESS_THAN(3,3,3)
const osg::VertexProgram::Extensions* vpe;
vpe = osg::VertexProgram::getExtensions(contextId, true);
if (!vpe)
return false;
return true;
+#else
+ const osg::GLExtensions* ex = osg::GLExtensions::Get(contextId, true);
+ return ex && ex->isVertexProgramSupported;
+#endif
}
bool
bool
SGSceneFeatures::getHavePointParameters(unsigned contextId) const
{
+#if OSG_VERSION_LESS_THAN(3,3,3)
const osg::Point::Extensions* pe;
pe = osg::Point::getExtensions(contextId, true);
if (!pe)
if (!pe->isPointParametersSupported())
return false;
return true;
+#else
+ const osg::GLExtensions* ex = osg::GLExtensions::Get(contextId, true);
+ return ex && ex->isPointParametersSupported;
+#endif
}