Commit Graph

4933 Commits

Author SHA1 Message Date
Robert Osfield
c2156f12ff Added mutex to DefaultFont::instance(). 2007-09-04 12:38:42 +00:00
Robert Osfield
c9f6a3f7ca Added mutex into osgText::Font::GlphTexture to marshel adding to and reading
from glyph list
2007-09-04 12:32:47 +00:00
Robert Osfield
4330993f1f Updated wrappers 2007-09-03 15:47:28 +00:00
Robert Osfield
8414a16e52 From Sherman Wilcox, added extension checking support for compressed texture subloading. 2007-09-03 15:43:58 +00:00
Robert Osfield
be11672769 From Jan Peciva, build fix 2007-09-03 15:22:23 +00:00
Robert Osfield
39d0788d5b From Jan Peciva, improvement to the FindInventor. 2007-09-03 13:59:25 +00:00
Robert Osfield
bd845a7b23 From Jan Peciva, Added write support into Inventor plugin.
Note from Robert Osfield.  A couple of lines of code in ConvertToInventor.cpp
would not compile under g++ 4.1.2, so rather than hold back the dev release till
this is resolved I've optional compiled out the problem section.
The #define DISABLE_PROBLEM_COMPILE_SECTIONS is used to compile out the problem
section, this define is add via the CMakeLists.txt file.
2007-09-03 13:52:19 +00:00
Robert Osfield
de19fb3737 From Ralf Kern, "the attached color mapped TIFF file klink1_l.tif is incorrectly read as
GL_LUMINANCE data instead of GL_RGB data. You can easily check with
"osgViewer --image klink1_l.tif".

The bug is in ReaderWriterTIFF.cpp function simage_tiff_load, where
numComponents_ret is incorrectly set to 1 instead of 3 for color mapped
data."
2007-09-03 10:12:26 +00:00
Robert Osfield
027158b441 From Laurens Voerman, "I hit a bug when making a copy of a PagedLOD node, the copy has lost
it's _databasePath and can no longer load it's childen. " 

Added _databasePath(plod._databasePath), in the copy copy construcutor.
2007-09-03 09:56:30 +00:00
Robert Osfield
d730559ade Fixed spacing. 2007-09-03 09:54:24 +00:00
Robert Osfield
c83bc830cd From Sherman Wilcox, "I modified texturerectangle.cpp to address this issue. I used a DXT5 DDS
file to test the change."
2007-09-03 09:50:50 +00:00
Robert Osfield
408eceac24 Updated wrapper 2007-09-03 09:47:43 +00:00
Robert Osfield
a97afbb009 Added convinience methods for setting up 3d spherical displays. 2007-09-01 16:56:53 +00:00
Robert Osfield
3304646c4c Changed Font's mutex to become a static mutex shared between all instances of Font.
This ensures single threaded access of the freetype plugin.
2007-09-01 15:24:22 +00:00
Robert Osfield
13faad13e8 Changed mutex reference to a mutex pointer to avoid problems with wrappers 2007-08-31 20:30:45 +00:00
Robert Osfield
76063a94bd Updated wrappers 2007-08-31 20:21:45 +00:00
Robert Osfield
5ae1eb711a To solve creations with multi-threaded creation of text, added mutex to Font, and use of this mutex in Text, and added mutex to the reading
of fonts.
2007-08-31 20:16:02 +00:00
Robert Osfield
86e998f64c Added mutex locking add addParents/removeParents in Drawable, Node and StateSet. 2007-08-31 20:14:36 +00:00
Robert Osfield
1bc6d0bae4 Added mutex to protect the readFontFile calls 2007-08-31 18:56:22 +00:00
Robert Osfield
4ba3f3c1a1 Changed RenderLeaf and StateGraph so that they use ref_ptr<> by default for Drawable and StateSet. 2007-08-31 16:05:24 +00:00
Robert Osfield
99f6865d4d From Luigi Calori, fixed Windows install of wrappers 2007-08-31 15:49:17 +00:00
Robert Osfield
817f316e2a From Luigi Calori, added support for Win32 versioning/new buid placement. 2007-08-31 11:04:06 +00:00
Robert Osfield
f4d2d1241d Further work on osgTerrain::Locator and GDAL plugin 2007-08-30 19:26:52 +00:00
Robert Osfield
b0f21e9a39 From Luigi Calori, add osgText to geo plugin build 2007-08-30 12:18:45 +00:00
Robert Osfield
4328bdacc2 From Luigi Calori, introduction of versioning of dll's and placement of dll and plugins into bin directory during build. 2007-08-30 10:41:15 +00:00
Robert Osfield
712dbacda3 Updated wrappers 2007-08-30 10:17:34 +00:00
Robert Osfield
667be8bb57 Further refinement of ProxyLayer API 2007-08-30 10:15:35 +00:00
Robert Osfield
9a9ffbe229 Further work on new ProxyLayer 2007-08-29 16:29:05 +00:00
Robert Osfield
2f895b839e Added ProxyLayer support into osgTerrain plugin 2007-08-29 12:18:41 +00:00
Robert Osfield
63c283ad03 Added support for post fixing filenames with .gdal to force use of gdal plugin. 2007-08-29 11:51:22 +00:00
Robert Osfield
71e7a65cca Added preliminary ProxLayer and DataSetLayer in GDAL plugin to aid integration
of GDAL reading into osgTerrain.
2007-08-29 10:52:03 +00:00
Robert Osfield
f6650dd3bf Changed the error code reporting to use hex to match up with freetype headers 2007-08-28 16:12:10 +00:00
Robert Osfield
a98daccd03 Improved formatting. 2007-08-28 15:35:24 +00:00
Robert Osfield
bf8f2eec85 Removed the OSG_INCLUDE 2007-08-28 15:35:09 +00:00
Robert Osfield
5b1b648ef5 Replaced CartesianLocator and EllipsoidLocator by a single general purpose
Locator class
2007-08-27 16:59:51 +00:00
Robert Osfield
020d7a5651 Added support for controlling the draw order on Cameras on each GraphcisContext
via the Camera::setRenderOrder parameters
2007-08-27 13:29:09 +00:00
Robert Osfield
5ce34fd7f3 Cleaned up the getRotate implementation selection using #defines, and made the
COMPILE_getRotate_David_Spillings_Mk1 the default.
2007-08-27 10:00:09 +00:00
Robert Osfield
cb5fb828d0 From Jan Ciger, warning fixes 2007-08-26 10:27:31 +00:00
Robert Osfield
06a0ca8d06 From Jean-Sebastien Guay, fixed comment 2007-08-26 10:24:18 +00:00
Robert Osfield
8a4db98e2b Change char* to const char* to fix warnings 2007-08-26 09:59:39 +00:00
Robert Osfield
b2d131c143 Updated wrappers, and change Renderer so that private: to proteccted:. 2007-08-26 09:46:49 +00:00
Robert Osfield
f9ab446512 Changed debug comments to output to notify level and tweaked the handling of the .terrain file. 2007-08-24 19:16:35 +00:00
Robert Osfield
09f63eebbb Added support for reading a .osg style data from a file string when trailed by a .osgs extension i.e.
osgviewer "osgTerrain::Terrain { ElevationLayer { CartesianLocator 0 0 1000000 1000000 Image ps_height_512.tif } ColorLayer { CartesianLocator 0 0 1000000 1000000 Image ps_texture_1k.tif } }".osgs
2007-08-24 19:16:02 +00:00
Robert Osfield
b0bede80c5 Added writing out of Terrain, Layer and Locators, and reading in of .terrain string. 2007-08-24 18:48:26 +00:00
Robert Osfield
a981202953 Set the debug out to info notification level 2007-08-24 16:16:08 +00:00
Robert Osfield
1273c814d1 Added better handling of OSG_TEXT_INCREMENTAL_SUBLOADING env var. 2007-08-24 16:12:22 +00:00
Robert Osfield
9489eef1cf Added default disabling of incremental subload for ATI cards. 2007-08-24 16:10:43 +00:00
Robert Osfield
056a9bc491 Added support for setting DatabasePager thread priority via OSG_DATABASE_PAGER_PRIORITY. 2007-08-24 14:00:44 +00:00
Robert Osfield
54202aae0d Cleaned up the thread priority management in DatabasePager and added
support for paging stats.
2007-08-24 13:33:35 +00:00
Robert Osfield
cc6ac2704e Added setting of block into the ThreadSafeQueue's contructor. 2007-08-24 10:58:08 +00:00
Robert Osfield
9a73a3f461 Made plugin build names lowercase 2007-08-23 16:56:06 +00:00
Robert Osfield
85ef819827 Changed the plugin name to openflight instead of OpenFlight to avoid problems
with osgDB looking for just lower case plugin names
2007-08-23 16:33:39 +00:00
Robert Osfield
a3ce9f680a From Stephan Huber, fix for crash on exit 2007-08-23 14:35:04 +00:00
Robert Osfield
6827104532 From Galen Faidley," Please find attached the modifications to get the new checkerboard
stereo format to work.  It's a good thing I tested these on a TV
before submitting them since I did indeed have a bug.  One thing I
did not test was to see how this would work in windowed mode.  Does
the interlaced stereo code have support for 'absolute' positions?
For example a given pixel on the screen is always shown in a given
eye no matter where the graphics context is placed?
"
2007-08-23 14:31:23 +00:00
Robert Osfield
616f64cf2c From Jean-Sebastien Guay,"As discussed yesterday on the osg-users list, I have altered
src/osgDB/FileUtils.cpp to implement the official Windows DLL search
order as described on the page
http://msdn2.microsoft.com/en-us/library/ms682586.aspx . As mentioned,
the search order is now:
    1. The directory from which the application loaded.
    2. The system directory. (C:\Windows\System32 by default, gotten using the
       GetSystemDirectory function)
    3. The 16-bit system directory. (C:\Windows\System by default, gotten by
       adding "\System" to the path gotten in the next step...)
    4. The Windows directory. (C:\Windows by default, gotten using the
       GetWindowsDirectory function)
    5. The current directory. (".")
    6. The directories that are listed in the PATH environment variable. (as
       before)

