Robert Osfield
1cd0a5fe03
Fixed Glyph::TextureInfo assignment bug
2017-10-24 11:36:00 +01:00
Robert Osfield
4b295c46d1
Restructed the way that GlyphTexture is set up to better support control of osgText::ShaderTechnique from osgText::Text
2017-10-23 14:50:35 +01:00
Robert Osfield
97aeb16551
Moved osgText::GlyphTechnique::Features enum to osgText::ShaderTechinque enum to make it's roll clearer
2017-10-20 17:03:25 +01:00
Robert Osfield
d2fa7c4317
Simplified and improved the glyph margin computation and usage
2017-09-29 20:21:13 +01:00
Robert Osfield
8c575c0cea
UPdated from OpenSceneGraph-Data with handling of non textured text decoration
2017-09-26 15:32:41 +01:00
Robert Osfield
722ed6fc5e
Shifted set up of osgText related StateSet from osgText::Font into into osg::TextBase/Text to enable grater control over state required for specific Text implementations
2017-09-12 11:50:47 +01:00
Robert Osfield
de47eb3666
Add support for generating outline and signed distance field channels in a RGBA packed GlyphTexture Image.
2017-09-08 16:59:43 +01:00
Robert Osfield
1289c4ee41
Added osgText::Font::s/getGlyphInterval(int) and GlyphTexture::s/getGlyphInterval(int) and internal support for clmapping positions of glyph images an defined intervals, defaults to 1.
2017-08-30 16:21:03 +01:00
Robert Osfield
6308b497f2
Replaced macro based selection of which shaders to use by default with DisplaySettings::setShaderHint() and OSG_SHADER=HINT=GL2|GL3|GLES2|GLES3|NONE controls
2017-03-27 11:44:41 +01:00
Robert Osfield
ec5cbe18d5
Restructed the marco to resolve Windows build issues
2017-03-25 16:05:57 +00:00
tomhog
423e14f92f
Merge branch 'master' into topic-gles3-ios
2017-03-21 15:33:13 +00:00
Robert Osfield
a74872c6bf
Refactored GlyphTexture so that it utlizes standard osg::Texture2D/osg::Image combinations rather than locally implemented per glyph subloading.
2017-03-21 13:10:45 +00:00
Thomas Hogarth
630af80635
Adusted Font shaders to use gl3 path on gles3, iphone example using inbuilt shaders
2017-03-20 19:35:01 +00:00
Robert Osfield
6670a6e070
Improved support for stats, fonts and shadergen for GLES2, GLES3 and GL3
2017-03-20 14:07:14 +00:00
Robert Osfield
4498945b98
Quited debug messages
2017-03-20 09:25:49 +00:00
Robert Osfield
c7711fd2d4
Added support for GL3/GLES3, GL2,GLE2 shaders to osgText::Font/Text.
2017-03-18 18:08:12 +00:00
Robert Osfield
feb0214ddc
Introduced streamlined text rendering dispatch code.
2017-03-18 11:48:55 +00:00
Robert Osfield
67202b2662
From Romain Ouabdelkader, "This is a fix for osgText to calculate kerning and to load glyph3D with the text's font resolution.
...
Font::getKerning(...), Font::getGlyph3D(...) doesn't ask for a font resolution so it uses the last font resolution requested by Font:: getGlyph(...).
This can leads to different results depending of the precedent call to Font::getGlyph(...).
See http://lists.openscenegraph.org/pipermail/osg-users-openscenegraph.org/2016-January/271952.html for more infos.
This fix adds a font resolution parameter to Font::getKerning(...), Font::getGlyph3D(...) and to the font implementations.
This was made under the base revision r15182."
2016-02-15 13:30:39 +00:00
Robert Osfield
4deca2d38b
From Jannik Heller and Robert Osfield, introduced ReadResult/WriteResult::statusMessage() method that creates a std::string from the stutus value and message string.
2016-01-25 12:23:04 +00:00
Robert Osfield
dd996a3289
Introduced CMake option OSG_PROVIDE_READFILE option that defaults to ON, but when switched to OFF disables the building of the osgDB::read*File() methods,
...
forcing users to use osgDB::readRef*File() methods. The later is preferable as it closes a potential threading bug when using paging databases in conjunction
with the osgDB::Registry Object Cache. This threading bug occurs when one thread gets an object from the Cache via an osgDB::read*File() call where only
a pointer to the object is passed back, so taking a reference to the object is delayed till it gets reassigned to a ref_ptr<>, but at the same time another
thread calls a flush of the Object Cache deleting this object as it's referenceCount is now zero. Using osgDB::readREf*File() makes sure the a ref_ptr<> is
passed back and the referenceCount never goes to zero.
To ensure the OSG builds when OSG_PROVIDE_READFILE is to OFF the many cases of osgDB::read*File() usage had to be replaced with a ref_ptr<> osgDB::readRef*File()
usage. The avoid this change causing lots of other client code to be rewritten to handle the use of ref_ptr<> in place of C pointer I introduced a serious of
templte methods in various class to adapt ref_ptr<> to the underly C pointer to be passed to old OSG API's, example of this is found in include/osg/Group:
bool addChild(Node* child); // old method which can only be used with a Node*
tempalte<class T> bool addChild(const osg::ref_ptr<T>& child) { return addChild(child.get()); } // adapter template method
These changes together cover 149 modified files, so it's a large submission. This extent of changes are warrent to make use of the Object Cache
and multi-threaded loaded more robust.
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@15164 16af8721-9629-0410-8352-f15c8da7e697
2015-10-22 13:42:19 +00:00
Robert Osfield
14a563dc9f
Ran script to remove trailing spaces and tabs
2012-03-21 17:36:20 +00:00
Robert Osfield
fe1c75aa8a
Fixed handling of Font implementations that don't handle multiple font resolutions.
2011-05-13 19:08:04 +00:00
Robert Osfield
1d7222f59f
From Hartwig Wiesmann, fix to font search path under OSX.
2010-11-22 10:41:04 +00:00
Robert Osfield
e1ee96b3f2
Fixed crash on intialization of static applications by moving the static mutexes inside singleton methods.
2010-11-12 09:48:21 +00:00
Robert Osfield
6f49d85f88
Cleaned up debug info, and changed Text3D across to using GL_NORMALIZE instead of GL_RESCALE_NORMAL.
2010-09-08 11:02:39 +00:00
Robert Osfield
50be800787
Moved TextNode into osgText.
...
Cleaned up freetype plugin so it no longer does tesselation - instead Glyph and TextNode do this.
2010-09-07 18:18:35 +00:00
Robert Osfield
a6abbb545e
Further work on new 3D text support
2010-09-06 15:43:59 +00:00
Robert Osfield
ba10f56f86
Refactored to use a typedef of Font to Font3D rather than have a separate Font3D class
2010-09-03 09:08:19 +00:00
Robert Osfield
8c3e3055e7
Refactored osgText::Font so that it now supports both 2D and 3D glyphs.
...
Added TextNode.h and TextNode.cpp to examples/osgtext3D in prep for introducing the new node to osgText library
2010-09-03 08:26:46 +00:00
Robert Osfield
adc302072f
converted osg::notify to OSG_INFO etc.
2010-05-28 16:00:45 +00:00
Robert Osfield
0c1503275b
Removed the sizeAdjustment code as it was leading to incorrect tex coord generation and clipping of the left handside
...
of the text glyphs.
2010-03-18 14:41:33 +00:00
Robert Osfield
10a2f389d7
From Mathias Froehlich, "If you want to have that qfont plugin loader, this is the updated
...
implementation which uses osgQt and includes the changes to make fonts load
without a file on disk."
2010-03-05 15:46:17 +00:00
Robert Osfield
8f6db66e59
Added setting of the charcode during construction of osgText::Font::Glyph()
2010-01-14 15:15:42 +00:00
Robert Osfield
93d83010f8
Added EGL support into build system for GLES1 + GLES2.
...
Added EGL support into GraphicsWindowX11.
2009-10-30 15:17:38 +00:00
Robert Osfield
d17d7159a1
Ported osgUtil, osgDB, osgGA, NodeKits and plugins to compile against OpenGL ES 1.1 and OpenGL ES 2.0.
2009-10-28 20:31:57 +00:00
Robert Osfield
2d26cbe7ab
Introduced optional build against the GLU library, using optional compile paths to enable/disable GLU related function.
...
To toggle the use of the GLU library adjust the OSG_GLU_AVAILABLE variable via ccmake . or CMakeSetup.
2009-10-07 19:42:32 +00:00
Robert Osfield
3d75054e2c
Preliminary work on support for a texture object pool that is designed to help manage resources down the GPU more tightly.
2009-09-22 18:45:24 +00:00
Robert Osfield
a5c32da4ff
Warning fixes
2008-12-17 11:00:16 +00:00
Robert Osfield
315aeeb557
Where possible moved redundent C header includes from headers to source files
2008-12-12 18:47:30 +00:00
Robert Osfield
8bdb22c22e
From Mathias Froehlich, "Attached one namespace/scope lookup problem which shows up on irix."
2008-09-18 15:16:57 +00:00
Robert Osfield
818b5230fb
From Sherman Wilcox with a little reorganisation from Robert Osfield, added
...
test for 0 sized subloads, ignoring them to prevent a divide by zero error occuring on some buggy drivers.
2008-03-29 09:59:23 +00:00
Robert Osfield
e869200b3d
Refactored the mutex usage in osgText and freetype plugin to prevent multi-thread crash
2008-02-25 12:54:54 +00:00
Robert Osfield
ce5388a8bc
Convert osgText and freetype plugin across to keeping the font size as state that
...
is passed into the getGlyph and getKerning methods rather than a current state of the font itself.
2007-12-23 18:15:54 +00:00
Robert Osfield
f290b75bc9
Moved Font code across to using FontSizePair internally and on Font methods, but
...
still using original implemetations.
2007-12-23 13:45:37 +00:00
Robert Osfield
dea067050c
Renamed osgText::Font::SizePair to osgText::FontSizePair in prep for use this more
...
widely within osgText/freetype plugin.
Added support for inserting loading models into --mt multithreaded implementation.
2007-12-23 13:18:40 +00:00
Robert Osfield
8733bb1799
From Mathias Froehlich, "Something to extend the texture subloading blacklist.
...
... we have problems with that on solaris."
2007-12-21 14:16:40 +00:00
Robert Osfield
0cdc3e9506
Added intializers.
2007-12-16 17:01:40 +00:00
Robert Osfield
256391c3b4
From Serge Lages, introduce readRef*File() methods which pass back ref_ptr<> rather than C pointers.
2007-12-12 17:04:48 +00:00
Robert Osfield
f4afa427a7
From Roland Smeenk, "Attached you will find a large set of small typo fixes (mainly in the comments)."
2007-12-10 17:30:18 +00:00
Robert Osfield
f69a48e552
From David Callu, added support of 3D text to osgText and associated plugins.
2007-12-10 15:15:56 +00:00