Commit Graph

99 Commits

Author SHA1 Message Date
Robert Osfield
77b9a7ae19 From Eric Sokolwsky, "osgText is a useful node kit, but when longer paragraphs are displayed
on the screen, it looks more aesthetically pleasing to have a larger
gap between lines than is given by default. I added a new parameter,
lineSpacing, in the Text class to allow the line spacing to be adjustable
by the application. The default value is 0 meaning there is no extra
spacing given. The value should be given as a percentage of the character
height. A good value for longer paragraphs is 0.25 (25%) or more."
2007-01-30 14:32:12 +00:00
Robert Osfield
7f5aaa8424 Improved resizeGLObjectBuffers support 2007-01-08 20:46:56 +00:00
Robert Osfield
709d2fa435 Improved the handling a releaseGLObjects() and add setThreadSafeRefUnref and resizeGLObjectsBuffers methods 2007-01-08 20:40:29 +00:00
Robert Osfield
7c6b528588 Fixed bug related to clean up of text fonts. 2006-10-03 11:14:34 +00:00
Robert Osfield
def74d3471 Introduced new osg::View, and osg::RenderInfo classes into the core OSG to help
handle scenes with multiple views with elements that need coordinating on a per view basis.

Added beginings of new osgText::FadeText class (not functionality yet).
2006-09-18 20:54:48 +00:00
Robert Osfield
6be6bc2eaa Added TexEnv object into Font and apply this in Text::drawImplementation to make
sure that a valid TexEnv is applied
2006-08-28 19:37:40 +00:00
Robert Osfield
26e3424195 Changed the default implementation of backdrop text to DEPTH_RANGE and
tweaked the depth range values to minimize the depth rage witout causing z fighting
on osgtext example.
2006-08-22 12:33:35 +00:00
Robert Osfield
98cdf9b3c7 From Eric Wing, fix for compute of the bounding box when handling outline/backdrop text. 2006-08-22 10:23:58 +00:00
Robert Osfield
f6d092957f Commented out the _textBB contribution of outline/backdrops to fix bounding box problem. 2006-08-10 06:20:28 +00:00
Robert Osfield
9e7b07fbcf Reworked the state management within osgText::Text and osgText::Font so that it
only applies textures locally rather than whole StateSet.
2006-08-02 21:05:56 +00:00
Robert Osfield
d728d8335e Fixed auto rotate bug. 2006-07-25 13:52:10 +00:00
Robert Osfield
97dde14dcf From Eric Wing, fix for VC6 support 2006-07-18 19:26:54 +00:00
Robert Osfield
f1c2694c17 Updated copyright years. 2006-07-18 15:21:48 +00:00
Robert Osfield
419e185895 From Eric Wing, add alternate backdrop implementations.
From Robert Osfield, updated naming  and copy constructor methods.
2006-07-18 12:24:04 +00:00
Robert Osfield
2ef59b73e9 Change Unit to Units to keep consistent with OpenGL naming. 2006-07-17 11:43:26 +00:00
Robert Osfield
f16a78ad97 Increased the unit multiplier to 3 to avoid z fighting. 2006-07-17 10:25:01 +00:00
Robert Osfield
4bae225d39 Added s/getFactorMultiplier(), s/getUnitMultiplier(), areUnitAndMultipliersSet() and
setFactorAndUnitMultipliersUsingBestGuessForDriver() static methods to
osg::PolygonOffset to help implement workarounds for lack of portablity of
settings between different hardware.
2006-07-14 14:08:33 +00:00
Robert Osfield
abe6260da4 Fixed management of Text's StateSet so that it works correctly when the DefaultFont is active. 2006-07-13 09:01:24 +00:00
Robert Osfield
30d32133b8 Tweaked polygon offset 2006-07-06 10:27:40 +00:00
Robert Osfield
2c2083db72 From Vivek Rajan, "Rotated text in SCREEN_COORDS was looking a little squished especially
in orthographic projection. Performing the rotation before the scaling
fixed the problem. I've attached Text.cpp with the fix."