The first four directories are obtained using Win32 API calls, so they
should work correctly even on non-standard Windows installs.

The changes are well commented and should be clear, even to someone
not familiar with the Win32 API.

I have tested in a few scenarios and it works as expected. Serge Lages
has also tested the changes and confirmed they worked as described. I
have not had any other reports though (positive or negative).

I also fixed the issue with a trailing semicolon on the PATH adding an
empty string to the end of the search paths, as this was an
inconsistent side effect rather than a desirable effect. This change
will take effect on other platforms as well, but since it tests for an
empty string in the last item added to the search paths, it should
have no adverse effect.
"
2007-08-23 14:10:31 +00:00
Robert Osfield
a86c3dd314 Updated wrappers 2007-08-23 11:06:16 +00:00
Robert Osfield
f8ac71d7e5 Addd control for serializing draw dispatch. 2007-08-23 11:00:12 +00:00
Robert Osfield
bdb2a6b9d7 From Jean-Sebastien Guay, "After a bit more testing, it was still not 100% robust, so this fix
will bring the change in line with what is done on other OSes (Linux)
and works in all tested cases.

For reference, this was tested with:

osgviewer <file>.wrl                (file in current directory)
osgviewer <dir>\<file>.wrl          (file in child directory, relative)
osgviewer .\<dir>\<file>.wrl        (file in child directory, specify current)
osgviewer <drive>:\<dir>\<file>.wrl (absolute path)
"
2007-08-22 19:31:58 +00:00
Robert Osfield
f6d342af6f Updated wrappers 2007-08-22 19:26:25 +00:00
Robert Osfield
9c4fd5ec82 Updated wrappers 2007-08-22 17:18:27 +00:00
Robert Osfield
1694cf9625 Refactored the implementation of cull/draw for DrawThreadPerContex and CullThreadPerCameraDrawThreadPerContex
and added an experimental draw serialization.
2007-08-22 17:17:25 +00:00
Robert Osfield
41d15384cc Updated wrappers 2007-08-22 12:33:39 +00:00
Robert Osfield
bb7368a321 Cleaned up the thread setup and fixed the CullThreadPerCameraDrawThreadPerContext path 2007-08-22 12:21:01 +00:00
Robert Osfield
4f97cdca96 Added thread safe ref/unref by default. 2007-08-22 12:14:15 +00:00
Robert Osfield
de4a4042f7 Set main scene graph elements to use thread safe ref/unref by default 2007-08-22 10:34:11 +00:00
Robert Osfield
ef4dafaea1 Cleaned up copy constructor and switched on thread safe ref/unref. 2007-08-22 09:50:09 +00:00
Robert Osfield
5196b09672 Added debug ENFORCE_THREADSAFE paths into osg::Referenced, these are off by default. 2007-08-22 09:48:39 +00:00
Robert Osfield
bb886e8c94 Simplified the thread set up. 2007-08-22 09:46:38 +00:00
Robert Osfield
94db040884 Added thread safe ref/unref 2007-08-22 09:45:20 +00:00
Robert Osfield
7f43f55a44 Added debug message to destructor 2007-08-22 09:44:55 +00:00
Robert Osfield
94af61ed01 Added setting of thread safe ref/unref. 2007-08-22 09:43:24 +00:00
Robert Osfield
57a18ff112 Added default setting of use of thread safe ref/unref. 2007-08-22 09:42:27 +00:00
Robert Osfield
c1dc079f56 Added missing clear() implementation 2007-08-21 09:32:16 +00:00
Robert Osfield
5e7a7f6b3c Updated version number for 2.1.6 release and updated wrappers 2007-08-20 09:28:03 +00:00
Robert Osfield
cde5e45ac7 From Antione Hue and Robert Osfield, moved prepend in front of lib entry. 2007-08-19 19:22:14 +00:00
Robert Osfield
9d0e273a15 Changed ++_modifedCount cases to dirty(). 2007-08-17 09:37:49 +00:00
Robert Osfield
ffc8123a73 Changed the tolower of the file extension into the plugin name construction code.
Added support for CompositeLayer.
2007-08-16 18:49:46 +00:00
Robert Osfield
3c82058c68 Updated wrappers 2007-08-16 15:29:50 +00:00
Robert Osfield
2f41234793 From Maria Ten, "I divide the init method of the
geometrytechnique in submethods to made more easy the inheritance
between the user and osg-class. This is a first step to add more
functions in osgTerrain. Maybe the subdivision of the method have to
be in the terraintechnique because is the base class of
GeometryTechnique. If Robert or anyone think that this is better i
change this class too."
2007-08-16 14:13:10 +00:00
Robert Osfield
65ecea4e4a From Jan Ciger, "I am attaching a little hack from Jean-Sebastien Guay which allows
absolute paths to work on Windows."
2007-08-15 15:11:48 +00:00
Robert Osfield
fe66501c47 From Stephan Huber, "the softshadowmap-implementation does not compile on os x, to be more
precise, the shader does not compile on os x because of some
type-conflicts ala "can not convert from const int to const float"

