From Andreas Henne, Support for GL3 core profile in osgText
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@14717 16af8721-9629-0410-8352-f15c8da7e697
This commit is contained in:
@@ -30,6 +30,15 @@
|
||||
|
||||
#include <OpenThreads/Mutex>
|
||||
|
||||
// GL_ALPHA is deprecated in GL3/GL4 core profile, use GL_RED and a shader in this case. See osgText example.
|
||||
#if defined(OSG_GL3_AVAILABLE) && !defined(OSG_GL2_AVAILABLE) && !defined(OSG_GL1_AVAILABLE)
|
||||
#define OSGTEXT_GLYPH_FORMAT GL_RED
|
||||
#define OSGTEXT_GLYPH_INTERNALFORMAT GL_R8
|
||||
#else
|
||||
#define OSGTEXT_GLYPH_FORMAT GL_ALPHA
|
||||
#define OSGTEXT_GLYPH_INTERNALFORMAT GL_ALPHA
|
||||
#endif
|
||||
|
||||
namespace osgText {
|
||||
|
||||
class Font;
|
||||
|
||||
@@ -299,10 +299,10 @@ public:
|
||||
{
|
||||
typedef std::vector<Glyph*> Glyphs;
|
||||
typedef std::vector<unsigned int> LineNumbers;
|
||||
typedef std::vector<osg::Vec2> Coords2;
|
||||
typedef std::vector<osg::Vec3> Coords3;
|
||||
typedef std::vector<osg::Vec2> TexCoords;
|
||||
typedef std::vector<osg::Vec4> ColorCoords;
|
||||
typedef osg::ref_ptr<osg::Vec2Array> Coords2;
|
||||
typedef osg::ref_ptr<osg::Vec3Array> Coords3;
|
||||
typedef osg::ref_ptr<osg::Vec2Array> TexCoords;
|
||||
typedef osg::ref_ptr<osg::Vec4Array> ColorCoords;
|
||||
|
||||
Glyphs _glyphs;
|
||||
Coords2 _coords;
|
||||
@@ -313,6 +313,13 @@ public:
|
||||
osg::buffered_object<Coords3> _transformedBackdropCoords[8];
|
||||
ColorCoords _colorCoords;
|
||||
|
||||
osg::ref_ptr<osg::DrawElementsUInt> _quadIndices;
|
||||
void updateQuadIndices();
|
||||
|
||||
GlyphQuads();
|
||||
|
||||
void initGPUBufferObjects();
|
||||
|
||||
Glyphs getGlyphs() { return _glyphs; }
|
||||
const Glyphs getGlyphs() const { return _glyphs; }
|
||||
|
||||
|
||||
Reference in New Issue
Block a user