From Robert Osfield, in keeping with Vivek's change moved the auto rotate to screen befor the scale as well.
2006-07-06 08:36:12 +00:00
Robert Osfield
3ad5140942 Change osgText so that the Text drawable now can have its own StateSet
that users can assign to it without it being overriden.  If none is
assigned externally it now uses a StateSet associated wit the Font assigned
to the Text.
2006-07-04 13:56:29 +00:00
Robert Osfield
710adfd698 From Eric Wing, added support for outline/shadow and colour gradient effects. 2006-06-27 13:09:00 +00:00
Robert Osfield
4d35807a54 From Matt Green, fix to handling of centering of multi-line text entries. 2006-06-08 13:34:29 +00:00
Robert Osfield
2792c6c2fb From Colin MacDonald, fixed handling of an adding a graphics context after the creating of the osgText::Text. 2006-05-01 16:20:26 +00:00
Robert Osfield
3f2c419db6 From Paul Martz, changed Vec3 to Vec3d to ensure that the lazy evaluation of computeBound work properly. 2005-12-08 20:32:06 +00:00
Robert Osfield
0e16b64665 Coverted tabs to space in core libraries. 2005-11-17 13:35:53 +00:00
Robert Osfield
6c31d05172 Added a setSupportsDisplayList(false) to constructor to prevent end users
enabling display lists, something that can break the osgText's managment
of state.
2005-11-02 12:22:12 +00:00
Robert Osfield
a312b0451e From Farshid Laskari, changed the compute of the text bounding box to include the spaces. 2005-10-14 09:29:13 +00:00
Robert Osfield
1c88914e5f From Yuri Vilmanis, improved multi-line justifaction support and new alignment modes 2005-07-15 16:22:53 +00:00
Robert Osfield
e82a63ca81 Cross platform build fixes. 2005-05-13 11:11:52 +00:00
Robert Osfield
bf4d63f6ea Added new Node/Drawable::s/getInitialBound and Node/Drawable::s/getComputeBoundCallback
methods and reimplement computeBound so that it passes back a bounding volume rather
than modifying the local one.
2005-05-12 14:03:22 +00:00
Robert Osfield
d1a1b1d95c Added more comprehensive releaseGLObjects(State*=0) throughout Nodes,
Drawables,StateSet, and osgDB::Registry.

Added cleanup_frame() from to osgProducer::OsgCamerGroup to help with proper
clean of OpenGL objects before exit, and modified osgviewer, osghangglider,
osgwindows examples to do the extra frame call to cleanup_frame() before exit.
2005-05-07 20:47:09 +00:00
Robert Osfield
7f3d46e110 Added check to see if autoTransformCache had been initialized before
using it in the computeBound.
2005-04-28 05:58:20 +00:00
Robert Osfield
38bf740ef4 From Vivek Rajan, "osg::Text was getting stretched when the CharacterSizeMode was set to
SCREEN_COORDS and the SceneView's projection matrix was set to an
Ortho2D matrix (sceneView->setProjectionMatrixAsOrtho2D(-1,1,-1,1)).

Computing the pixel size separately vertically and horizontally, and
setting the scaling factors appropriately based on that fixed the
problem."
2005-04-26 07:49:18 +00:00
Robert Osfield
3ab9867264 Removed increment of the cursor position by the bearing value in the compute
last character code as this should not be used when moving the cursor.
2005-04-20 09:55:24 +00:00
Robert Osfield
678b22ce83 Updated Copyright notices to 1998-2005. 2005-04-14 21:41:28 +00:00
Robert Osfield
816df3a1d0 Fixes for VS6.0 build 2005-04-04 12:24:18 +00:00
Robert Osfield
c3f40e2e67 Added improved handling of center justificaion of multiline text 2005-03-03 12:33:07 +00:00
Robert Osfield
117c791a3b Added osg::BufferObject and a made a number associated to accomodate this
new class. osg::BufferObject wraps up OpenGL pixel and array buffer objects.
Currently implementation is work in progress.
2005-02-09 10:39:45 +00:00
Robert Osfield
a086a6d01b Changed Font::setSize to Font::setFontResolution 2005-01-27 11:10:50 +00:00
Robert Osfield
7eb3f2646e From Norman Vine (with small tweaks by Robert Osfield), build fixes for Cygwin 2004-08-04 08:27:43 +00:00
Robert Osfield
1ae521981e From David Fries, divide by zero fix on text with a pixel size of 0.0 2004-07-28 07:24:13 +00:00
Robert Osfield
4ee909d217 Added better handling of number of graphic context size changes. 2004-03-16 21:03:37 +00:00
Robert Osfield
8cf1cc0dad From Brad Christaiansen, added check for projection matrix changing in
screen coord character size mode.
2004-02-04 09:30:06 +00:00
Robert Osfield
d226e3ec68 From Nick, added VectorUInt in osgText/String hack to get around VS's stoopid compiler bugs.
From Robert, removed an #if #else #endif block, for code clarity.
2004-01-27 11:50:32 +00:00
Robert Osfield
a7a96e710c Added support for REVERESED_XY_PLANE, REVERESED_XZ_PLANE and
REVERESED_YZ_PLANE's for the axis alignement to allow the text to be
reversed.
2003-12-20 14:23:04 +00:00
Robert Osfield
a2f9222753 Added support for handling of wordwrap in osgText::Text, so that whole words
are cut in two, but rather moved completely to the next line.
2003-09-15 21:43:54 +00:00
Robert Osfield
1b9d7d458a Added support for texture object manager, which provides an automatic mechansim
for reusing deleted textures.
2003-07-14 14:42:10 +00:00
Robert Osfield
fa8b8c6a52 From Tree, fixes for text bounding box initialization. 2003-07-10 13:18:13 +00:00
Robert Osfield
8d4ab4668e From Tree, updates to osgText and freetype plugin to support are kerning paramter. 2003-06-26 16:21:49 +00:00