So I changed the offending lines to force the type of the vars. It works
now on OS X (albeit very slowly, 3fps on a 7300), perhaps you find the
changes useful. Note: perhaps there is a better way in shaders to
cast/convert from int to float and viceversa."
2007-08-15 15:07:56 +00:00
Robert Osfield
57e7aa31fa From Brede Johansen, "The attached file updates the framestamp and traversal number of the
updatevisitor in osgViewer::Viewer.

The bug prevented DOF animations because osgSim::DOFTransform checks
the traversal number before doing any updates."
2007-08-15 15:03:26 +00:00
Robert Osfield
9291d9699f Changed the plugin name to lower case to be consistent with the way that osgDB::Registry
searches for only lower case plugin names.
2007-08-14 17:13:54 +00:00
Robert Osfield
17521f338a Added string to keyword map parser. 2007-08-14 17:04:27 +00:00
Robert Osfield
e4e89101b6 Replaced uint with unsigned int 2007-08-14 08:41:43 +00:00
Robert Osfield
21f65054a0 From Jan Ciger, "I am attaching an improved version of the OpenVRML plugin. It still uses
OpenVRML 0.14.3 and is without the Boost dependency.

The changes:
- - Fixed loading of textures and normals when no corresponding indices
are specified. It uses vertex indices now, compliant with the VRML spec.
- - Added colour per vertex support.
- - Added group node support.
- - Changed the code to use osg::ref_ptr instead of naked pointers to
avoid memory leaks.
- - Fixed breakage for loading files specified by relative path."
2007-08-13 10:27:35 +00:00
Robert Osfield
4c443bf843 From Brad Christiansen, "I added the ability to set the render target implementaion on the
osgSim::OverlayNode. The attached changes were made against the 2.0
release."
2007-08-13 10:17:18 +00:00
Robert Osfield
60a62b11df Updated wrappers 2007-08-12 13:30:00 +00:00
Robert Osfield
932608f804 From Bruno Hebelin,
"I have adapted to osgShadow the soft shadow map technique described in  "Efficient Soft-Edged Shadows Using Pixel Shader Branching" by Yury Uralsky, Chapter 17 of GPU Gems 2 (Matt Pharr ed. Addison-Wesley).

Here is my code in attachment: basically, it works in the same way as osgShadow/ShadowMap (core code is copied from it) but implements a specific GLSL shader for the soft rendering of penumbra.

I have tested it under Linux with a NVidia graphic card, but there should be no dependency on platform nor on the graphics driver (as far as they support GLSL 2). Screenshots attached show the current results (frame rate bound to v-sync, but the shader takes actually not much time)."
2007-08-12 12:12:55 +00:00
Robert Osfield
babe9f6de0 Added preprending of osgPlugins-version to plugin names 2007-08-11 17:44:06 +00:00
Robert Osfield
d57a16e023 Added DisplaySetting::s/getCompileContextHint() and use of this hint in osgViewer::Viewer/CompositeViewer.
Removed the CustomViewer in osgterrain example as the above now removes the need for it.
2007-08-11 14:49:14 +00:00
Robert Osfield
e5a365afee Added support for an update OperationQueue to Viewer and CompositeViewer to allow asyncrnous adding of operations to be added
to the view to be done during syncronous updateTraversal().

This feature can be used for doing things like merging subgraphs that have been loaded
in a background thread.
2007-08-11 10:28:14 +00:00
Robert Osfield
0e475106dc Updated wrappers 2007-08-10 17:44:54 +00:00
Robert Osfield
ece6c2f672 Updated wrappers 2007-08-10 10:58:25 +00:00
Robert Osfield
845fbf2358 Added View::setDatabasePager(..) 2007-08-10 10:57:00 +00:00
Robert Osfield
7366daca91 Refactored the way the Scene is used in Viewer and CompositeViewer to ensure
that only on Scene exists per scene graph.
2007-08-10 10:52:35 +00:00
Robert Osfield
b778fcd994 Updated wrappers 2007-08-08 09:12:02 +00:00
Robert Osfield
e3b7b2f617 Added new statc prototype() and create() methods to CullVisitor and DatabasePager to allow overriding of the default implementations 2007-08-08 08:10:38 +00:00
Robert Osfield
58db6fd81a Removed unneeeded includes 2007-08-08 05:59:01 +00:00
Robert Osfield
8f03255f71 Updated wrappers 2007-08-07 22:56:09 +00:00
Robert Osfield
1049bd2939 Updated CMakeLists.txt to reflect renaming of TerrainNode. 2007-08-07 22:31:43 +00:00
Robert Osfield
1c6193ba78 Renamed osgTerrain::TerrainNode to osgTerrain::Terrain and introduced basic
.osg read support for osgTerrain::Terrain.
2007-08-07 19:53:57 +00:00
Robert Osfield
1fc50423c6 Removed TerrainNode.cpp from CMakeLists.txt 2007-08-07 15:51:49 +00:00
Robert Osfield
0ac8f5e556 Added preliminary shell of osgTerrain plugin 2007-08-07 15:30:05 +00:00
Robert Osfield
f4b549ba8f From Luc Fruciel, "Gdal plugins reads lots of information that is not taken into account in ReadHeigthField for example.
Attached a modification that read the HeigthField position and X,Yintervals.
I also removed the limitation to 1024*1024 to 4096*4096, because when you are preprocessing your data with OSG, it can be useful to read large images/heigthfields. Is there a reason (other than hardware limitations for textures) for this limit ?"
2007-08-07 14:49:37 +00:00
Robert Osfield
b34c3e3ba2 Re-introduceed GDAL plugin 2007-08-07 10:37:42 +00:00
Robert Osfield
2ec9fa7ea9 Re-introduced GDAL plugin. 2007-08-07 10:33:25 +00:00
Robert Osfield
eecd3e9257 From Andy Skinner, The attached file adds #include <stdlib.h> to GraphicsContext.cpp, so that it compiles with the solaris compiler we use. 2007-08-07 08:18:15 +00:00
Robert Osfield
3eb6e67bfa Updated ChangeLog, and AUTHORS file for release 2007-08-06 11:50:40 +00:00
Robert Osfield
81986f4387 Changed debug message to INFO level 2007-08-06 09:28:28 +00:00
Robert Osfield
0cad7018a6 Added support for enabling the stencil buffer when horizontal and vertical split stereo are used. 2007-08-05 17:06:16 +00:00
Robert Osfield
175bb58b58 From Tim More, "This patch causes GraphicsWindowX11 to not send key release events when a key
press / release is caused by auto-repeat. This is consistent with Windows and Mac
behavior, as well as other toolkits such as SDL."
2007-08-05 14:59:17 +00:00
Robert Osfield
4c3a13c3a1 From Andy Skinner, fixes for avoiding warnings about mixing c and c++ versions of c libs. 2007-08-05 14:51:56 +00:00
Robert Osfield
6d0f828524 Disable the selection of CullPerCameraDrawPerContext until I am able to fix this
threading model
2007-08-04 17:04:37 +00:00
Robert Osfield
f528ba8937 From John Shue, "Recent changes to sockstream.cpp and sockinet.cpp to better deal with
various operating system differences between socklen_t and int have
broken the FreeBSD build.  Change was to add __FreeBSD__ to the list of
defines that are checked."
2007-08-04 10:30:04 +00:00
Robert Osfield
2ab30dd1b8 Updated wrappers 2007-08-03 16:08:36 +00:00
Robert Osfield
9b9e4cd7c8 Added perlimnary support for reading the DISPLAY variable. 2007-08-03 14:50:58 +00:00
Robert Osfield
cb6640a65e Changed the projection matrix resize policy. 2007-08-02 16:23:40 +00:00
Robert Osfield
c346f5b943 Introduce new osgViewer::Renderer class for implementing of the rendering
of cameras in viewers
2007-08-02 11:02:47 +00:00
Robert Osfield
1b36cfc928 Added save and restoring of the cull mask to Camera handling code 2007-08-02 08:50:39 +00:00
Robert Osfield
8fa79e8c7e Ported across Viewer's to use osgUtil::GLObjectOperation, added second option
in GLObjectOperation to handle cases when no subgraph is registered, in these
case the code now compile all Camera subgraphs.
2007-07-30 10:52:37 +00:00
Robert Osfield
59d3e0ceb7 From Andy Skinner, adding C includes to avoid issues when mixing C and C++ standard includes 2007-07-28 10:44:03 +00:00
Robert Osfield
6dec61842d Introduce Camera::s/getRenderer(). 2007-07-28 10:28:40 +00:00
Robert Osfield
f38be8c7a8 From David Callu, "After the mail of Emmanuel Roche to convert a void * in a known pointer (for example osg::Geode *), I has searched an elegant way to introduce this feature.
I just add ReinterpretCastConverter in the Reflector to convert void* in T* and T* in void*
    

    files joint :

        OpenSceneGraph/include/osgIntrospection/Reflector       // modified file
        OpenSceneGraph/src/osgIntrospection/Reflector.cpp      // modified file

"
2007-07-27 17:16:18 +00:00
Robert Osfield
5faeead2c6 From Bryan Thrall, added copying of boundingbox callback to copy constructor. 2007-07-27 17:14:51 +00:00
Robert Osfield
3d9d666b02 From Stephan Huber, added reset of _currentContext when graphics context is closed. 2007-07-27 17:07:44 +00:00
Robert Osfield
2faf38f68f From Stephan Huber, "attached you'll find a fix for the dead locks when closing a window
under OS X."
2007-07-27 16:48:31 +00:00
Robert Osfield
1b9fac45e1 From Thibault Genessay, "Attached is an unitialized variable fix I spotted with Purify. The _currentCursor (of type HCURSOR) member of the graphics window was not properly initialized, causing potential problems if setCursor() was called before anything else set it." 2007-07-26 19:31:41 +00:00
Robert Osfield
c7821ddfe3 From Parag Chaudhur, "In daeRMaterials.cpp in the COLLADA plugin, in the processTexture function, Lines 519-522
of the source file:

The "delete [] path" appears before the "osg::notify", causing the data pointed to by
"filename" to be deleted before access causing an access violation.

...

I have put a comment on
line 521 where I have moved the "delete []path" below.
"
2007-07-25 10:12:45 +00:00
Robert Osfield
6b4e2fbdf2 From Alexandre Amalric, Fox example
From Robert Osfield, CMake build support for FOX example
2007-07-24 14:02:53 +00:00
Robert Osfield
9394238720 From Andy Skinner, addition of standard c library includes to avoid issues with using STLport on some platforms. 2007-07-23 20:10:13 +00:00
Robert Osfield
952e644016 Converted tabs to four spaces 2007-07-23 20:08:16 +00:00
Robert Osfield
3740052c23 Updated wrappers 2007-07-23 18:19:02 +00:00
Robert Osfield
4a0a45ad92 From Mathias Froehlich, compile fix for OSX. 2007-07-23 18:13:16 +00:00
Robert Osfield
3eae87854b Added FlushDeletedGLObjectsOperation. 2007-07-23 16:42:25 +00:00
Robert Osfield
ff267d1ad6 Added support for using the CompileContext to do GL object deletion. 2007-07-22 20:33:20 +00:00
Robert Osfield
e8eec312a1 Updated wrappers 2007-07-19 16:42:36 +00:00
Robert Osfield
5ec2969330 Added setting of ThreadSafeRefUnref to true. 2007-07-18 16:48:25 +00:00
Robert Osfield
8c60ea437f Commented out debug messages 2007-07-18 16:14:59 +00:00
Robert Osfield
de69a4a3d8 Added call to State::initializeExtensionsProcs() to prevent crashes before
these variables are initialized.
2007-07-18 14:54:27 +00:00
Robert Osfield
51e07f1e66 Added traverse method implementation into GeometryTechnique. 2007-07-17 17:36:44 +00:00
Robert Osfield
04c1dee7a2 Fixed GraphcicsContext::getMaxContextID so it properly returns the current max contextID.
Fixed the osgviewer's compile context code to account for the above fix.

Added compile context support into osgterrain example.
2007-07-17 10:54:17 +00:00
Robert Osfield
06ad036da1 Updated wrappers 2007-07-14 17:16:09 +00:00
Robert Osfield
1f0edca631 Added support into osg::RenderInfo for a stack of Cameras that allow querries
of which camera is currently active to be querried from within the draw traversal.
2007-07-14 17:07:59 +00:00
Robert Osfield
af19e71024 Changed BarrierOperation so that it isn't limited to jut working within GraphicsContexts. 2007-07-14 09:17:18 +00:00
Robert Osfield
f7ce35c5ee Converted Operations to GraphicsOperations where apporpriate. 2007-07-13 19:24:50 +00:00
Robert Osfield
0a58c6e280 Removed all the plugins BUILD_OSG_* options as these just get in the way of
browsing standard CMake options.
2007-07-13 19:22:09 +00:00
Robert Osfield
a28588a84c Introduce GraphicsOperation subclass from osg::Operation, and osgUtil::GLObjectOperation
for compiling subgraphs.
2007-07-13 17:25:35 +00:00
Robert Osfield
65156475f6 Updated wrappers 2007-07-13 11:49:16 +00:00
Robert Osfield
ee470f2445 From Mathias Froehlich, "This patch removes the X11/Xmu/WinUtil.h header from GraphicsWindowX11.cpp.
That one is not used and appears not to be present on every platform we
compile on."
2007-07-13 11:42:02 +00:00
Robert Osfield
b1f943cef8 From Mathias Froehlich, "This change makes the net plugin compile on hp-ux.
It tries to unify some partly ugly ifdefs in the socket classes.
The change is also tested on a solaris 8, irix 6.5 and suse 9.0 machine."
2007-07-13 11:39:40 +00:00
Robert Osfield
14ab33cc29 Updated wrappers 2007-07-13 11:22:44 +00:00
Robert Osfield
b2535d55c6 Introduced new GUIEventAdatper singleton for sharing the current state between
multiple GraphicsWindows, this singleton is accessable via GUIEventEvent::getAccumulatedEventState().

Added use of this new singleton in GraphicsWindow* implementations.

Added WindowSizeHandler to osgkeyboard to help with debugging of event state
between windows.
2007-07-13 11:17:41 +00:00
Robert Osfield
03749d5e34 Removed redundent TerrainGeometry classes, and adding double buffer of
internal data within GeometryTechinque in prep for support multi-threaded
set up and rendering of terrain.
2007-07-12 20:12:38 +00:00
Robert Osfield
ecf0b58a19 Renamed include/osg/OperationsThread to OperationThread.
Created a new GraphicsThread subclass from OperationThread which allows the
GraphicsContext specific calls to be moved out of the base OperationThread class.

Updated the rest of the OSG to respect these changes.
2007-07-12 15:54:45 +00:00
Robert Osfield
4d7e8b12ae Renamed OperationsThread to OperationThread and add two way link between OperationQueue and OperationThread 2007-07-12 12:15:42 +00:00
Robert Osfield
35435c3146 Updated wrappers 2007-07-11 16:06:24 +00:00
Robert Osfield
095da72020 Fixed typo 2007-07-11 16:06:04 +00:00
Robert Osfield
691a49d0fa From Paul Melis, fixes to spelling mistakes/typos. 2007-07-11 15:51:17 +00:00
Robert Osfield
bdc8a72aae From Andre Garneau, minor warning fixes 2007-07-11 15:30:14 +00:00
Robert Osfield
b93539ee09 Added setting of the Scene's FrameStamp on each CompositeViewer::updateTraversal() call to fix animation path issue. 2007-07-11 13:48:41 +00:00
Robert Osfield
0d38a66bbb Added OperationsThread 2007-07-10 19:29:11 +00:00
Robert Osfield
6a9551ebfb Wired up OperationsThread to use the new OperationQueue and thereby support
thread pooling where multiple OperationsThreads share a single OperationsQueue
2007-07-10 17:36:01 +00:00
Robert Osfield
44c07b9fad Separated OperationsThread out from the GraphicsThread header and introduced
new OperationQueue class.
2007-07-09 19:04:36 +00:00
Robert Osfield
4d04f3f645 Fixed unitialized variables. 2007-07-09 15:02:03 +00:00
Robert Osfield
c407866f30 Added OpertionQueue 2007-07-09 11:05:04 +00:00
Robert Osfield
e8f8c0c147 Updated wrappers 2007-07-09 10:48:32 +00:00
Robert Osfield
f70b6d0993 Improved the consistency of setting of rotation and auto rotate modes in setAxisAlingment method 2007-07-09 10:47:06 +00:00
Robert Osfield
a4499b482b Fixed missinged intialization of the _threadsRunning variable. 2007-07-09 10:12:37 +00:00
Robert Osfield
7099068914 From Jean-Sebastien Guay and Jan Ciger, added search path can improved handling of backslashes/forward slashes 2007-07-07 16:05:05 +00:00
Robert Osfield
4c379a2848 Updared wrappers 2007-07-06 20:00:11 +00:00
Robert Osfield
50ec07b734 Added include of DeleteHandler 2007-07-06 16:54:45 +00:00
Robert Osfield
2b84aa7760 Added dirty count support to osgTerrain::Layer clases.
Added LayerHandler to osgterrain example that modifies the layers in 
response to pressing the 's' and 'q' keys
2007-07-06 16:47:08 +00:00
Robert Osfield
c4c165099c From Jea-Sebastien Guay and Robert Osfield, build fixes for Windows 2007-07-06 14:07:59 +00:00
Robert Osfield
9e2fe92ef1 From Rudolf Wiedemann, "I need to link OpenSceneGraph statically to my application, so I
completed the new registration of the plugin-readerwriters
("REGISTER_OSGPLUGIN") according to your osgstaticviewer-example (see
attachment, based on today's svn)."
2007-07-06 13:54:26 +00:00
Robert Osfield
a7de33ee55 From Brede Johansen, "Attached is a fix that returns a default color (white) if an invalid
index to the color palette is used."
2007-07-06 13:33:40 +00:00
Robert Osfield
6931ae4878 Added include/osg/GLObjects + .cpp which provide osg::flush*DeletedGLObjects() methods.
Added and cleaned up DeleteHandler calls in osgViewer to help avoid crashes on exit.

Changed DatabasePager across to dynamically checcking osg::getCompileContext(..)

Updated wrappers.
2007-07-06 13:08:51 +00:00
Robert Osfield
a484b95d3c Added #include<algorithm> 2007-07-06 09:06:37 +00:00
Robert Osfield
dedc99f036 Updated wrappers. 2007-07-05 18:41:54 +00:00
Robert Osfield
d1fa520349 Added support for managing a CompileContext. Rearranged the DeleteHandler::flushAll call. 2007-07-05 18:33:20 +00:00
Robert Osfield
5aa3db15a3 Improved the computation of the side vector 2007-07-05 18:30:57 +00:00
Robert Osfield
601217025f Improved the mapping of update and cull traversal 2007-07-05 18:30:20 +00:00
Robert Osfield
0434d29ad4 From Adndre Garneau, "Attached is a fix to prevent a cursor being shown in graphics windows when
traits specify that none should be used (a recent change forced a
left-pointer cursor as the default). "
2007-07-05 10:57:34 +00:00
Robert Osfield
70bbb06dd5 Commented out "fix" that explictly sets the key modifier state as this change
actually broke the key modifier state management.
2007-07-05 10:51:47 +00:00
Robert Osfield
7f0b3144ea Added checking of GUIEventAdpter::getHandled(). 2007-07-03 13:26:48 +00:00
Robert Osfield
e7d7c1dcc2 Changed the way that computeNearFar is computed to avoid inconsistencies when in stereo mode 2007-07-02 13:17:47 +00:00
Robert Osfield
1522002b47 Updated wrappers 2007-07-02 13:16:54 +00:00
Robert Osfield
e5a6b1a834 From Csaba Halasz, support reading "monochrome" option string and use of monocrhome FreetType support 2007-07-02 12:43:23 +00:00
Robert Osfield
19d1a563fe From Csaba Halasz and Robert Osfield, support for passing in ReaderWriter::Options object into readFontFile 2007-07-02 12:30:14 +00:00
Robert Osfield
c7a316e445 From Mike Connell, "This is a tiny fix for win32.
The current code takes the mouse cursor position and adds it to the
window (left,top) position, and sends the mouse cursor there. But this
doesn't take into account the window decoration.

The new code converts the given (x,y) coordinates from the client area
coordinate system to the screen instead using ClientToScreen. I think
this is the natural windows way to do it.

Tested on XP with osgviewer
"

Note from Robet Osfield, made a few changes to layout to make it more consistent 
with the rest of the OSG and used #if 0 instead if (0) blocks.
2007-06-30 16:19:56 +00:00
Robert Osfield
efda16ac56 From Stephan Huber, "attached you'll find a small fix for the 3ds-plugin, so 3ds-files
exported from cinema 4d are imported correctly. It's not cinema's fault,
because the 3ds-files show up correctly in 3dStudio Max."
2007-06-30 15:40:23 +00:00
Robert Osfield
3873f50214 Updated wrappers 2007-06-30 14:30:55 +00:00
Robert Osfield
bb94377f20 Added balancing of stack size on entry/exit from rendering nested camera. 2007-06-30 14:30:12 +00:00
Robert Osfield
c80313ccd0 From David Callu,
"
Found in the join file the fix for the bug found by Rafa.


    Problem :

        osgIntrospection::Value grp(new osg::Group);

        osgIntrospection::ValueList vlcall;
        vlcall.push_back(osgIntrospection::Value("toto"));

       const osgIntrospection::MethodInfo *m =
grp->getType.getCompatibleMethod("setName", vlcall, true);

       if (m)
       {
            m->invoke(grp, vlcall);      // ** SEGFAULT here
       }





    Algorithm explanation :

          The "invoke" method try to convert "grp", which reflect an
"osg::Group*", in a
          "osgIntrospection::Value", which reflect a "osg::Node*".
This because
          the "setName(const char *)" method found by
"grp->getType.getCompatibleMethod"
          is an "osg::Object" type method.

          When osgIntrospection do this conversion it try :
             - to found a "osgIntrospection::Converter"  to convert
               from "osg::Group*" to "osg::Node*"
             - to found a chain of "osgIntrospection::Converter" to convert
               from "osg::Group*" to "one or many type" to "osg::Node*"
             - to converte an Enum to int or unsigned int
             - to convert the value in its "value string representation",
               then converte this string in the destination value

          Else it throw a "TypeConversionException".







     Bug :

          1)
          When osgIntrospection try to found a chain of
"osgIntrospection::Converter"
          It could do any downcast or (Type to SuperType) or upcast
(SuperType to Type).
          This mean the the chain could be :
          osg::Group to osg::Transform to osg::Camera to
          osg::CullSettings to osg::CullStack to
osg::CollectOccludersVisitor to
          osg::NodeVisitor to osg::Referenced to osg::Object

         During the convertion with this chain, A METTRE failed and
the pointer in
         "grp" is set NULL. But the "grp" is always a valid
"osgIntrospection::Value"
         and so, osgIntrospection accept the conversion. Then it try
to use this pointer
         to call the "setName" function. And Bing SEGFAULT.


         2)
             In "bool Reflection::accum_conv_path( ... )"
             the convection path isn't accumulate in the recursive loop.
             this cause multi request of a conversion path, and a
slowdown in the
             conversion algorithm.

         3)
             Use of the last conversion way in a conversion from
pointer to pointer
             this mean you can do this :
             "osg::Node*" to " value string representation" to "osg::Material*"
             What a bad thing !!!




    Solution :

         1)
          Introduce the concept of dynamic_cast and static_cast.
          now, to do a conversion, osgIntrospection does this :

             - to found a "osgIntrospection::Converter"  to convert
               from "osg::Group*" to "osg::Node*"
             - to found a chain of "osgIntrospection::Converter" to convert
               from "osg::Group*" to "one or many type" to "osg::Node*"
               only with static_cast, downcast (Type to SuperType)

             - to found, if the source and the destination are two pointer,
               a chain of "osgIntrospection::Converter" to convert
               from "osg::Group*" to "one or many type" to "osg::Node*"
               only with dynamic_cast, upcast (SuperType to Type)

             - to convert an Enum to int or to unsigned int
             - to convert the value in its "value string representation",
               then convert this string in the destination value

          Else it throw a "TypeConversionException".


          Add the "enum CastType" to distinguish the static_cast or
dynamic_cast converter.
          Add file OpenSceneGraph/include/osgIntrospection/CastType

         2)
         add a line to accumulate converter in converter Path.

         3)
         add a line to check if source and destination are pointer.
"
2007-06-30 14:21:34 +00:00
Robert Osfield
79dddef778 From Sherman Wilcox, added check for Drawable cull callbck into apply(Billboard) 2007-06-30 09:27:11 +00:00
Robert Osfield
847a7c1644 Added Point::Extension::isPointSpriteCoordOriginSupported() method 2007-06-29 17:01:37 +00:00
Robert Osfield
74af1b8351 From Paul Martz, "Attached is src/osg/CMakeLists.txt. Adding TemplatePrimitiveFunctor to the source code list for the project. This makes this header file show up in the VS IDE as part of this project, and therefore facilitates IDE searching of project-related files, as well as making other tasks easier." 2007-06-29 16:10:24 +00:00
Robert Osfield
ddc26afa16 Fixed indenting to use 4 spaces instead of tabs 2007-06-29 16:09:12 +00:00
Robert Osfield
87788c2360 From Jan Ciger, "I am attaching a fix for the COLLADA plugin on non-windows systems. The
COLLADA modules STLDatabase, LIBXMLPlugin and stdErrPlugin are
statically included in the main COLLADA library on Linux and shouldn't
be linked separately - those libraries do not exist in the default Linux
build and the compilation will fail.

Second issue - the current version of the COLLADA plugin (both current
HEAD in Subversion and the one in stable 2.0) do not work right with the
stable COLLADA DOM 1.4.1. I am getting the following error:
"
2007-06-29 16:06:52 +00:00
Robert Osfield
0ee2466f23 From Roger James, bug fix to counting of number geode with drawables 2007-06-29 16:00:53 +00:00
Robert Osfield
7d2efa886d From Brad Colbert, get/setVolume methods 2007-06-28 20:56:56 +00:00
Robert Osfield
15ff70d298 From Brad Colbert with ammendments by Robert Osfield, add set/getVolume support 2007-06-28 14:19:30 +00:00
Robert Osfield
4953e23ab5 From Trajce Nikolov, fixes to pbuffer setup 2007-06-28 12:59:04 +00:00
Robert Osfield
7a0442a388 From Nikolaus Hanekamp, added support for osg::Multisample 2007-06-28 09:51:47 +00:00
Robert Osfield
49c15572a9 From Stephan Huber, "attached you'll find a first implementation of pbuffer-support for os x.
I used osgprerender --pbuffer to test the carbon-implementation, for now
it works :)
"
2007-06-27 20:44:12 +00:00
Robert Osfield
eac3dc1963 From Paul Melis, "Here is a list of fixes to misspelled APIs. Unfortunately, more than one
of these are public APIs and therefore will break linkage to existing
shared libraries."

Note from Robert Osfield, updated wrappers.
2007-06-27 20:36:16 +00:00
Robert Osfield
64b8e3062f Added temporary reset of the RenderLeaf pointer for any internal calls to other graphics contexts. 2007-06-27 20:34:29 +00:00
Robert Osfield
14470e12c4 From Andy Skinner, fixed return value. 2007-06-27 17:01:54 +00:00
Robert Osfield
60a0e13b2a Updated wrappers 2007-06-27 11:14:40 +00:00
Robert Osfield
97ff495a9c From Rajce Nickolov, improvements to PixelBufferWin32 and GraphicsWindowWin32 2007-06-27 10:37:30 +00:00
Robert Osfield
c0a8c9dd53 Added texture format into Traits. 2007-06-27 10:12:10 +00:00
Robert Osfield
8fea401d79 Fixed target setting bug in PixelBuffer RTT set up. 2007-06-27 09:44:35 +00:00
Robert Osfield
746d916fce Reverted to using non silhouette computation. 2007-06-26 11:31:39 +00:00
Robert Osfield
1a78eb8159 Changed the RTT Camera so that it doesn't automatically recompute the near and far planes 2007-06-25 13:48:57 +00:00
Robert Osfield
350b25c49b From Trajce Nickolov, improvements to PixelBufferWin32. 2007-06-25 11:32:19 +00:00
Robert Osfield
c4b3e32436 Updated wrappers 2007-06-24 10:55:43 +00:00
Robert Osfield
1e506da145 From Trajce Nikolov, PixelBufferWin32 implementation 2007-06-24 10:18:54 +00:00
Robert Osfield
b9947a8189 Simplified decoration code and added support for reading Traits::supportsResize 2007-06-23 21:55:35 +00:00
Robert Osfield
581b1c322e Added setting of the Camera's projection matrix to fit the windowing aspect ratio. 2007-06-23 11:21:54 +00:00
Robert Osfield
1b3468413d Added ability to compile OpenGL objects via pbuffers in the DatabasePager/Viewer 2007-06-22 14:48:18 +00:00
Robert Osfield
e8a65e4cff From Trajce Nikolov, windows build fixes 2007-06-21 11:20:54 +00:00
Robert Osfield
4677fe20a7 Added dummy init method 2007-06-20 12:34:37 +00:00
Robert Osfield
1de128de27 Added placeholder for PixelBufferWin32 2007-06-20 12:29:19 +00:00
Robert Osfield
9f72c9392e Added code of support for contouring shaders 2007-06-20 12:00:29 +00:00
Robert Osfield
fadc115066 Updated wrappers 2007-06-20 11:59:53 +00:00
Robert Osfield
78b6ada743 Completed implementation of PixelBufferX11. 2007-06-20 11:59:27 +00:00
Robert Osfield
ac69f49b55 Added beginnings of osgViewer::PixelBufferX11 2007-06-19 17:12:05 +00:00
Robert Osfield
d4309ce69a Added use of GLSL filters 2007-06-18 12:10:46 +00:00
Robert Osfield
cff9188caf Fixed namespace 2007-06-15 16:08:33 +00:00
Robert Osfield
bd6a001dcc Added default values for ambientBias 2007-06-15 14:57:17 +00:00
Robert Osfield
c9513f2ec6 Removed now redundent file 2007-06-15 14:02:55 +00:00
Robert Osfield
f423c7660f Fixed handling of cases when no matrix is attached to intersections 2007-06-15 13:12:46 +00:00
Robert Osfield
08d3b13430 Added ShadowMap::s/getAmbientBias, updated NEWS and wrappers 2007-06-15 12:59:22 +00:00
Robert Osfield
314a22d553 Changed the version format. 2007-06-15 12:41:46 +00:00
Robert Osfield
4979a0ac41 Added handling of when mouse delta is too high, indicating a inconsitency in the
the events.  These changes prevent irratic high speed spinning when releasing the
mouse point in a different screen from when the mouse event started.
2007-06-15 10:12:57 +00:00
Robert Osfield
10235ad0b4 Fixed null pointer derefence bug 2007-06-15 09:29:23 +00:00
Robert Osfield
9c3ae6f3c2 Addded missing namespace 2007-06-15 08:36:35 +00:00
Robert Osfield
f61c6262f7 Included shaders directly into source, added support for toggle lighting on/off 2007-06-14 20:58:43 +00:00
Robert Osfield
97b53024d4 Fixed typo 2007-06-14 19:17:31 +00:00
Robert Osfield
60af7de2d3 Updated wrapers, changelog, README and AUTHORS files for 1.9.9 release 2007-06-13 21:15:04 +00:00
Robert Osfield
56a24486cd Updated wrappers and Version numbers for 1.9.9 release 2007-06-13 21:00:28 +00:00
Robert Osfield
a9287fe824 Added ability to set the keyboard bindings in the RecordaAnimationPathHandler 2007-06-13 20:52:07 +00:00
Robert Osfield
21033536a7 From Jeremy Moles & Robert Osfield, Added support for playback of animation paths using 'Z' key 2007-06-13 20:34:16 +00:00
Robert Osfield
8c727acddc Added new shader support 2007-06-13 19:53:48 +00:00
Robert Osfield
aab2ed9094 From John Shue, fixed typo in CMakeLists.txt 2007-06-13 19:44:56 +00:00
Robert Osfield
b8f9364cef Wired up new shaders 2007-06-13 14:05:21 +00:00
Robert Osfield
d2c16c2fa0 Added better handling of 0,0,0 values 2007-06-13 13:41:23 +00:00
Robert Osfield
29be5312a0 Added OSG_SCREEN and OSG_WINDOW env var checking in the Viewer::realize() 2007-06-13 11:09:31 +00:00
Robert Osfield
6f95508df8 Updated wrappers 2007-06-13 10:45:36 +00:00
Robert Osfield
a9a55de053 Added osgViewer::View::setUpViewInWindow(...) method and command line option into
osgViewer::Viewer to allow you to specify the window dimentions and screen for
the window on startup.
2007-06-13 10:38:40 +00:00
Robert Osfield
1625360b63 Fixed versioning 2007-06-13 10:12:55 +00:00
Robert Osfield
7016db5f26 Removed ParallelSplitShadowMap as its currently a non op. 2007-06-13 09:56:12 +00:00
Robert Osfield
3c4730bdce Updated wrappers 2007-06-12 19:46:56 +00:00
Robert Osfield
a7a0e2c4d3 Added Image::g/setOrigin to help movie plugins tell applications that the imagery
is not the usual OpenGL BOTTOM_LEFT orientation, but with the origin TOP_LEFT.  This
allows geometry setup code to flip the t tex coord to render the movie the correct way up.
2007-06-12 16:55:44 +00:00
Robert Osfield
2658819e66 UPdated wrappers 2007-06-12 15:52:13 +00:00
Robert Osfield
64c8e7c2bc From Stephan Huber, "while porting my own code to the new osgViewer I discover more and more
bugs in the Carbon-implementation of GraphicsWindow, so here's another
fix for setWindowDecorationImplementation, now updates the
titlebar-height, and fixes some display-issues when switching the
decoration on/off.
"
2007-06-12 15:38:09 +00:00
Robert Osfield
ab347eb34c Changed _data to _movieData to avoid possible confusion 2007-06-12 14:43:26 +00:00
Robert Osfield
aa970f2a30 Changed the throw dection time to 0.02 2007-06-12 09:55:40 +00:00
Robert Osfield
3eb4c3baa6 Work in progress on perspective view dependant codes 2007-06-12 08:30:41 +00:00
Robert Osfield
c7f5d96caf From Stephan Huber, "the computation of the windowtitlebar-height was wrong, attached you'll
find a fixed version for GraphicsWindowCarbon.cpp
"
2007-06-12 08:28:41 +00:00
Robert Osfield
d8a3d7aa4e Updated wrappers 2007-06-10 20:12:47 +00:00
Robert Osfield
08a793eb87 From Stephan Huber and Robert Osfield,
Stephan: "attached you'll find some modifications to the GraphicsWindow-class and
their platform-dependant implementations.

The problem:
setWindowRectangle and setWindowDecoration do not update the
traits-object, so, if you call setWindowRectangle on a
not-realized-window it will open with another size when realized later.
getWindowRectangle reports possible wrong sizes if setWindowRectangle
called before.

My solution:
split the implementation in two parts:
GraphicsWindow::setWindowRectangle will update its traits-object and
call afterwards the virtual method setWindowRectangleImplementation
(which is implemented by the derived platformspecific classess). For
setWindowDecoration I am useing a similar mechanism.

I hope you'll find the submission useful, the Win32 and X11 changes are
not tested but should work."

Changes to this made by Robert are call of resized in setWindowRectangle 
instead of setting of Traits, and use of a bool return type.
2007-06-10 19:53:18 +00:00
Robert Osfield
43790b07b3 From Vladimir Shabanov, "osg::Image::isImageTranslucent() now handles
GL_UNSIGNED_SHORT_5_5_5_1, GL_UNSIGNED_SHORT_1_5_5_5_REV,
GL_UNSIGNED_SHORT_4_4_4_4, GL_UNSIGNED_SHORT_4_4_4_4_REV,
GL_UNSIGNED_INT_10_10_10_2, GL_UNSIGNED_INT_2_10_10_10_REV and
GL_HALF_FLOAT_NV pixel formats."
2007-06-10 19:22:13 +00:00
Robert Osfield
3d918ef35f From Vladimir Shabanov, "DDS plugin now works with these formats:
R3G3B2, R5G6B5, A1R5G5B5, X1R5G5B5, A4R4G4B4, X4R4G4B4, R8G8B8 (now
without swaping of red and blue), A8R8G8B8 (also w/o swapping),
X8R8G8B8, A8B8G8R8, X8B8G8R8, A2R10G10B10, A2B10G10R10, L4A4 (not work
on my machine), L16A16, L16, A16B16G16R16, A16B16G16R16F,
Q16W16V16U16, R32F, R16F and A32B32G32R32F.

And these ones are correctly detected, but prints "unsupported" using
osg::notify(osg::WARN) and are not loaded:
A8R3G3B2, G16R16, G16R16F, G32R32F and CxV8U8.

Also added checking of not supported DDPF_BUMPDUDV (V8U8, V16U16,
Q8W8U8L8, A2W10U10V10 etc.) and DDPF_BUMPLUMINANCE (L6V5U5, X8L8V8U8,
etc.) pixel formats.

Mipmap handling is slightly modified and now support all additional formats.
"
2007-06-10 19:18:27 +00:00
Robert Osfield
b48ed1a4d4 Improved the set up of static build, added freetype plugin to plugins that support static usage 2007-06-10 09:51:29 +00:00
Robert Osfield
2532b5f06e Improved the detection of throwing of the mouse. 2007-06-09 17:58:37 +00:00
Robert Osfield
43ba59f7ec Updated wrappers 2007-06-09 10:18:28 +00:00
Robert Osfield
90ae3f385b Added DisplaySettings to osg::Camera, and support into osg::View for initializing
the Camera to the DisplaySettings ScreenWidth/Height/Distance.  Added support
for dual screen horizontal split stereo.
2007-06-09 10:06:38 +00:00
Robert Osfield
e3d7e6e173 Added debug code path that prints out font details. 2007-06-08 20:11:50 +00:00
Robert Osfield
3e8be9ac7d From Stephan Huber, "attached you'll find a new GraphicsWindowCarbon-header and .cpp, the
changes I made:

+ put a warning in the console if a nonexistant screen is requested
+ add getters for the aglcontext and pixelformat -- I need access to
them in my own code.
"
2007-06-08 11:04:30 +00:00
Robert Osfield
b4cd96ebdd From Jason Daly, "We have a few OpenFlight files that used to display properly with the
old loader, but appear very, very wrong with the new one.  I traced the
problem to the handling of the palette override flags in the external
reference records.  The current behavior for handling the palette
override flags for external references has different offsets for
different OpenFlight version (2 bytes for 14.2-15.1 and 4 bytes for 15.2
and later).  However, I believe this behavior is incorrect.

I know that the original 14.2 OpenFlight spec (dated April 1995)
specifies 2 bytes between the filename and the override flags, and the
15.4 and later specs specify 4 bytes.  However, I also found a 14.2.4
OpenFlight spec (dated January 1996) that changes the specification to 4
bytes.  Also, the databases in question were created using an old IRIX
version of MultiGen II, which wrote OpenFlight 14.2 files natively.
These files also have 4 bytes between the filename and flags.
Furthermore, these databases have always worked properly under earlier
versions of OSG, under Performer, and in every MultiGen product we've used.

This leads me to believe that the original 14.2 spec was incorrect (the
14.2.4 spec corrected this error), and there should be 4 bytes between
the filename and flags for all OpenFlight files version 14.2 and later.

The attached fix modifies the OpenFlight loader to behave in this way."
2007-06-08 10:58:22 +00:00
Robert Osfield
c8a5db6a71 Updated wrappers 2007-06-08 10:42:52 +00:00
Robert Osfield
b1909ff55a From Jason Daly, "This changes the handling of textures in the OpenFlight loader.
Currently, if the texture attribute file doesn't explicitly specify an
internal format, the loader will force it to use GL_RGB, which keeps
translucent textures (eg. GL_RGBA textures) from showing up properly.

This patch changes the default behavior to simply use the image's format
instead of forcing a particular format."
2007-06-08 10:22:44 +00:00
Robert Osfield
6bc1a940c9 Updated wrappers 2007-06-07 21:07:30 +00:00
Robert Osfield
5a8ec8f470 Commented out the Scene Stats entry as its not implemented yet. 2007-06-07 20:26:29 +00:00
Robert Osfield
4b73712f51 Added automatic stopping of animation when home() is called 2007-06-07 12:23:21 +00:00
Robert Osfield
32236ab2a4 From Per Fahlberg, "To get the pfb (Performer) plugin to compile I had to remove some of the
libraries listed under TARGET_EXTERNAL_LIBRARIES.
The removed libraries are not needed when linking the plugin, they are
loaded during runtime by Performer.
The modified file is attached."
2007-06-07 12:05:09 +00:00
Robert Osfield
3b1c5c3b96 Introduced a destruct method to help clean up the Registry. 2007-06-07 11:19:02 +00:00
Robert Osfield
9064895b91 Revert the signOrZero cade path in the getRotate() to fix bugs. 2007-06-07 11:06:40 +00:00
Robert Osfield
51d489fb97 Added View::home() method and updated wrappers 2007-06-07 09:58:49 +00:00
Robert Osfield
1d7ba27e72 Removed redundent files 2007-06-07 09:24:46 +00:00
Robert Osfield
766e58a589 Updated wrappers 2007-06-07 08:52:51 +00:00
Robert Osfield
211abb16dc Updated version numbers for release 2007-06-06 21:43:38 +00:00
Robert Osfield
3f7ffb088e Revert the setting of SingleThreaded under Windows in suggestBestThreadingModel() 2007-06-06 17:01:37 +00:00
Robert Osfield
34b4fb524d Fixed includes 2007-06-06 14:51:08 +00:00
Robert Osfield
87c9b39c98 From Roger James, "These fix a couple of problems in the ac3d writer.
1. Number of child node of the world object set incorrectly in when scene contains shape drawables.

2. Incorrect handling of line primitives."
2007-06-06 11:34:19 +00:00
Robert Osfield
36d50301cf From Olaf Flebbe, "an implementation of GraphicsWindow::setCursor for WIN32." 2007-06-06 11:28:44 +00:00
Robert Osfield
85c8797bc4 Moved HelpHandler and StatsHandler classes into ViewerEventHandlers header, removed HelpHandler and StatsHandler headers 2007-06-06 11:21:13 +00:00
Robert Osfield
118a6b3bf2 Updated wrappers 2007-06-06 11:10:44 +00:00
Robert Osfield
6844ac0209 Moved SimpleViewer from osgViewer into the osgviewerCocoa example directory as this
is the only place in the OSG that now relies upon SimpleViewer.
2007-06-06 10:58:21 +00:00
Robert Osfield
6e3c9ad3d3 Added support for passing in ArgumentParser in Viewer and CompositeViewer constructor 2007-06-06 10:57:02 +00:00
Robert Osfield
2c16c5b87d Change interator to const_iterator to try and avoid Solaris build failure 2007-06-05 14:37:55 +00:00
Robert Osfield
2b9f209765 From Per Fahlberg, "added use of the internal format specified in the OpenFlight format attr files." 2007-06-05 11:18:28 +00:00
Robert Osfield
a1e436d9e7 From Jeremy Moles and Rbert Osfeild, added extra details about CMake build options. 2007-06-04 20:32:15 +00:00
Robert Osfield
1f2cfa91c3 Warning fix 2007-06-04 15:05:59 +00:00
Robert Osfield
3bc90a837e From Roger James, "Here are my fixes for transparency in the Collada DAE reader." 2007-06-04 11:47:05 +00:00
Robert Osfield
a1fc3e63a8 From Martin Lavery and Robert Osfield, added use of hardwarded value kCGLCEMPEngine
to fix build failure on slightly older versions of OSX.
2007-06-04 11:14:17 +00:00
Robert Osfield
3ec3bf1679 Updated wrappers 2007-06-04 10:56:01 +00:00
Robert Osfield
448efe0722 Added osg::Hint class 2007-06-04 10:47:15 +00:00
Robert Osfield
a9d9d387df Fixed spelling of Receives 2007-06-04 08:38:11 +00:00