Compare commits

..

536 Commits

Author SHA1 Message Date
Robert Osfield
27c7db56de Fixed version number in packaging 2008-04-26 11:19:19 +00:00
Robert Osfield
d61306fa72 Release OpenSceneGraph-2.4.0 2008-04-25 13:13:14 +00:00
Robert Osfield
0f9431c8c6 Update AUTHORS file for 2.4 release 2008-04-25 13:10:05 +00:00
Robert Osfield
d6d2590f18 Updated ChangeLog for 2.4 release 2008-04-25 12:58:07 +00:00
Robert Osfield
ab424ae749 Update NEWS and README to 2.4 stable release 2008-04-25 12:40:14 +00:00
Robert Osfield
9e725b438e Updated Version number for 2.4 stable release 2008-04-25 09:46:25 +00:00
Robert Osfield
765a7d2455 From Stephane Lamoliatte, "Here is the fix of a very little typed error in BoundingBox : I replace "doulbe" by "double"." 2008-04-25 09:35:51 +00:00
Robert Osfield
e70d44e6a5 Added cast to avoid warning 2008-04-25 08:34:54 +00:00
Robert Osfield
da92e3b842 Updated date of 2.4 release 2008-04-24 16:50:17 +00:00
Robert Osfield
93f6505b12 Updated AUTHORS file for release 2008-04-24 16:49:52 +00:00
Robert Osfield
2b488ab8fc Updated ChangeLog for 2.3.11 release 2008-04-24 16:48:59 +00:00
Robert Osfield
53630a2b14 From Wojchiech Lewandowski, add missing setDataVariance(DYNAMIC) and extra event handlers 2008-04-24 16:24:16 +00:00
Robert Osfield
6883c12ceb From Colin Dunlop, added alias for .live to quicktime plugin mapping. 2008-04-24 14:46:21 +00:00
Robert Osfield
78964b4baa Reverted the changes for ill fated tweaks for Apple build 2008-04-24 11:34:43 +00:00
Robert Osfield
bcee43bf44 From Mattias Helsing, "I just made Find3rdPartyDependencies search for curllib if it can't
find libcurl. Mike's 3rdParty only has curllib.

I realize now that the in appended file I have earlier removed
searching for freetype219 since I have it but it will break the build
of osg."
2008-04-24 10:09:04 +00:00
Robert Osfield
66d3830223 Updated authors file for 2.3.11 release 2008-04-23 21:07:54 +00:00
Robert Osfield
704ad1c78a Updated ChangeLog 2008-04-23 21:07:16 +00:00
Robert Osfield
1bd8bb9b00 Updated version number 2.3.11 2008-04-23 20:54:28 +00:00
Robert Osfield
8ae30c9bfc Refactored the inclusion of the headers in the ADD_LIBRARY so that they aren't
added under OSX.
2008-04-23 20:50:53 +00:00
Robert Osfield
77b98eb5f8 Removed the mutable from the _image variable 2008-04-23 20:49:19 +00:00
Robert Osfield
a59e93a0df Added mutex to object creation to avoid a race condition when using threaded multiple graphics context 2008-04-23 14:10:41 +00:00
Robert Osfield
5c08b0ccb0 Added return. 2008-04-22 14:31:30 +00:00
Robert Osfield
448cd50546 From Stephan Huber, "the support for the new mightymouse and new touchpads was incomplete in GraphicsWindowCarbon. Attached is a fixed version." 2008-04-22 14:15:24 +00:00
Robert Osfield
a802c4c40a Updated AUTHORS file 2008-04-22 13:00:52 +00:00
Robert Osfield
7bbb10203f Updated ChangeLog, NEWS and READE for 2.3.10 pre release of 2.4. 2008-04-22 12:52:35 +00:00
Robert Osfield
221b2a3c01 Updated version number for 2.3.10 dev release 2008-04-22 11:47:17 +00:00
Robert Osfield
fffe558e9a Updated wrappers 2008-04-22 11:41:03 +00:00
Robert Osfield
234bfeb648 Removed hardware down sampling hack from GeoemtryTechnique and replaced with Terrain::g/setSampleRatio()
usage.
2008-04-22 11:39:47 +00:00
Robert Osfield
37bea2727b Updated authors 2008-04-22 10:10:24 +00:00
Robert Osfield
684920c46c Fixed name 2008-04-22 09:43:55 +00:00
Robert Osfield
9878a0e3ca Updated NEWS for 2.4 release 2008-04-21 16:31:54 +00:00
Robert Osfield
e14574cbb2 From Luigi Calori, Added CURL_IS_STATIC option to help hint to the libcurl's plugin build so that it can be select as static build 2008-04-21 14:51:47 +00:00
Robert Osfield
5d6121751c Updated AUTHORS file for release 2008-04-18 16:21:12 +00:00
Robert Osfield
81ad9bc95f Updated ChangeLog 2008-04-18 16:20:08 +00:00
Robert Osfield
a24fc02a3b Updated date on readem 2008-04-18 15:52:14 +00:00
Robert Osfield
495dca0b61 Updated wrappers 2008-04-18 15:01:49 +00:00
Robert Osfield
c4ba16f017 Added support for COLOR_BUFFER entries up to 15 2008-04-18 14:57:43 +00:00
Robert Osfield
13173ff680 Updated BufferComponent enum to list COLOR_BUFFERi entries up to 15. 2008-04-18 14:51:21 +00:00
Robert Osfield
55c6348cba Fixed bug in FBO colour attachement code 2008-04-18 14:33:14 +00:00
Robert Osfield
651c93e6c7 Added optional compiled in debugging output to CullVisitor::apply(osg::Camera&) 2008-04-18 14:14:33 +00:00
Robert Osfield
196a550cda Added write(ostream&) method to allow one to print out the current state 2008-04-18 13:57:08 +00:00
Robert Osfield
648199cb2b Changed the FrameBufferObject::setAttachment() methods so it now use osg::Camera::BufferComponent
to enable it to distinguish between MRT and non MRT paths
2008-04-18 13:25:14 +00:00
Robert Osfield
f09d583f44 Introduce OSG_GL_ERROR_CHECKING env var checking to osg::State constructor so that you
can enable fine grained check via env vars o.e.

 export OSG_GL_ERROR_CHECKING=ONCE_PER_ATTRIBUTE
2008-04-18 11:09:54 +00:00
Robert Osfield
a1f1f5114c From Stephan Huber, "attached you'll find a refactored and improved quicktime-plugin. I moved all code related to the image-loading, swizzling etc into an extra class. The quicktime plugin supports now reading and writing images from/to streams and the code is less cluttered than previous versions.
I removed QTtexture.h/.cpp and added QTImportExport.h/.cpp. I updated the CMake-files, I hope they are alright. I used the submitted code in my own apps since two months or so and it seems pretty stable, but as always the migration to the osg-quicktime plugin may have introduced new bugs, so perfect for developer release :)"
2008-04-17 15:30:35 +00:00
Robert Osfield
1b29fb8933 From John Shue, build fix for QT 3.x 2008-04-17 11:12:21 +00:00
Stephan Maximilian HUBER
368863376c updated XCode project 2008-04-17 09:04:29 +00:00
Robert Osfield
922dcb0423 Added new computation of time to allocate to flushing deleted and compiling OpenGL objects per frame. 2008-04-16 18:13:41 +00:00
Robert Osfield
c10acfcc47 From Bob Kuehne, "he attached are conversions of the 3 main places i found in osg where tokens are used to represent bitmasks with 'magic' numbers, like 32. i've changed these to a more representative bitshift representation, showing clearly in which bit you can expect this token to manifest. ie, converted things like:
from:            DEEP_COPY_STATESETS         = 8,
to:              DEEP_COPY_STATESETS         = 1<<3,

showing clearly that this isn't the _value_ 8, but the _bit_ 8. this is an old pattern i see (and like to promulgate) to make code a bit more readable and maintainable. 
"
2008-04-16 15:23:12 +00:00
Robert Osfield
3ef40a2301 Updated version number for nex dev release 2008-04-16 15:22:03 +00:00
Robert Osfield
e24d351cc4 From Jason Beverage, cursor inheritance support 2008-04-16 10:01:16 +00:00
Robert Osfield
aafeb93413 Updated AUTHORS.txt for release 2008-04-15 20:27:49 +00:00
Robert Osfield
0a92fccb76 Updated ChangeLog 2008-04-15 20:16:57 +00:00
Robert Osfield
d2196c02bc From Jason Beverage, "The following changes fix the flickering issue I'm seeing when trying to externally manage my cursor in Win32. If you set the cursor to InheritCursor, GraphicsWindowWin32 ignores WM_SETCURSOR and assumes you will set the cursor yourself." 2008-04-15 19:46:29 +00:00
Robert Osfield
9724303f38 From Art Trevs, moved multile render targets support from RenderStage into FrameBufferObject.
From Robert Osfield, refactored the FrameBufferObejcts::_drawBuffers set up so that its done
within the setAttachment  method to avoid potential threading/execution order issues.
2008-04-15 19:36:40 +00:00
Robert Osfield
e1c6a6ea43 Updated wrappers 2008-04-15 12:52:47 +00:00
Robert Osfield
db1bd13c4c From Tim Moore, compile fix for gcc 4.3 2008-04-15 11:50:34 +00:00
Robert Osfield
b12d209463 Added docs explaining units 2008-04-14 10:38:37 +00:00
Robert Osfield
6691824244 Added subdivision of Goedes 2008-04-13 19:31:09 +00:00
Robert Osfield
e94d6a0b30 From Christian Kaser, "I discovered a bug that lead to a space being displayed at the start of the new line after an automatic line break (through setMaximumWidth()). The fix simply skips all spaces at the end of the line, before skipping a line break which was done already.
osgText/Text.cpp: Line 502
       ...
       else
       {
           ++itr;
       }

       if (itr!=_text.end())
       {
           // skip over spaces and return.
           while (*itr==' ') ++itr;                // New
           if (*itr=='\n') ++itr;
       }

       // move to new line.
       switch(_layout)
       {
       .."
2008-04-13 14:32:13 +00:00
Robert Osfield
c045af6481 From Paul Martz, added osgocclussionquery and osgthirdpersonview examples 2008-04-13 14:29:22 +00:00
Robert Osfield
f85ced09a6 Changed bias parameter to scale 2008-04-12 10:02:28 +00:00
Robert Osfield
decc3bda02 Updadated authors file for dev release 2008-04-11 14:52:35 +00:00
Robert Osfield
e0a780b404 Updated wrappers, and version numbers in prep for next release 2008-04-11 14:43:22 +00:00
Robert Osfield
505a360f2c Fixed J.P. Delports name 2008-04-11 14:33:24 +00:00
Robert Osfield
f9c70f2f76 Added --unit entry for controlling which texture unit the overlay works on. 2008-04-11 14:14:28 +00:00
Robert Osfield
d0a2bf87f3 From Paul Martz,"Several misc changes, but the major fixes include:
* Support for Vec4ubArray for color data
 * Support for material transparency
 
Thanks to Neil Hughes, Jason Daly, yourself, and others for testing and reporting issues."
2008-04-11 13:43:11 +00:00
Robert Osfield
76e0198007 From Philipp Machler, "We have extended the support for Wacom Tablet devices:
- Mac OS X
  - not only pressure, but tilt and z-rotation is supported now
"
2008-04-11 13:28:09 +00:00
Robert Osfield
6fed4022a6 Added reference to osgstereomatch example to osgmultiplerendertargets.
Added usage example use OpenSceneGraph-Data/Images examples
2008-04-11 13:04:21 +00:00
Robert Osfield
52c9acade3 From Sherman Wilcox, "Here is a patch for cmakelists.txt to add support for the /MP option
in Microsoft compilers as discussed in osg-users. There is now an
advanced option called WIN32_USE_MP (which defaults to OFF) that will
enable the /MP switch for all builds. I tucked this code block safely
within a IF(WIN32) branch."
2008-04-11 13:03:02 +00:00
Robert Osfield
98a2289a59 From Jose Delport, a MRT example implementing stereo matching. 2008-04-11 11:58:27 +00:00
Robert Osfield
9cec69981d Updated wrappers 2008-04-11 11:19:58 +00:00
Robert Osfield
11f9575b24 From Melchior Franz, "The GUIEventAdapter header file had KeySymbols for the super and
hyper keys defined already, but these modifiers were missing in
GUIEventAdapter::ModKeyMask, and the EventQueue ingored them as well.

The attached diff/archive adds the missing parts for Super/Hyper
modifier key support.


I'm aware that this might not be supported on all systems/keyboards
out of the box, but decided to submit it anyway because:

- developers are aware of differences between input devices
 (Some mice have scroll wheels, others don't. Some have five or
 more buttons, some have only one. Some keyboards don't have
 numpads, some have AltGr, some don't etc.)

- even if someone relies on Hyper/Super in distributed software,
 this is easy to fix and doesn't create lock-in conditions

- while the names Hyper/Super may only be common on X11, they are
 just symbol names and not OS-specific

- even though some systems might not offer these additional modifiers
 by default, it's likely that all of them have at least 8 modifier
 levels internally, so it should only be a matter of OS configuration
 to make them work

- having super/hyper available is useful to offer a user ways
 to define local key definitions that are safe from collisions with
 predefined "official" key assignments"
2008-04-11 11:10:12 +00:00
Robert Osfield
5893b99122 From Sherman Wilcox, "Modified the cmakelists.txt file for the curl plugin so the proper
linker directories are set in Win32. The old cmakelists.txt would set
the lib release folder for debug builds as well. This should correct
that."
2008-04-11 10:58:28 +00:00
Robert Osfield
6429937fce From Colin McDonald, fixed typo. 2008-04-11 10:31:49 +00:00
Robert Osfield
462067c5d9 From Benoit Laniel, "I use mingw to cross-compile openscenegraph to win32. However, linux
filesystem is case-sensitive. Here are the modifications needed to make
the compiler happy. These are only some include lines rewritten (Io.h to
io.h, Windows.h to windows.h etc.) for version 2.3.7."
2008-04-11 10:30:00 +00:00
Robert Osfield
66ed3a919a From Bob Kuehne, "1) add simplifier command "--simplifier .5" to reduce complexity
2) complementarily add a "--overallNormal" to replace
per-vert/per-facet normals with an overall. simplifier doesn't work
  in certain cases without less complex normals. this gets that done.
3) add env var output with full verbose output so people realize it's
active when the app is run - i see this all the time in training where
people run osgconv, with unintended data transformations due to
osgUtil:;Optimzer, for example"
2008-04-11 10:16:38 +00:00
Robert Osfield
22edadcdf3 Added --mouse option to enable mouse tracking, and fixed bug in assumption
that nv is not null.
2008-04-11 10:10:40 +00:00
Robert Osfield
2a54ff3e4a Introduced CMake build option for compiling double or float versions of osg::BoundingSphere and osg::BoundingBox.
Introduced code in BoundgingSphere, BoundingBox, ProxyNode and LOD to utilise the above settings.

Added Matrix::value_type, Plane::value_type, BoundingSphere::value_type and BoundingBox::value_type command line 
options that report where the types of floats or doubles.
2008-04-03 18:36:50 +00:00
Robert Osfield
fe5c019608 From Colin McDonald, "The X11WindowingSystemInterface in osgViewer/GraphicsWindowX11.cpp
unconditionally sets the X11 error handler routine, replacing anything
that was previously set.  This is a bit unfriendly, as the X11 error
handler is a global attribute which the application, or the GUI toolkit
being used, may well have set itself.

So I have modified X11WindowingSystemInterface to only replace the error
handler if it is the default i.e. if the application has not set it."
2008-04-03 18:06:09 +00:00
Robert Osfield
d0b5a42c5c From Mattias Helsing, "While using the dds plugin (via osgdem) it was able to write 24bit
images with BGR order but not read them. My 2-liner fixed it for me
but it may be that someone with more knowledge of the plugin want to
insert more pixel formats in the reading part of the plugin."
2008-04-03 10:26:18 +00:00
Robert Osfield
db8cb2a644 From Jose Delport, added support for MRT via glDrawBuffers 2008-04-02 17:08:40 +00:00
Robert Osfield
0ab29e1502 From Mattias Helsing, "Subject: osga reading slash mismatch
requests for files in a archive are made with unix style paths. So to
be able to match an entry in map(_indexMap) it's keys needs to be
stored in unix style even on Win32"

Note from Robert Osfied, simplified this submission so that the added conversion to
unix slahes is done on all platforms as this should be safe and simpler to maintain.
2008-04-02 13:57:26 +00:00
Robert Osfield
f5c9b548a8 Updated to reflect new COLOR_BUFFER0 value 2008-04-02 13:55:50 +00:00
Robert Osfield
fb5c839b31 From Jose Delport, introduced osgmultiplerendertargets example 2008-04-02 13:48:41 +00:00
Robert Osfield
3e94d93a66 Changed the Camera::BufferComponent::COLOR_BUFFER0 from being equal to COLOR_BUFFER
to being COLOR_BUFFER+1 to enable differentation between non MRT and MRT paths.
2008-04-02 13:47:45 +00:00
Robert Osfield
4d4a75e818 From Jose Delport, typo fixes 2008-04-02 11:28:10 +00:00
Robert Osfield
ad56c42208 Updated ChangeLog, osgversion and AUTHOR.txt for 2.3.7 dev release 2008-04-01 17:22:08 +00:00
Robert Osfield
0c00ee582a Removed svn:externals property 2008-04-01 14:52:49 +00:00
Robert Osfield
13c84e3db0 Updated data for 2.3.7 dev release 2008-04-01 14:28:55 +00:00
Robert Osfield
aac06fd437 Updated OpenThreads version to 2.2.1 with the switch of sources/svn:externals from OpenThreads to OpenSceneGraph. 2008-04-01 11:03:45 +00:00
Robert Osfield
323ce02f23 Moved OpenThreads directly into OpenSceneGraph/trunk rather than being introduced via svn:externals.
This change has been done to make it easier for OpenSceneGraph users to check out the svn via https 
without any conflicts introduced with a http externals.
2008-04-01 10:49:53 +00:00
Robert Osfield
73b87274b0 Updated version numbers for 2.3.7 dev release 2008-04-01 10:33:01 +00:00
Robert Osfield
e482e718f5 From Paul Martz, "Two changes:
- Handle DrawArrays first/count correctly (fixes problem reported by Jason Daly)
 - Display warning if non-Geometry Drawable is encountered."
2008-04-01 10:11:22 +00:00
Robert Osfield
f9f7770336 From Tatsuhiro Nishioka and Stephan Huber, bug fixes and enhancement of cursor suppoort. 2008-04-01 10:00:39 +00:00
Robert Osfield
31c6115d73 Added checks for a valid scene graph before doing various ops on it. 2008-03-31 16:23:52 +00:00
Robert Osfield
5887dc87b1 From Andy Skinner, build fix for Solaris 2008-03-31 14:00:42 +00:00
Robert Osfield
64f8631d9d Added Camera::s/getClearAccum, s/getClearStencil and s/getClearDepth. 2008-03-31 11:44:31 +00:00
Robert Osfield
225e1957b3 Updated wrappers 2008-03-31 09:43:14 +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
2c1d440444 From Paul Martz, "Some small changes and code cleanup. Biggest change is an improvement to the WriteResult return." 2008-03-28 19:56:25 +00:00
Robert Osfield
960e0bd378 Set Texture::setMaxAnisotropy() to 16.0f for better quality terrain when looking at shallow angle. 2008-03-28 18:42:03 +00:00
Robert Osfield
f42497bc2b Improved the error capture and reporting 2008-03-28 17:53:58 +00:00
Robert Osfield
c1e32ef742 Rewrote the DatabasePager::removeExpiredSubgraphs(double) routine as it
as not expiring subgraphs quick enough to enable reasonable load balancing.

New version isn't perfect and will need further work, but does at least reduce
the memory footprint by as much as half on test paths on big databases.

The rewritten method no longer uses the the MaximumNumOfRemovedChildPagedLODs
and MinimumNumOfInactivePagedLODs variables so these and associated methods
for accessing them have been removed.

-        /** Set the maximum number of PagedLOD child to remove per frame */
-        void setMaximumNumOfRemovedChildPagedLODs(unsigned int number) { _maximumNumOfRemovedChildPagedLODs = number; }
-
-        /** Get the maximum number of PagedLOD child to remove per frame */
-        unsigned int getMaximumNumOfRemovedChildPagedLODs() const { return _maximumNumOfRemovedChildPagedLODs; }
-
-        /** Set the minimum number of inactive PagedLOD child to keep */
-        void setMinimumNumOfInactivePagedLODs(unsigned int number) { _minimumNumOfInactivePagedLODs = number; }
-
-        /** Get the minimum number of inactive PagedLOD child to keep */
-        unsigned int getMinimumNumOfInactivePagedLODs() const { return _minimumNumOfInactivePagedLODs; }
2008-03-28 15:52:10 +00:00
Robert Osfield
3f81a994b7 Introduced mutex into Terrain node to manage the tile system data structures 2008-03-28 15:31:46 +00:00
Robert Osfield
49accb1635 Reordered set up of scene and event handlers to prevent warning 2008-03-28 15:28:03 +00:00
Robert Osfield
497854cb2f Removed old lower case versions 2008-03-28 13:22:30 +00:00
Robert Osfield
28f9b71dd4 From Paul Martz, "Here's the mods to the OpenFlight plugin to support FLT export. The ZIP file contains the new .cpp/h files as well as existing files that I modified.
Changes to existing files:
  ReaderWriter.cpp -- to support writeNode() of course.
  ReaderWriterATTR.cpp -- to support writeObject -- we write .attr files for textures, if they don't already exist.
  AttrData.cpp/.h -- Minor fixes.
  CMakeLists.txt -- to include the new files in the build."
  
From Robert Osfield, port to non Windows platforms just required fixing of header capitilization errors
that windows lets through the net due to having a case insensitive file system.
2008-03-28 12:44:33 +00:00
Robert Osfield
2567b810cf Removed TileSystem class, and added support for TerrainTile's automatically
registering and unregistering themseles with the enclosing Terrain node.
2008-03-27 13:21:36 +00:00
Robert Osfield
31bc0dd9e3 Added wrapper for TerrainTile 2008-03-27 11:56:35 +00:00
Robert Osfield
6396a156a2 Renamed osgTerrain::TerrainSystem to osgTerrain::Terrain 2008-03-27 11:55:03 +00:00
Robert Osfield
35c5bd2c92 Renamed Terrain to TerrainTile 2008-03-27 10:55:39 +00:00
Robert Osfield
a9d283ca73 Introduce TerrainSystem node which decorates a complete terrain model made up of Terrain tiles. 2008-03-26 20:06:54 +00:00
Robert Osfield
c9fc0cd802 From Carlo Camporesi, "I have made some changes in order to allow the using of proxies via env variables and options.
I have modified also the cmakelist. In this way osg is able to find the library in 3rdParty directory."
2008-03-26 20:03:53 +00:00
Robert Osfield
c97ba8271b From Carlo Comporesi, adding support of finding libcurl in 3rd party dependencies 2008-03-26 20:01:45 +00:00
Robert Osfield
434337b7c8 From Tomas Hnilica, "
Attached is modified source of AdapterWidget.cpp file from osgviewerQT
example. Original was token today from SVN - trunk. (2.3.6).
 --mdi option needs to be set to run MDI version.

Few notes:
- tested on Windows box (Win XP)
- using QT4
- I was not able to execute the example with QOSGWidget  - had same
error like described in [osg-users] "fate error using QOSGWidget in
develop release
2.3.0" thread from Shuxing Xiao, 2008-01-08.
- problems are described in source

--

And Later post:

The problem of keypress events was solved by QT community, attached is
repaired AdapterWidget.cpp file.
In the AdapterWidget class constructor following line was added:
setFocusPolicy(Qt::ClickFocus);
Scene disappearing by resizing to minimum still needs to be fixed..."
2008-03-25 15:21:14 +00:00
Robert Osfield
1bbd899a89 Moved include of c headers to top, and remove using std::strlen in an attempt to solve gcc4.3 compile problems 2008-03-25 13:14:14 +00:00
Robert Osfield
f50b9a3c79 Added limits.h to try and avoid gcc 4.3 compile problems 2008-03-25 13:06:57 +00:00
Robert Osfield
3a1fbcd6f0 Added #include<memory> to fix gcc 4.3 build problem 2008-03-25 13:01:40 +00:00
Robert Osfield
b4245023a9 Fixed LessGeode operator. 2008-03-25 12:26:43 +00:00
Robert Osfield
920554c4f7 From Wojciech Leandowski, "I removed few lines of code that were setting Threading mode and Screen mode. I believe they are now not neccessary because the same does osgViewer::Viewer argument parser. In fact argument list does not contain these args after they were parsed by osgViewer::Viewer constructor.
I also allowed myself to add ThreadingHandler to the example."
2008-03-25 11:50:28 +00:00
Robert Osfield
600dbf5470 Added sampling down to 32x32 mesh for 64x64 height fields as a workaround to
memory consumption issues with high res whole earth paged databases.
2008-03-24 18:06:40 +00:00
Robert Osfield
26526038ca Added mutex to prevent multiple cull threads changing the MultiTextureControl at one time. 2008-03-24 18:03:19 +00:00
Robert Osfield
584882ad24 Added full range of cameras manipulators to osgmultitexturecontrol example 2008-03-24 10:53:14 +00:00
Robert Osfield
df74f3ba8a Added < and > key bindings to allow the speed to be animation speed to be increased or decreased. 2008-03-23 18:28:49 +00:00
Robert Osfield
6e7a1608df Added preliminary file cache support. Enabled by setting the OSG_FILE_CACHE variable. 2008-03-21 18:35:29 +00:00
Robert Osfield
c762eeee0c Added missing break; at end of each case entry. 2008-03-21 18:31:56 +00:00
Robert Osfield
b58d59ceb7 Fixed push/popping of filepath, removed verbose debug messages 2008-03-21 15:43:53 +00:00
Robert Osfield
c26b41d125 Added better detection and error reporting of files without proper server address 2008-03-21 13:20:07 +00:00
Robert Osfield
ac63d37f7b Added initial cut of libcurl based plugin 2008-03-21 13:08:02 +00:00
Robert Osfield
73ce6837fa Updated date for 2.4.6 release 2008-03-20 10:24:26 +00:00
Robert Osfield
f5f29a03c1 From Melchoir Franz, "osgViewer toggled the NumLock state correctly when pressing the NumLock
key, but it didn't pick up the initial state. So, if NumLock was on for
the OS at startup (LED on), it was still off for OSG. And the first
keypress turned the LED off, and NumLock on for OSG. The attached fix
picks up the state on every FocusIn, just like it was done in the last
commits for CapsLock. The difference is, that the NumLock mask isn't
standardized (e.g. 0x10 for Linux, and 0x80 for AIX), so we have to do
a reverse lookup (::rescanModifierMapping()).

Note that I could not reproduce the problem on my system, but someone
else confirmed it twice on his, and the patch fixed it for him.

Changed files:
 ./include/osgViewer/api/X11/GraphicsWindowX11
 ./src/osgViewer/GraphicsWindowX11.cpp

"
2008-03-19 21:05:38 +00:00
Robert Osfield
01de26e678 Update AUTHOR file 2008-03-19 17:11:20 +00:00
Robert Osfield
88ba7cc0d6 Updated version and ChangeLog for 2.3.6 dev release. 2008-03-19 17:10:38 +00:00
Robert Osfield
a51342d81e Updated wrappers 2008-03-19 12:30:50 +00:00
Robert Osfield
bbf4564103 From Sebastian Messerschimdt, Added polygon offset controls 2008-03-19 12:09:20 +00:00
Robert Osfield
5746c4ce89 Updated wrappers 2008-03-19 11:41:37 +00:00
Robert Osfield
207a0e8610 Revert the Camera::setInheritanceMask(0x) calls that were added as workaround to a bug introduced by a bug fix to the way the inhertiance mask was handled in CullVisito::apply(Camera&) 2008-03-19 11:41:21 +00:00
Robert Osfield
027b4b0986 Introduced InheritanceMaskActionOnAttributeSetting member to CullSettings, and associated applyMaskAction method that is
now used in all CullSettings::set*() methods, which by default helps disable the inheritance mask associated
with settings that are made locally.
2008-03-19 11:40:08 +00:00
Robert Osfield
945846a3ed Set the CullSettings::InhertianceMask to 0x0 as temporary measure till we
work out the best scheme to use w.r.t inhertiance of CullSettins.
2008-03-18 17:44:21 +00:00
Robert Osfield
450d5e5615 Updated wrappers 2008-03-18 15:48:48 +00:00
Robert Osfield
1d1dcf2cf3 To osg::AutoTransform added support for MinimumScale, MaximumScale and AutoScaleTransitionWidth parameters
and a new scheme for computing the scaling when using autoscale that introduces smooth
transitions to the scaling of the subgraph so that it looks more natural.
2008-03-18 15:37:38 +00:00
Robert Osfield
b08f438946 Added example code showing how to set the minimum and maximum scales 2008-03-18 10:45:47 +00:00
Robert Osfield
e74bb067fb Added ObjectRecordData to include list 2008-03-18 09:17:52 +00:00
Robert Osfield
7a7c197af3 Added minimum and maximum scale support to osg::AutoTransform 2008-03-17 15:22:03 +00:00
Robert Osfield
80d5d01698 Fixed moving model bug where the moving model code was looking for a transform with DataVariance set to DYNAMIC, but the scene graph set up code was leaving the setting to default to STATIC. Fix involved setting DataVariance on moving transoforms to DYNAMIC. 2008-03-17 12:23:06 +00:00
Robert Osfield
42e3cb6bf2 Updated wrappers 2008-03-17 12:13:20 +00:00
Robert Osfield
ae1c047deb Added doxygen docs 2008-03-17 12:11:39 +00:00
Robert Osfield
00f161ca35 Introduce osgParticle::ParticleSystem::s/getParticleScaleReferenceFrame() to
help manage the scaling of particles, whether they should be relative to the
local coordiante frame of the particle system, or be in world coordinates.
2008-03-17 12:09:05 +00:00
Robert Osfield
7ec5673a7e Added fire effect, enabled by --fire command line option. The new fire effect
has been introduced to reproduce the scaling of paricle effects
2008-03-17 10:29:23 +00:00
Robert Osfield
a1c0c2a3eb Added better error reporting 2008-03-15 19:27:35 +00:00
Robert Osfield
cf8cbc5af4 From Paul Melis, "typo fix : NVidea -> NVidia (including option --Nvidea)" 2008-03-14 16:51:39 +00:00
Robert Osfield
dcc4e2838b Update ChangeLog and AUTHORS.txt file for 2.3.5 release 2008-03-14 16:24:36 +00:00
Robert Osfield
45ac890f37 Updated wrappers 2008-03-14 15:33:59 +00:00
Robert Osfield
164f2160ff Added utilty script for cleaning up build files/directories. 2008-03-14 15:33:47 +00:00
Robert Osfield
a49ed677b5 Fixed indenting 2008-03-14 15:32:56 +00:00
Robert Osfield
45bd3802de From Melchior Franz, "Attached is a fix for remaining problems in capslock handling:
It sets osgGA's keymask when restoring keys on FocusIn, according
to the state values of XKeyEvent and XCrossingEvent. (These are
the only source for X11's current capslock state that avoids
pulling in the XKB extension.)
"
2008-03-14 15:13:08 +00:00
Robert Osfield
dbd4bdcd89 Missing checkin 2008-03-14 15:00:37 +00:00
Robert Osfield
a364f933e4 Added iostream include 2008-03-14 14:35:15 +00:00
Robert Osfield
9c56c5277f Added cloning of the StateSet before modification to work around threading issue
relating to the StateSet being modified by the event/update thread and read from
the draw thread at the same time.
2008-03-14 13:21:35 +00:00
Robert Osfield
8be3123cbf Converted static const unsigned int definitio to enum. 2008-03-14 12:03:11 +00:00
Robert Osfield
6e8606416f Updated version/author type fixes, authors, readme and changelog for 2.3.5 dev release 2008-03-14 11:53:44 +00:00
Robert Osfield
721944194c Updated wrappers 2008-03-14 11:07:03 +00:00
Robert Osfield
457a28d40e Improved the indenting 2008-03-14 11:06:54 +00:00
Robert Osfield
1be388c705 Changed the const get(), operator*() and operator->() methods to return non const T versions 2008-03-14 11:06:35 +00:00
Robert Osfield
e37bb89016 From Andy Skinner, build fix for Solaris 2008-03-14 11:01:54 +00:00
Robert Osfield
f858d30c68 Fixed doc comment 2008-03-13 19:48:16 +00:00
Robert Osfield
292be66ecc Removed gl and glu prefixes from SceneGraphBuilder methods to avoid problems under Solaris 2008-03-13 19:44:10 +00:00
Robert Osfield
849d2fdc8f From Gino van den Bergen, "I've added a few fixes to the VRML 2.0 plugin:
1) Full DOS paths are now correctly opened by OpenVRML. A URL containing
a DOS path should be "file:///C:data/blah" rather than "file://C:data/blah".

2)  The last primitive defined in "coordIndex" is now added if the
"coordIndex" is not terminated by -1.

3) Smoothed normals are computed if no normal field is provided.
Currently, there is no support for "creaseAngle", so all edges (even the
ones sharper than the creaseAngle) are smoothed. I might add this in the
future if demand rises.

4) If an IndexedFaceSet contains only triangles or quads then the
primitive type is set to TRIANGLES or QUADS, and the primset becomes
DrawArrays rather than DrawArrayLengths.

Question: I noticed that for DrawArrays you can still provide an index
array. Would the rendering be faster if I'd create DrawElements primsets
rather than DrawArrays? Phrased differently, what is the benefit of
using DrawElements over DrawArrays, as there is clearly not a one-to-one
mapping of these concepts to their OpenGL counterparts?

5) Objects are added to the transparent bin and blend mode is enabled
only if the transparency is nonzero. Rendered transparent objects no
longer write the depth buffer."
2008-03-13 16:40:45 +00:00
Robert Osfield
daef0f64f2 From Jose Delport, "attached is a version of osgunittests that does not give false alarms
for the case where q1 = -q2. The output of 'osgunittests quat' is now
much cleaner.
"
2008-03-13 16:38:05 +00:00
Robert Osfield
670c7967ae From Paul Melis, "Here is an updated osgviewerWX example to bring it more in line with the
other GUI toolkit examples. It now takes a model file as command-line
argument (complaining if there isn't one), and its startup window size
is now actually applied (it used to be too small). I tested this with a
unicode-build of wxWidgets, as that is the recommended build type on
Linux with GTK. I'm pretty sure this version of the example will work
for the ANSI build as well, but I have no way of testing."
2008-03-13 16:22:07 +00:00
Robert Osfield
110c761695 From Melchoir Franz, "ac3d.cpp does currently strip everything but the file name in
"texture" paths. This is to drop absolute paths that some
3d editors export (even AC3D itself!). But this also strips
directories of relative paths, which is wrong and contradicts
the ac3d reference implementation. (The reference implementation
doesn't strip anything, though, and so takes the absolute paths
as they are. Definitely not what we want.)

The attached solution checks absolute paths and only strips
those:

 (1)  A:\\foo\\bar.png   ->   bar.png            (as before)
 (2)  /foo/bar.png       ->   bar.png            (as before)

 (3)  foo/bar.png        ->   foo/bar.png        (new)
 (4)  ../foo/bar.png     ->   ../foo/bar.png     (new)

"
2008-03-13 16:18:03 +00:00
Robert Osfield
a460d66533 From Melchoir Franz, Caps lock support under X11 2008-03-13 16:12:46 +00:00
Robert Osfield
f1fe11f5a9 Added double versions of intersect methods 2008-03-13 16:05:40 +00:00
Robert Osfield
51f872c279 Updated wrappers 2008-03-13 16:05:20 +00:00
Robert Osfield
194a987974 From Andy Skinner, "I've taken this another step, to use value_type inside the intersect calls. I did choose to use sqrt() instead of sqrtf()." 2008-03-13 15:23:24 +00:00
Robert Osfield
a9740118db From Paul Martz, files for adding ObjectRecordData support into OpenFlight 2008-03-13 15:21:34 +00:00
Robert Osfield
e19dbe8daa From Paul Martz, "The attached preserves OpenFlight Object record data as UserData in the osg::Group corresponding to the Object record.
The files are:
    include/osgSim/ObjectRecordData -- The new class. Derives from Object to support .osg IO.
    src/osgPlugins/OpenFlight/PrimaryRecords.cpp -- Reads data into that class.
    src/osgPlugins/osgSim/IO_ObjectRecordData.cpp -- .osg IO support."

From Robert Osfield, made the OpenFlight read object record data optional via the -O readObjectRecordData ReaderWriter option.
2008-03-13 14:09:11 +00:00
Robert Osfield
3a11483ba8 Added support for assigning state to created drawables, implemented gluDisk. 2008-03-13 13:44:34 +00:00
Robert Osfield
9ce276c5d7 From Alberto Luaces, "Here I send minor corrections to the text output by the osgforest example when
building its graphs. The message "Creating billboard based forest" appears
four times regardless of the actual type of the graph being built.
"
2008-03-13 13:43:22 +00:00
Robert Osfield
e9b3f06c1b Updated wrappers 2008-03-12 20:20:55 +00:00
Robert Osfield
1b9cefa10f Added extra constructors 2008-03-12 20:15:45 +00:00
Robert Osfield
db256b962c Added proper implementations of OpenGL 1.0 calls to OSG object representation methods in SceneGraphBuilder. 2008-03-12 20:15:28 +00:00
Robert Osfield
eb9f7428bc Fixed bug in output of ProxyLayer's MinLevel/MaxLevel 2008-03-12 15:28:26 +00:00
Robert Osfield
a26bdd9446 Added default implementations of new SceneGraphBuilder class 2008-03-11 13:29:12 +00:00
Robert Osfield
b2ead391b3 From Mathias Froehlich, "it appears to me that sun CC cannot use static functions from template
functions. The attached change is required to make it compile with sun CC."
2008-03-11 13:23:49 +00:00
Robert Osfield
3537d21ae3 From Jose Delport, added support for finding and using GDAL 1.5 2008-03-11 13:19:08 +00:00
Robert Osfield
3bdfb700aa Added extra event handlers to make viewer more functional 2008-03-11 12:10:09 +00:00
Robert Osfield
5f4e8d54af Added commandline help options 2008-03-10 20:30:56 +00:00
Robert Osfield
af29bccf4f From Andreas Ekstrand and Lars Nilsson, fix for reading Texture Attribute file 2008-03-05 13:54:52 +00:00
Robert Osfield
5deac2ce3a Updated wrappers 2008-03-05 12:05:55 +00:00
Robert Osfield
66f1a6ceaa From Atr Trevs, added missinging initializers 2008-03-05 11:52:56 +00:00
Robert Osfield
6e89dc0d94 From Jean-Sebastien Guay, "I changed osgGA::StateSetManipulator to mirror the
osgViewer::StatsHandler and other handlers which allow you to change the
key(s) you would press to get them to do something. Pretty simple change
but useful in our context and possibly in others too."
2008-03-05 11:33:55 +00:00
Robert Osfield
bc406c8bf0 From Jean-Sebastien Guay, "
The problem can be reproduced by simply changing the osgpick example to
use a CompositeViewer with a single view initialized using
setUpViewAcrossAllScreens(). I have attached a modified osgpick.cpp so
you can test it out quickly (please don't check this file in though :-)
) The eventState is then incorrect and picking does not work. The only
changes are in CompositeViewer.cpp (eventTraversal() method), and fix
the problem for me.
"
2008-03-04 17:57:06 +00:00
Robert Osfield
9d0c950bb0 From Colin McDonald, "Attached is an updated to osgViewer::PixelBufferWin32.
The win32 pbuffer implementation returned an error unless both the
WGL_ARB_pbuffer and the WGL_ARB_render_texture functions were present.
This was too restrictive, as a pbuffer can usefully be created without
render-to-texture, e.g. for use with glReadPixels.  The osg 1.2/Producer
pbuffers worked without RTT, and osgUtil::RenderStage has all the code to
handle both RTT and non-RTT pbuffers, doing a read and copy in the
latter case.

With these changes I have successfully tested the osgprerender example
on a graphics card which supports RTT, and one which doesn't.  Plus
tested in my own application.

In order to aid diagnostics I have also added more function status
return checks, and associated error messages.  I have included the win32
error text in all error messages output.  And there were some errors
with multi-threaded handling of "bind to texture" and a temporary window
context which I have corrected.

These is one (pre-existing) problem with multi-threaded use of pbuffers
in osgViewer & osgprerender, which I have not been able to fix.  A win32
device context (HDC) can only be destroyed from the thread that created
it.  The pbuffers for pre-render cameras are created in
osgUtil::RenderStage::runCameraSetUp, from the draw thread.  But
closeImplementation is normally invoked from the destructor in the main
application thread.  With the additional error messages I have added,
osgprerender will now output a couple of warnings from
osgViewer::PixelBufferWin32::closeImplementation() at exit, after
running multi-threaded on windows.  I think that is a good thing, to
highlight the problem.  I looked into fixing it in osgViewer::Renderer &
osgUtil::RenderStage, but it was too involved for me.  My own
application requirements are only single-threaded.

Unrelated fix - an uninitialised variable in
osg::GraphicsThread::FlushDeletedGLObjectsOperation().
"
2008-03-04 16:39:44 +00:00
Robert Osfield
dd2b4ed83e From Wojciech Lewandowski, "Attached is modified osgShadow::ShadowMap. I changed following things:
1:
Shadow map camera sets ABSOLUTE_RF_INHERIT_VIEWPOINT refernce frame. 
 
2:
Light Direction  by matrix multiplications replaced with transform3x3 multiplication.
 
3:
I made DebugingHUD functional by adding special draw callback. Former version was simply drawing pale square. 
 
4:
I was tempted to make 4 th change but decided to not do it. Instead I put it whith #if VIEW_DEPNDENT_TEXGEN. If you decide you may let it go.
 
When objects are not centered at 0,0,0 coord but in some distant location (for example at surface of earth ellipsoid) shadow texgen suffers from inadequate precision of float matrices. I changed that by premultiplying Texgen matrix (using OSG double matrices) with inverse modelview and applying it later with ModelView identity matrix. This tweak may be appropriate for OverlayNode texgen as well.
 
I left former version because I suspect that this change will make osgShadow::ShadowMap view dependant. Currently texgen matrix remains the same no matter what View displays it. With my change it wuld be different for each view. This touches the subject of View Dependent Shadow Techniques that J-S asked recently."
2008-03-04 16:22:47 +00:00
Robert Osfield
23bc6c2fe5 Refactored the way that the camera settings are inhertied 2008-03-04 16:03:37 +00:00
Robert Osfield
1d18bc7f48 From Art Trevs, "in the current implementation of the FrameBufferObject
there is a bug. The header file do specify something
like  this:

FrameBufferAttachment(Texture3D* target, int zoffset,
int level = 0);

However in the .cpp file we have:

FrameBufferAttachment::FrameBufferAttachment(Texture3D*
target, int level, int zoffset)


Which means that the meaning of level and zoffset is
interchanged.

The file with the corrected line is attached. Should
go into src/osg/
"
2008-03-04 15:29:47 +00:00
Robert Osfield
712ca43219 From Philip Lowman, "A missing _WIN32_WINNT declaration causes MinGW compilation to fail when reaching FileNameUtils.cpp and the Windows 2000 function GetLongPathName() is called." 2008-03-04 15:10:22 +00:00
Robert Osfield
d8f674a59d From Jean-Sebastien Guay and Robert Osfield, added optional --CompositeViewer path into osgpick to illustrate how to do picking in both viewers and as unit test for picking. 2008-03-04 14:19:03 +00:00
Robert Osfield
c4d07194a2 From Art Trevs, add support for saving external shader files.
From Robert Osfield, adding missing member variable initializes and Output::getShaderFileNameForOutput() implementation
2008-03-04 14:04:48 +00:00
Robert Osfield
02b52cb73a From Paul Martz, a third person view CompositeViewer example 2008-03-04 13:30:41 +00:00
Robert Osfield
f7c33bb2e8 Change the setViewAsLookAt method to use Vec3d rather than Vec3 for better precision 2008-03-04 11:53:09 +00:00
Robert Osfield
2db68f98a8 Changed the updateStateSet code so that it creates a new StateSet each update
rather than clear and reuse the existing one, this change fixes a threading
issue that occured when the viewer is in DrawThreadPerContext.
2008-03-04 11:52:21 +00:00
Robert Osfield
a145975de1 Removed single threaded setting 2008-03-04 11:50:35 +00:00
Robert Osfield
a2e8d90194 Implemented fade between layers using MultiTextureControl node 2008-03-03 18:12:21 +00:00
Robert Osfield
289ef1279d Added beginings of new osgmultitexturecontrol example 2008-03-03 14:17:56 +00:00
Robert Osfield
9dcab11267 Updated wrappers 2008-03-01 13:42:07 +00:00
Robert Osfield
d42eee693f Added OSG_EXPORT 2008-03-01 13:40:57 +00:00
Robert Osfield
75d35b6ba1 Fixed typo 2008-03-01 12:50:54 +00:00
Robert Osfield
36bbfa9935 Fixed naming 2008-03-01 12:29:49 +00:00
Robert Osfield
dd9dc85d40 Disabled the resizing of Camera's with FBO's 2008-02-29 16:09:48 +00:00
Robert Osfield
aa43b3c8a6 Added Camera::g/setIntialDrawCallback and g/setFinalDrawCallback(), and added
screen snapshot example code to osghud.
2008-02-29 15:25:57 +00:00
Robert Osfield
ca513efc1d Added LODScaleHandler 2008-02-28 20:02:43 +00:00
Robert Osfield
1dfffc0494 Added OSG_EXPIRY_DELAY env var option. 2008-02-28 18:08:32 +00:00
Robert Osfield
e26579b0ec Moved the delete operations to before of the compile operations to ensure that
delete operations don't get pushed out by allocations
2008-02-28 17:59:44 +00:00
Robert Osfield
79276b3169 From He Sicong, "fixed shader calculation of ray tracing" 2008-02-28 10:56:03 +00:00
Robert Osfield
eb46608be4 From Wojciech Lewandowski and Robert Osfield, Support from LightPointNode::s/getPointSprite parameter. 2008-02-27 12:11:02 +00:00
Robert Osfield
a4a39d32ff From Paul Martz, "Per the discussion in osg-users, this change adds code comments to the Matrix* headers to document assumptions in the getRotate() method." 2008-02-27 11:46:05 +00:00
Robert Osfield
3b4af26136 From Paul Martz, fixed get/set methods API 2008-02-27 11:43:58 +00:00
Robert Osfield
335eed204b Added debug message to track cache usage 2008-02-27 11:43:06 +00:00
Robert Osfield
fdb6b31452 From Melchior Franz, fixed handling of modified keys when entering/leaving window 2008-02-25 17:30:30 +00:00
Robert Osfield
a3a5af18b0 From Franz Melchior, "When switching virtual desktops or minimizing a window, keys
remain in pressed state after revealing, even if they are no
longer pressed on the keyboard. This can have bad effects,
especially if the stuck keys are modifier keys. One has to
press and release the stuck keys again to reset the wrong state.

The fix keeps track of all key presses and releases. On FocusOut
and UnmapNotify it releases all keys that are in pressed state,
and on KeymapNotify (following a FocusIn), it sets the currently
pressed keys again. To avoid confusion in the OSG-using application
normal keys are always reported released /before/ and pressed
/after/ modifier keys.

As current key states are returned as char[32] keymap by
XQueryKeymap and XKeymapEvent, this format is also used to
recognize modifier keys and for maintaining the current
internal key state. Functions to set/clear/query bits in
such a keymap are added.

The patch was extensively tested with osgkeyboard and
FlightGear under KDE and fvwm2. It was not tested on a
Xinerama setup or with multiple windows, but as _eventDisplay
is used throughout, there should be no problems. The patch also
makes the following changes:

- removes old and obsolete handling of modifier keys in ::adaptKey().
 This wasn't only unused, but also wrong (and for that reason commented
 out in revision 7066). The modifier states are actually handled
 in ./src/osgGA/EventQueue.cpp (EventQueue::keyPress/keyRelease).
- fixes some spelling"
2008-02-25 16:50:28 +00:00
Robert Osfield
3c2872a36a From Emmanuel Roche, "I'm joining two zip files to this mail for the modified sources and include files of osgIntrospection.
The modifications I made are very small but they are absolutely usefull to use osgIntrospection with visual studio 7.1 or 8 in debug modes.
This should also solve other minor common problems (converter memory leak, virtual destructor for PropertyInfo, etc...).

I choosed two function names : Reflection::uninitialize() and Type::reset(), this can of course be changed if someone has a better idea...

I made the changes against OSG 2.2.0 public release. I tested the result with VS 7.1, VS 7.1 SP1, VS 8.0 SP1 and AQTime 5.0 on Windows XP SP2... All 4 seem to agree : they detected memory leaks before and don't anymore.

Sorry I haven't take the time to test that on linux but the changes are so small I doubt there could be a problem... I let you check that on your side  :-).

I hope this will help making OSG an even more wonderfull library."
2008-02-25 16:26:30 +00:00
Robert Osfield
fb1b58b2e2 From Stephan Huber, "I missed a refactoring of the handling of modifier-keys, so they did not
work on OS X. Attached you'll find the missing implementation for OS X."
2008-02-25 16:05:53 +00:00
Robert Osfield
69d58d6f7c From Paul Martz, "This change adds "GL_NORMALIZE" and "GL_RESCALE_NORMAL" to .osg IO in place of the hex equivalents." 2008-02-25 15:09:56 +00:00
Robert Osfield
359f056c73 Updated wrappers 2008-02-25 15:08:45 +00:00
Robert Osfield
75b9a9c809 From Robert Osfield and Carlo Camporesi, took submission from Carlo for adding LoadingExternalReferenceMode to ProxyNode and extended it
to include a wider range of options, also completed implementation
2008-02-25 15:07:35 +00:00
Robert Osfield
49641debcb Changed method parameter to use const & 2008-02-25 14:27:57 +00:00
Robert Osfield
55de8b03d9 From Wojciech Lewandowski, "----1----
Attached is a fixed version of OverlayNode.cpp. I fixed CustomPolytope::cut( osg::Plane ) method.  Bug was apparent in such scenario:
 
Let P1 be some random frustum polytope
Let P2 be the polytope that was created from P1 bounding box (P2 contains P1 entirely)
 
Then ignoring precision errors: P1.cut( P2 ) == P2.cut( P1 ) == P1.  But this condition was not always met. Cut failed when some of the polytope reference points happened to lie exactly on some intersecting planes in both P1 & P2  (plane distance was = 0).
 
I only use CustomPolytope for my shadowing stuff so I did not test how this affects rest of OverlayNode.cpp.
 
----2----
 
Also attached is a minor precision improvement for osg::Plane intersect method (double version). 
 
----3----
 
I have also one observation regarding osg::Plane - There are two intersect vertices methods (float and double flavour):
 
inline int intersect(const std::vector<Vec3>& vertices) const
inline int intersect(const std::vector<Vec3d>& vertices) const
 
I guess osg::Plane won't compile when someone changes default vec3 typedef to vec3d. Shouldn't the first method be changed to use vec3f explicitly ? Ie:
 
inline int intersect(const std::vector<Vec3f>& vertices) const"
2008-02-25 14:15:27 +00:00
Robert Osfield
adbc15b5a1 From Glenn Waldron, "As you may recall, we discussed adding ReaderWriter::readObject() overrides to all the image plugins in order to facilitate future archive support. Attached are the necessary modifications. I tested JPEG, but not all the others... the code is identical though. Note that the DDS plugin already contained the readObject() implementations." 2008-02-25 13:25:42 +00:00
Robert Osfield
d003972a5f From Wojciech Lawandowski, "Fixed EllipsoidModel::computeLocalUpVector to use Vec3d instead of Vec3 for
normal computation. Its really small issue, maybe not even worth submitting
;-). But one never knows when inadequate precision hits him.
"
2008-02-25 13:17:30 +00:00
Robert Osfield
847a384101 Updated wrappers 2008-02-25 13:16:36 +00:00
Robert Osfield
c52fdc0c77 Reverted back to previous version of osgtext 2008-02-25 13:07:37 +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
3333ca2b46 From Mathias Froehlich, "I have extended the X11 pbuffer code to use either the complete set of glx 1.3
pbuffer functions or exactly ask for the extensions we need to call the
apropriate glx extension functions for and around pbuffers extensions.
The glx 1.3 version of this functios are prefered. If this is not pressent we
are looking for the glx extensions and check for them.
Prevously we just used some mix of the glx 1.3 functions or the extension
functions without making sure that this extension is present.
"
2008-02-22 18:38:30 +00:00
Robert Osfield
67f1503c7d Refactored osgTerrain so that the interface for setting up layer is more straight forward, and added support into GeometryTechnique for handling multiple layers 2008-02-22 11:52:23 +00:00
Robert Osfield
6516bf4910 Added TextureUnit entry to osg::TransferFunction and osgTerrain::Layer 2008-02-20 12:34:13 +00:00
Robert Osfield
c1a1f742c3 Removed erroneous ; 2008-02-19 16:02:03 +00:00
Robert Osfield
9c24dc7083 Changed the updating of the contextID so that the DisplaySetting::MaxNumberOfGrapicsContexts()
is updated on each new graphics context creation, in keeping with how osgProducer used to do things.
2008-02-19 12:26:19 +00:00
Robert Osfield
61223fa05f Refactor the rendering code to not use iterators, instead using indices as means of avoiding using < and += on STL iterators that have shown to be problematic under Windows 2008-02-19 11:30:39 +00:00
Robert Osfield
fb2726b0db From Philip Lowman, workaround for gcc 3.2.3 bug 2008-02-19 09:49:12 +00:00
Robert Osfield
8e5c3363ef From Stephan Huber, "Attached you'll find some enhancements by Adrian Egli and me for the
carbon-implementation of GraphicsWindow.  Now you can use an AGLDrawable
in conjunction with osgViewer/osgCompositeViewer."

Changes from Robert Osfield, changed std::cout to osg::notify(osg::INFO)
2008-02-18 15:30:55 +00:00
Robert Osfield
e0e862e31a From Rene Molenaar, "Using commandline build system nmake on windows does not work.
This is caused by the OSG_MSVC_VERSIONED_DLL hack.
there are hard-coded paths to place the dll's in the bin /dir that normally would go
in the lib/config (release/debug) dirs. Nmake has different locations for the files (no config dir).
 
 fix: change the macro's in OsgMacroUtils.cmake for the IF(NOT MSVC_IDE) situation.
 Libs go in lib/, and DLLs and executables go in bin/
 To accopmplish this for MSVC_IDE the targets get a "../../bin" prefix,
 for nmake this should be "../bin" (because there are no config folders).

 This fix mimics the behaviour of the MSCV_IDE (visual studio) build system when building with nmake.
 
 Note:
 A change in the main CMakeLists.txt creates the needed plugin directory in the binary dir.
 
 see included files for the changes:
 r7885fix-v2/CMakeModules/OsgMacroUtils.cmake  
 r7885fix-v2/osgWrappers/CMakeLists.txt
 r7885fix-v2/CMakeLists.txt
 
 
The behaviour of visual studio projects (and other build systems) remain unchanged.  
Tested building and installing with nmake and visual studio 8 debug and release.
 "
2008-02-18 15:26:46 +00:00
Robert Osfield
49ef41b373 From Bob Kuehne, "Subject: obj material parse fix
this fix strips whitespace off externally referenced material files.
fixes a bug where the obj listed something like:

 mtllib  FR_PARIS_ESPACE_UNESCO_S.MTL

and then that caused failures in the load later:

 FindFileInPath() : trying /Users/rpk/Downloads/
FR_PARIS_ESPACE_UNESCO_S.MTL ...

this fix simply strips whitespace around that filename before passing
it on to the remainder of the loader."

Changes from Robert Osfield, change std::cout to osg::notify(osg::INFO)
2008-02-18 15:17:42 +00:00
Robert Osfield
e7e8d48980 From Thibault Genessay, "On Dec 16 you introduced a fix to remove internal use of ref_ptr<>'s.
It contained a bug that would cause freed memory to be written again.
Specifically, in FreeTypeLibrary::~FreeTypeLibrary(), calling
font->setImplementation(0); deletes the content pointed to by the
fontImplementation pointer, while the line the immediately follows
tries to access it.

My fix is to make the second instruction part of an else clause rather
than always executed. This way, the fontImplementation->_facade = 0
instruction is only executed when the font implementation is not set
to 0 before (although I have no idea what it is here for and if this
code path is ever followed, since I don't know the plugin's internals
very well).

Attached is the modified FreeTypeLibrary.cpp file."
2008-02-18 15:10:30 +00:00
Robert Osfield
4cf9b9a947 Updated wrappers 2008-02-18 15:02:01 +00:00
Robert Osfield
a97dc84228 Introduced typedef vec_type and value_type into LineSemgment class to allow easier
switching between double and float versions.
2008-02-18 14:51:05 +00:00
Robert Osfield
8b77cc4dac From Bob Kuehne, build fix for OSX/gcc 4.0.1 2008-02-18 14:14:08 +00:00
Robert Osfield
91e35599dc From Brede Johansen, "Here's a fix to the changes regarding the new dispose() function. The
last primary node inside a push-pop level would not get the dispose()
call.  This would result in information from some ancillary records,
like the matrix (transform), being lost.

Changes are made to the latest version in the repository.

Thanks to Terry for the help to find and fix the bug and test the changes."
2008-02-18 13:52:26 +00:00
Robert Osfield
046481ee6e From Bryan Thrall, "moved the prints to a higher notify level
(DEBUG_FP) so they are only printed at the most verbose level."
2008-02-18 13:47:38 +00:00
Robert Osfield
a87c98857c From Paul Martz, "Attached is a modification to OcclusionQueryNode. The copy constructor was failing to initialize all member variables. This change resolves the issue. Thanks to Doug McCorkle for testing and finding the bug." 2008-02-18 13:44:30 +00:00
Robert Osfield
45c6bbb577 Changed constructors to take const pointers 2008-02-15 14:09:44 +00:00
Robert Osfield
3e77fec6c9 Update AUTHORS list for release 2008-01-29 22:14:26 +00:00
Robert Osfield
f945a54203 Updated logs for release 2008-01-29 21:34:38 +00:00
Robert Osfield
cb47e92c26 Updated wrappers 2008-01-29 20:45:51 +00:00
Robert Osfield
ae8713acde Reorganized the static vector used for buffering extensions to prevent an crash on exit. 2008-01-29 12:24:47 +00:00
Robert Osfield
c620786420 Updated versions for OSG-2.3.4 release 2008-01-29 10:28:56 +00:00
Robert Osfield
f0087e821e From Mike Weiblen, "1) best practices suggest that values passed by-reference should be
initialized.
2) explanatory comments are handy when available as notify() messages."
2008-01-28 20:54:14 +00:00
Robert Osfield
e0e98d3426 From Mike Weiblen, "an aesthetic enhancement for displaying important version information." 2008-01-28 20:52:31 +00:00
Robert Osfield
6e0bbbbc6a From Roger James, "A small fix for compiling with OSG_USE_FLOAT_MATRIX" 2008-01-28 20:31:48 +00:00
Robert Osfield
5b9a04997d From Rainer Oder, removed duplicate conditional 2008-01-28 20:27:33 +00:00
Robert Osfield
704a1ac52a Fixed BUILD_REF_DOCS_SEARCHENGINE conditional 2008-01-28 19:54:27 +00:00
Robert Osfield
051259760a Added explict casts to double to prevent VS compiler error 2008-01-28 19:42:16 +00:00
Robert Osfield
1203cb71a7 From Jean-Christophe Lombardo and Robert Osfield, added
BUILD_REF_DOCS_SEARCHENGINE and BUILD_REF_DOCS_TAGFILE options for being
doxygen docs.
2008-01-28 18:29:38 +00:00
Robert Osfield
ed1e21a9bc From Glen Waldon, "This change patches ReaderWriterOSGA.cpp so that it passes along the ReaderWriter::Options to files loaded from inside the archive. Previously it was discarding them.
example:
osgviewer -O noLoadExternalReferenceFiles archive.osga"
2008-01-28 17:00:19 +00:00
Robert Osfield
b45e32afc9 From Stephan Huber, added support for double click event for OSX. 2008-01-28 16:38:39 +00:00
Robert Osfield
6224c99692 From Cedric Pinson, "default white behaviour : osgviewerd -e ogr yourFile
randomize color by feature: osgviewerd -e ogr -O UseRandomColorByFeature
yourFile"
2008-01-28 16:13:42 +00:00
Robert Osfield
54129105a4 Added projectorMatrix parameter support to *SphericalDisplay setup functions and .view, this allows one
to flip, rotate, or turn up side the position of the projector.  Note, projector at base of display is the default.
2008-01-28 15:41:42 +00:00
Robert Osfield
2db7fe500f Added include RenderLeaf to make sure #define's are defined correctly 2008-01-28 15:36:28 +00:00
Stephan Maximilian HUBER
bfb5408eb2 From Stephan Huber: updated XCode project 2008-01-26 20:03:12 +00:00
Robert Osfield
53135ac8ac Removed duplicate declaration of DeleteHandlerPointer 2008-01-24 10:04:33 +00:00
Robert Osfield
60f35e925f Updated ChangeLog, Authors and readme for 2.3.3 release 2008-01-22 11:13:07 +00:00
Robert Osfield
4163f173a0 Added missing checks for null pointers 2008-01-22 10:28:48 +00:00
Robert Osfield
708a4032a4 From Jean-Sebastien Guay, notes on how to enable syntax highlighting in VS. 2008-01-21 18:06:47 +00:00
Robert Osfield
f51bd3ce87 Fixed debug build of Inventor plugin 2008-01-21 17:04:33 +00:00
Robert Osfield
bae83fc69d From Drederic Bouvier, "I noticed the AC3D loader resets database path given as Options,
preventing users to put textures in another directory. This patch adds
the model path to the path list instead of replacing it."
2008-01-21 14:42:52 +00:00
Robert Osfield
f3b160c83a Introduced BUILD_REFERENCE_DOCS option to make it a bit clearer how to enable and build the DoxygenDocs 2008-01-21 14:41:58 +00:00
Robert Osfield
a586d63687 From Cedric Pinson, "you can find as attachement a readerwriter for ogr files (.tab, .gml,
.shp ...) ogr is a part of gdal so i added the build of ogr plugin if
gdal is found. 

to test it
osgviewerd -e ogr file.tab
or
osgviewerd -e ogr file.gml
or
osgviewerd -e ogr file.shp
"
2008-01-21 12:01:55 +00:00
Robert Osfield
5c6869ccc9 Fixed Geometry::removePrimitiveSet method so that it no longer emits a warning when
removing 0 elements form an empty primtive set list.
2008-01-21 12:00:10 +00:00
Robert Osfield
fea3595b43 From Mike Weiblen, restructured GL2Extensions so that they now live in their own GL2Extensions.cpp file rather than in Program.cpp 2008-01-21 11:47:40 +00:00
Robert Osfield
9cab2d59ba Updated version number for 2.3.3 release 2008-01-21 11:40:27 +00:00
Robert Osfield
ff090f59b9 Updated wrappers 2008-01-21 11:39:00 +00:00
Robert Osfield
74ca09d816 Fixed debugged code path and set the minimum number of display lists to retain in cache to the same amount as the number of textures 2008-01-21 11:37:55 +00:00
Robert Osfield
6d3a90219c Removed redundental vertex buffer object flush methods 2008-01-21 11:36:54 +00:00
Robert Osfield
c33695d2e5 Moved useful elements of the old VisualStudio directory into a new PlatformSpecifics/Windows directory 2008-01-21 11:27:57 +00:00
Robert Osfield
76b6ef6368 Added thread safe debugging checking of allocation/deallocations 2008-01-19 18:26:41 +00:00
Robert Osfield
5e9c708582 Added use of ref_ptr<> throughout geometry setup code to prevent memory leaks 2008-01-19 18:25:45 +00:00
Robert Osfield
0a383d857c Added debugging messages to help monitor expiry of inactive children. Debug
messages current #if 0'd out, but added now for future tests when required.
2008-01-19 13:41:43 +00:00
Robert Osfield
d2aaa26c88 Disabled the default enabling of update traversal on osgTerrain::Terrain as this was preventing PagedLOD subgraphs from expiring inactive subgraphs 2008-01-19 13:31:12 +00:00
Robert Osfield
f1bd6a55af Updated wrappers 2008-01-18 21:29:00 +00:00
Robert Osfield
b91df6c867 Removed erroneous const in method parameter 2008-01-18 21:08:42 +00:00
Robert Osfield
7761129f9b From Andy Skinner, build fixes for Solaris. 2008-01-18 21:07:03 +00:00
Robert Osfield
d2d282073c Moved the setting of _clipPlaneNum from the {} body to the intializer list to
avoid reading from an unitialized variable.
2008-01-18 21:01:18 +00:00
Robert Osfield
1cfba8787a From Paul Martz, Hi Robert -- "as you and J-S and I have been discussing on osg-users, this submission changes the clamp mode for the fake white texture applied to non-textured geometry. CLAMP_TO_EDGE will keep the geometry a consistent color across the entire texture coordinate range." 2008-01-18 20:55:16 +00:00
Robert Osfield
574582f206 Added support for rendering skirts into osgTerrain::GeometryTechinque 2008-01-18 16:36:05 +00:00
Robert Osfield
276fd99da9 Added getNumOperationsInQueue() method 2008-01-18 09:17:32 +00:00
Robert Osfield
bb7ba24f59 Commented out debug message 2008-01-17 22:26:29 +00:00
Robert Osfield
fc85978077 Added computation of skirt height for osgTerrain::Terrain height fields. 2008-01-17 22:25:41 +00:00
Robert Osfield
bc6c7fcece Added call to ClusterCullingCallback to determine if the Terrain node is culled
by cluster culling.
2008-01-17 17:10:12 +00:00
Robert Osfield
c855923d93 Added Node to Terrain serialization 2008-01-17 16:41:46 +00:00
Robert Osfield
efdc026114 Fixed the computation of terrain bounding volume so that it properly accounts for
elevation layers
2008-01-17 15:37:35 +00:00
Robert Osfield
ae33e4a459 Changed the Texture clamp mode to CLAMP_TO_EDGE 2008-01-16 15:05:04 +00:00
Robert Osfield
61a4eb94b9 Updated wrappers 2008-01-14 14:53:57 +00:00
Robert Osfield
828851c08a Refactor osgTerrain::ProxyLayer so that it is now a pure Proxy, defering implementations
to an Implementation rather than a subclass of ProxyLayer.  Updating the osgTerrain and GDAL plugins
to comply with this refactor.
2008-01-14 14:53:49 +00:00
Robert Osfield
767bdf4d21 Added back in checks for various verions of gdal 2008-01-14 13:14:38 +00:00
Robert Osfield
c6f3183c6f Updated AUTHORS file and osgversion for 2.3.2 release 2008-01-14 12:14:38 +00:00
Robert Osfield
4a08d8daaa Added geometry shader extension supported check to geometry shader parameter calls 2008-01-14 11:44:04 +00:00
Robert Osfield
276f439ff9 From Colin McDonald, "Multi-texturing fails with recent osg on older graphics cards, due to
use of parameter GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS which is only part
of the standard from 2.0 onwards.  I've updated src/osg/State.cpp, so
that it attempts to be more rigorous regarding OpenGL version and
extension checking."
2008-01-14 11:30:39 +00:00
Robert Osfield
802ac3f803 Updated ChangeLog, date and version number for 2.6.2 release 2008-01-14 11:22:23 +00:00
Robert Osfield
fc149940f7 Updated wrappers 2008-01-14 11:07:30 +00:00
Robert Osfield
4b05e84d59 From Daniel Stien, "When removing a child from a osg::Group, childRemoved is called after the
node has already been erased from the node list, causing childRemoved to be
performed on the consecutive node.

Lines 180 and 182 are swapped in the attached Group.cpp.
"
2008-01-14 10:14:32 +00:00
Robert Osfield
2d407a8c0c From Adrian Egli, made the getHandled() functionality consistent with the rest of the osgGA::MatrixManipulators 2008-01-11 12:16:19 +00:00
Robert Osfield
98365fa82a From Jean-Sebastien Guay, added OSGUTIL_EXPORT for Windows build 2008-01-10 11:08:11 +00:00
Robert Osfield
9d010e14fe From Paul Martz, "his pretty much wraps up the OcclusionQueryNode work. I might make some additional modifications if testing reveals any issues, otherwise it's ready for 2.4." 2008-01-10 11:02:21 +00:00
Robert Osfield
a46eb79311 Indentation/bracket fixes and change of default size 2008-01-09 21:17:10 +00:00
Robert Osfield
2ea2872cfb Simplified the image reading/writing 2008-01-09 21:00:38 +00:00
Robert Osfield
dfa4060465 Adding missing files 2008-01-09 16:56:31 +00:00
Robert Osfield
803f70c2fb Added support for reading and writing osgTerrain objects 2008-01-09 16:35:55 +00:00
Robert Osfield
9bae59bd6e Added setting of UpdateVisitor's FrameStamp and TraversalNumber in updateTraversal() 2008-01-09 14:22:44 +00:00
Robert Osfield
0f2797fc07 From Mike Weiblen, build fix for VS8. 2008-01-09 11:42:19 +00:00
Eric WING
ea8ceb734d Updates to resync Xcode project with current state of repository.
Added several missing plugins (e.g. osgdb_osgShadow, osgdb_osgViewer, osgdb_Terrain).

Added dependency information hoping that the Xcode 3 parallel target building will work now.
2008-01-08 23:20:30 +00:00
Robert Osfield
11db24e6b3 From Colin McDonald, build fixes for Solaris. 2008-01-08 18:13:06 +00:00
Robert Osfield
6ca573dfd3 From Jean-Sebastien Guay, Warning fixes 2008-01-08 17:18:11 +00:00
Robert Osfield
d7d1b382b7 Added support for reading and writing the Terrain's Locator 2008-01-08 16:09:01 +00:00
Robert Osfield
dc79b6bb4d Added writing and reading of inlined HeightField 2008-01-08 15:20:02 +00:00
Robert Osfield
e73134d6fb Removed non standard and redundent /*EOF*/ 2008-01-08 14:38:58 +00:00
Robert Osfield
27714dd538 Updated wrappers 2008-01-08 14:37:09 +00:00
Robert Osfield
578f385760 From Mike Weiblen, support for geometry shaders, and osgeometryshaders example to demonstrate them. 2008-01-08 14:29:44 +00:00
Robert Osfield
a33a0047a4 Fixed warning 2008-01-08 14:22:59 +00:00
Robert Osfield
c37e5eaf18 Added support for MinLevel and MaxLevel for ProxyLayer 2008-01-08 13:56:21 +00:00
Robert Osfield
ff565128af Introduced new osg::discardDeletedOpenGLObjects() methods, and usage of it in
GrpahicsContext::close() to handle cases where deletingOpenGLObjects is no possible,
such as when GraphicsWindowEmbedded is used.
2008-01-08 13:24:29 +00:00
Robert Osfield
f3448d3307 Removed debug info 2008-01-08 13:22:55 +00:00
Robert Osfield
74e5d44538 Reorganised the .osg support for osgTerrain NodeKit to make it more extensible 2008-01-08 13:10:59 +00:00
Robert Osfield
9f412d684c Added OSGUTIL_EXPORTs 2008-01-07 09:47:36 +00:00
Robert Osfield
2caf460300 Added missing #include <osgUtil/Export> 2008-01-06 17:53:21 +00:00
Robert Osfield
57475ed8fe Added exports for Windows build 2008-01-06 10:52:23 +00:00
Robert Osfield
a1c71a253a Fixed date 2008-01-04 20:03:35 +00:00
Robert Osfield
f5ec89e049 From Eric Wing, "Attached are a few Find modules with updates. Among other things, they
contain better support for environmental variables to pre-empt the
autodection default search path order which is very helpful for people
who do automated builds. (I recommend that the remaining modules
consider adding the same system to make things consistent and easier
for those people that want to do the automated builds.)

The CMAKE_PREFIX_PATH has also been added to help people. I don't
recommend adding this to the other modules because it looks like CMake
agreed with my idea and will be adding the support in 2.6. So when
that ships, people will get it for free. (In the meantime, my modules
that do have it, it can be used.)

Finally, I've submitted all of these modules to official CMake plus
more so they will be in the next version of CMake. It looks like I may
need to sort some compatibility issues out with the KDE people who
seem to have conflicting modules, but this is unrelated to the updates
submitted here as OSG already has these conflicts. I figured I would
just sync OSG up with my current/best versions.

Also of note, I added the large batch of Findosg*.cmake modules to
CMake so people building against OpenSceneGraph can use these without
writing their own. I wasn't sure if I should submit them here or not
since they are for building against OSG and not for building OSG
itself. So they are not included.
"
2008-01-04 20:00:18 +00:00
Robert Osfield
5832dadb68 From Glenn Waldron, "I found that osg::Sequence::setDuration(speed,reps) was not changing the animation speed factor as expected. The one-line fix (line 312) is attached" 2008-01-04 15:33:21 +00:00
Robert Osfield
4d042581a6 From Paul Martz, "Correction to size of reserved filed in .attr file, Spec says "149*4" bytes, not "149"" 2008-01-04 15:30:49 +00:00
Robert Osfield
ad5fcbccf6 Updated wrappers 2008-01-04 15:15:48 +00:00
Robert Osfield
35d9107d81 Added catch for handling cases where undefined settings for dislayNum and screenNum are used 2008-01-04 13:57:36 +00:00
Robert Osfield
1bfb630137 Updated data on readme 2008-01-04 12:03:54 +00:00
Robert Osfield
e72f5c0996 Updated AUTHORS file for 2.3.1 release 2008-01-04 12:03:24 +00:00
Robert Osfield
d5db983b90 Updated version number for 2.3.1 release 2008-01-04 11:45:25 +00:00
Robert Osfield
90a66e973c Updated logs for 2.3.1 releae 2008-01-04 11:44:35 +00:00
Robert Osfield
8d5d543600 From Brede Johansen, support for contiuation records. 2008-01-04 11:26:21 +00:00
Robert Osfield
6231c3a5a4 From Paul Martz, completion of .ive and .osg support for OcclusionQueryNode 2008-01-04 11:14:11 +00:00
Robert Osfield
b222d4201c From Paul Martz, "The osgocclusionquery example contained some duplicate code that was also in the core OSG occlusion query code. This change removes the need for that." 2007-12-26 22:00:28 +00:00
Robert Osfield
532d573a06 Updated wrappers 2007-12-26 21:43:10 +00:00
Robert Osfield
2aca19a4e6 From David Callu, further work in support of shapefile support in VirtualPlanetBuilder 2007-12-26 21:39:29 +00:00
Robert Osfield
9d29cc53dc Suppressed reflection of problem templates/typedefs 2007-12-26 21:38:11 +00:00
Robert Osfield
92f7f4c3f5 Replaced values.h with float.h is avoid Windows compile issues 2007-12-25 21:11:27 +00:00
Robert Osfield
17b7f57814 Updated wrappers 2007-12-24 15:37:15 +00:00
Robert Osfield
5e89958623 Fom Brede Johansen, "I have added the OSGPL license to the OpenFlight source files" 2007-12-24 15:32:15 +00:00
Robert Osfield
93127866a8 From Sid Byce, fixes for compiling with gcc 4.3 2007-12-24 15:19:52 +00:00
Robert Osfield
7f30f0038f From Rafa Gaitan, "I have corrected some includes of the quicktime plugin
from Quicktime/Quicktime.h to QuickTime/QuickTime.h.
MacOsX filesystem is normally case insensitive, but in 
my case I changed that option and the quicktime headers
were not found. Now compiles fine and on case insesitive
file systems should work correctly too. "
2007-12-24 14:47:49 +00:00
Robert Osfield
e39bb04c62 From Jason Daly, "I'm still having a problem with SWING animations on sequences. Here's
the fix again, merged with this morning's svn (including the other
Sequence fixes from J-S)."
2007-12-24 14:45:31 +00:00
Robert Osfield
1f0637fdd7 Based on Suggestions from "Harald A" fixed CMake setup of Doxygen docs 2007-12-24 12:56:19 +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
8c5a9ac218 Fixed indentation 2007-12-23 13:08:14 +00:00
Robert Osfield
c57d989fef From Jean-Sebastien Guay, added new version of feetype into search list 2007-12-21 17:56:41 +00:00
Robert Osfield
5a79032599 Added copyright notice and tweaked genwrapper 2007-12-21 17:33:00 +00:00
Robert Osfield
41b52b3d1f Updated wrappers 2007-12-21 17:26:19 +00:00
Robert Osfield
4c46475ca2 From Paul Martz, "added include<alogrithm> to prevent VS8 compile error" 2007-12-21 16:18:54 +00:00
Robert Osfield
39f4419183 Removed OperationArrayFunctor for wrappers to avoid compile errors assocaited with them 2007-12-21 15:54:14 +00:00
Robert Osfield
095288bb47 Removed inappropriate inline 2007-12-21 15:46:50 +00:00
Robert Osfield
6b59b1739f Updated wrappers 2007-12-21 15:04:56 +00:00
Robert Osfield
b052e18f6e From Paul Martz, .osg support for OcclusionQueryNode 2007-12-21 14:49:49 +00:00
Robert Osfield
4889342c4a From Paul Martz, Introduced osg::OcclusionQueryNode with support for OpenGL occlusion query extension 2007-12-21 14:45:16 +00:00
Robert Osfield
5f7a2968ac From Bryan Thrall, "UFOManipulator ignores any attached CoordinateFrameCallback; the
attached files fix this (based on 2.2 release).
"
2007-12-21 14:21:21 +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
9a41178439 From John Kelso,"Attached is the ive reader/writer for the 2.x version of the osg::Sequence
node. "
2007-12-21 14:13:40 +00:00
Robert Osfield
0f2959ce69 From Jeremy Moles, "Here is a implementation of setScreeResolution and
setScreenRefreshRate for systems support Xrandr. The include CMakeFile
makes this optional, and turns it OFF by default, in which case any
person trying to use these functions under Linux will be instructed to
build osgViewer w/ Xrandr support.
"
2007-12-21 13:32:13 +00:00
Robert Osfield
8abeaa1272 Added return 2007-12-21 13:31:25 +00:00
Robert Osfield
9ae1ffe13b From Jean-Sebastien Guay, "When using osg::Sequence you can stop the sequence by setting the mode
to STOP. Subsequently, you can restart it from the beginning by
setting the mode to START. This does not work as expected. The _now
time is not updated while the mode is STOP, which causes the items in
the sequence to flash by very quickly when the mode is set to START.

For example, if the mode was set to STOP and left that way for 30
seconds, and there are 10 items in the sequence, when the mode is set
to START all the items will flash by (in 3 loops) while the _now time
catches up with the real time, and then the sequence will go on at the
rate it should.

This is a simple fix for that, which updates the _now time regardless
of the mode the sequence is in."
2007-12-21 13:18:13 +00:00
Robert Osfield
cf1a30841a From David Callu, various classes in support of VirtualPlanetBuilder 2007-12-21 13:07:54 +00:00
Robert Osfield
2e62206117 From David Callue, added support for reading/writing Vec*dArray to .ive plugin 2007-12-21 12:36:40 +00:00
Robert Osfield
815121b0e8 Updated wrappers 2007-12-20 17:30:31 +00:00
Robert Osfield
2cab28c3b8 Added support for min to max level ranges for Layers in support of VirtualPlanetBuilder usage of this. 2007-12-20 15:51:13 +00:00
Robert Osfield
2c0842c7b7 Added an optional use of doubles for computing error metrics to help investigate precision issues seen in VPB when working with small segments of geographic data. 2007-12-20 15:50:07 +00:00
Robert Osfield
f8253ca4bd Reset the the _lineSpacing to 0.0f to fix the line spacing when word wrapping takes place 2007-12-20 15:40:14 +00:00
Robert Osfield
53be383843 From Wojciech Lewandowski, "By complete coincidence I just have read an old OSG submission mail related
to bugfixes in osg::Polytope.setToUnitFrustum and setToBoundingBox  It was
sent at beginning of december. I read it when purging my Thrash emails and
found it there this because it was wrongly classified as SPAM.

What stroke me in this email was the fact that there was once an error in
Polytope class. Since I adopted CustomPolytope (osgSim OverlayNode.cpp) for
my minimal shadow area computations I checked my code for this error. And I
found it in CustomPolytope::setToUnitFrustum method.
CustomPolytope::setToBoundingBox seemed OK.

So I went back to the origin and fixed this error in OverlayNode.cpp as
well. I have not tested it in OverlayNode though (I don't know how) so
please look at this carefully. But it seems to work fine with my shadow
calculations."
2007-12-20 14:40:28 +00:00
Robert Osfield
3ffe7de6a3 Reorder includes in an attempt to avoid compile problems under Cygwin. 2007-12-20 10:48:23 +00:00
Robert Osfield
da872bb279 Updated AUTHORS files 2007-12-17 21:52:29 +00:00
Robert Osfield
06b2d1ee60 Updated ChangeLog for 2.3.0 release 2007-12-17 21:35:33 +00:00
Robert Osfield
a1ce3ffd9d Updated version number for 2.3.0 dev release 2007-12-17 21:08:52 +00:00
Robert Osfield
9a2bc98d3a From Paul Obermeier, "Please find enclosed the following 2 bug fixes:
File osgShadow/Version.cpp, Line 25:

const char* osgShaodowGetLibraryName()

should be:

const char* osgShadowGetLibraryName()


File CMakeModules/OsgMacroUtils.cmake, Line 224:

SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES DEBUG_POSTFIX ${CMAKE_DEBUG_POSTFIX})

should be:

SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES DEBUG_POSTFIX "${CMAKE_DEBUG_POSTFIX}")

Otherwise setting CMAKE_DEBUG_POSTFIX to an empty string instead of "d" in
the main CMakeLists.txt does not work under Linux.
"
2007-12-17 18:38:21 +00:00
Robert Osfield
d7a2728fea From David Cullu, added various mathematical operators 2007-12-17 17:43:57 +00:00
Robert Osfield
49696d776a From Stephan Huber, "attached you'll find an updated carbon-implementation, which implements
the missing functionality for setWindowName and useCursor
"
2007-12-17 10:24:20 +00:00
Robert Osfield
e883663072 Updated wrappers 2007-12-17 10:22:41 +00:00
Robert Osfield
9507ee6c7d From Wojiech Leandowski, "I earlier wrote about my hassles with archives under Windows. I implemented
64 bit binary compatible OSGA archive reader/writer using mixed
stdio/iostream calls. But during this work I learned that it can be made in
much simpler way.

Attached is result of this new attempt. I hope its appropriate for inclusion
into OSG codebase. It was compiled and tested with latest SVN OSG, Windows
XP 32 bit and Windows Vista business 64 bit. OSG was built using VS 2005
Express SP1 for 32 bit environment and VS 2005 Std for 64 bit.
---
Solution description (there were two problems involved):
---
Problem 1: implicit conversions beetween file positions and 32 bit int. This
could be considered a MS compiler bug because this 32 bit int was
additionally implicitly converted to/from 64 bit. As far as I know compiler
is allowed to make only one implict conversion (but maybe this rule does not
refer to simple types).

Its actually possible to address OSGA files above 4 GiB range using 32 bit
windows iostreams. MS Iostreams in practice offer the same level of
functionality as stdio functions. There are functions fsetpos and fgetpos in
stdio lib which use 64 bit file pointers (fpos_t). These functions are
internally called by seekp( streampos ), seekg( streampos ), tellp(), and
tellg() methods. So its also possible to change and retrieve file postions
using iostream calls. But the problem lies in implicit handling of streampos
type.

streampos type is actually a template class used as seekp, seekg parameter
and returnd from tellp, tellg. Its capable of storing 64 bit file pointers.
But streampos can be also converted to/from simple type streamoff. It has
proper constructor and cast operator. In Win 32 environment streamoff is
defined as long (~32 bit int). So when seekp, and tellp arent used with
exact streampos objects but OSGA_Archive::pos_type complier makes implicit
casts to 32 bit int types loosing important bits of information.

So above problem could be easily handled by making conversion calls
explicit. My code defines 2 functions used to convert back and forth beetwen
64 bit OSGA_Archive::pos_type and std::streampos objects:

       OSGA_Archive::pos_type ARCHIVE_POS( const std::streampos & pos );
       std::streampos STREAM_POS( OSGA_Archive::pos_type & pos );

Rest of the OSGA implementation code was modified to call these conversions
explicitly with seekp, seekg, tellp, tellg.

---
Problem 2: seekp and seekg have two variants. Only one of these variants is
actually 64 bit proof.

When I solved my first problem and made use of explicit streampos conversion
functions, OSGA archive was able to read my example 11 GiB archive. But
there were still problems with write and append. I found that the reason for
this was pair of seekp( 0, std::ios_base::end ) and tellp() calls. It turned
out that use of seekp, seekg( offset, direction ) function variants was
setting file pos pointer to EOF when file was larger than 4GiB. But I
noticed that one arg seekp, seekg ( streampos ) versions worked correctly.
So the solution was to change OSGA write logic a little, and replace
seekp( offset, direction ) with seekp( absolute_pos ) calls.
I achieved this by modifing IndexBlock write method to record and restore
file pos after IndexBlock was written. This modification has the effect that
put pointer is generally kept at the end of file, so there is no need to
repostion to the end before writing the files. This allowed me to get rid of
those problematic seekp( 0, std::ios_base::end ) calls.

There was one place where I could not easily get rid of seekp( 0,
std::ios_base::end ). It was situation where existing OSGA was opened for
appending. I resolved this by computing file length by finding max position
from index block and file block endings. Then I replaced former seekp( 0,
std::ios_base::end ) with  seekp( STREAM_POS( found_file_length ).
---

Description of these changes may sound bit hacky but in practice these were
fairly simple and straightforward modifications. I hope they pass your
review. There is one complex preprocessor condition which I based on few
lines taken from boost positioning.hpp. Boost licence does allow such
reproduction. In case of problems this condition may be easily simplified to
windows only implementation.
"
2007-12-17 09:58:55 +00:00
Robert Osfield
3fcba1bc51 From Jean-Sebastien Guay, "Some clients at my new job noticed that picking did not work with the
osg::Capsule subclass of osg::Shape in an osg::ShapeDrawable. Other
shapes worked fine. So I have fixed this. Code attached.

My modification is in the PrimitiveShapeVisitor, and is based on the
DrawShapeVisitor - I added methods called createCylinderBody and
createHalfSphere, and used them in apply(Cylinder&) and
apply(Capsule&). In my testing they work fine, tested even with
transforms and moving around the scene.
"
2007-12-16 17:57:19 +00:00
Robert Osfield
6eaa273116 Added check to make set up a sequencegroup only happen when required. 2007-12-16 17:53:16 +00:00
Robert Osfield
1e996afe81 From Wojciech Lewandowski, "osgSim::BlinkSequence has sequenceGroup unitialized by default (=NULL ref_ptr). By looking at the code I figured out that unset sequenceGroup is completely correct and thus allowed.
But writing BlinkSequence with empty sequence group caused a crash when IVE was accessing baseTime from NULL address.
 
Atttached is a fix for this situation.
"
2007-12-16 17:46:57 +00:00
Robert Osfield
b76b85770f From Wojiech Lewandowski, "There was a bug in ShadowMap camera view matrix computation. View matrix was wrong when light was directional and shadowed scene was not centered at zero coord. I fixed that and also modified cast distance to much smaller value. With former range it was possible to generate shadows with lowest LODs. " 2007-12-16 17:41:46 +00:00
Robert Osfield
f1154f99bf Fixed HeightField coordinates set up 2007-12-16 17:33:05 +00:00
Robert Osfield
0cdc3e9506 Added intializers. 2007-12-16 17:01:40 +00:00
Robert Osfield
4a79644810 Added support for automatically setting the coordinate system of a shapefile by reading associate .prj file 2007-12-16 16:18:58 +00:00
Robert Osfield
998ba32501 Added parsing of parameters to Viewer constructor. 2007-12-16 13:29:02 +00:00
Robert Osfield
fddcebd479 Added StateSetManipulator for testing purposes, and fixed typo 2007-12-16 13:25:40 +00:00
Robert Osfield
e29423bba9 Removed used of ref_ptr<>'s internally to avoid ciricular calls on destruction. 2007-12-16 13:20:38 +00:00
Robert Osfield
becf6c22ea Added initilizers of variables to FreeTypeFont3D constructors.
Removed unused FreeTypeFontBase class
2007-12-16 12:36:52 +00:00
Robert Osfield
32e43cb789 Fixed handling of DISPLAY variable, and mapped the rest of Producer config settings 2007-12-15 17:16:11 +00:00
Robert Osfield
6d945df96d Commented out rendendent warnings 2007-12-15 17:15:19 +00:00
Robert Osfield
43611a6ff5 commented out rendudent warning 2007-12-15 17:15:05 +00:00
Robert Osfield
8b21b87d96 Added setting of ambient bias uniform 2007-12-15 15:22:00 +00:00
Robert Osfield
af922cc355 Added separate unform variable to keep track of abmient contribution. 2007-12-15 15:19:18 +00:00
Robert Osfield
2ab66d9948 Tweaked the abmient lighting contribution so that the OpenGL vertex lighting has
the ambient light source switched off, and use the fragment shader to add this
contribution back in.
2007-12-15 15:17:51 +00:00
Robert Osfield
9f63b89e6a Refectored the loading of Locator out into its own separate file 2007-12-14 17:40:11 +00:00
Robert Osfield
f7e91fa28e Added Locator::s/getTransformScaledByResolution(bool) to assist with VPB integration 2007-12-13 17:51:43 +00:00
Robert Osfield
3bfa74222b Warning fixes 2007-12-13 16:06:02 +00:00
Robert Osfield
831dc38166 From Andy Skinner, build fixes for Solaris 2007-12-13 15:24:42 +00:00
Robert Osfield
492e01d244 Convert tabs to four spaces 2007-12-13 15:23:21 +00:00
Robert Osfield
0dc71306e7 Fixed memory leak 2007-12-13 14:26:03 +00:00
Robert Osfield
1fbb0a8674 Updated the shapefile attribute IO so that its more streamlined. 2007-12-13 14:16:51 +00:00
Robert Osfield
b6f32a3ed0 Added copy operator to ShapeAttribute to prevent problems when assigned them or use within a vector 2007-12-13 12:30:31 +00:00
Robert Osfield
6cca3b8f49 Added a osgViewer::setSceneData(ref_ptr<Node>) method. 2007-12-12 17:59:06 +00:00
Robert Osfield
213a370c25 Added new setFont(ref_ptr<>) variants to Text and Text3D 2007-12-12 17:48:20 +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
88f3a864ac Updated copyright notices 2007-12-12 16:56:28 +00:00
Robert Osfield
6bb7935dea From Andy Skinner, build fixes for Solaris. 2007-12-12 16:55:13 +00:00
Robert Osfield
6eaace8f6e Added std:: infront of sort call 2007-12-12 11:57:03 +00:00
Robert Osfield
6ca74544bc Added const to operators. 2007-12-12 10:47:58 +00:00
Robert Osfield
afdd141d73 Added std:: in front of find enties 2007-12-12 10:35:47 +00:00
Robert Osfield
33e3054fca From Serge Lages, "Here is a new modification to CMake adding an option (OSG_MSVC_GENERATE_PLUGINS_AND_WRAPPERS_MANIFESTS) to specify if we want to generate or not the manifest files under VS8 for the plugins and the wrappers. It seems that the manifests are needed if we try to load dynamically a core OSG dll." 2007-12-12 09:48:39 +00:00
Robert Osfield
1c2726fd07 From Paul Martz, "Function declaration returns a bool, function body was returning a pointer. Changed body to return (pointer != NULL)." 2007-12-12 09:45:29 +00:00
Robert Osfield
a0d70bbf03 From Cyril Brulebois, removed redundent typedef. 2007-12-11 17:19:40 +00:00
Robert Osfield
4ab22a405b Updated wrappers 2007-12-11 17:01:53 +00:00
Robert Osfield
32e520d5a1 From Brede Johnansen, support for continuation records. 2007-12-11 16:42:10 +00:00
Robert Osfield
ffab16ba2f From Karl Heijdenberg, moved set/getFrameStamp() from osgViewer::View to osg::View. 2007-12-11 16:34:37 +00:00
Robert Osfield
be5f709bdb From Mike Garrity, "There was an on again/off again thread on OSG users about
creating subclasses of osg::Array that referenced data
stored an application's internal data structures. I took
a stab at implementing that and ran into a couple of
downcasts in Geometry.cpp. Enclosed is my take at fixing
those along with a simple example of how to do this."
2007-12-11 15:55:02 +00:00
Robert Osfield
669e86145c Added missing copyright notices 2007-12-11 14:48:51 +00:00
Robert Osfield
f779c3a71a From Mathias Froehlich, "Attached is a change to the PBuffer initialsation code that checks for the GLX
version before issuing commands that require GLX-1.3.

This prevents a crash with open source drivers on linux.
"
2007-12-11 14:39:15 +00:00
Robert Osfield
8062406d54 From Roger James, "The changes are as follows:-
1. DAE object no longer held onto by plugin.
2. Filename to URI conversion now handled internally by plugin.
2. User can supply an external DAE object for use by the plugin.
3. User can supply a std:string object for the plugin to return the URI of
the document just processed.
4. User can supply a std::string to receive the unit name information from
the document just read in. (e.g. meters, inches, etc.)
5. User can supply a float to receive the metric conversion factor from the
document just read in.
6. User can supply an enum to receive the up axis orientation information
from the document just read in.
7. Material transparency can be both read and written.
8. User can supply an experimental GoogleMode option on output. The plugin
will try to emulate the way Sketchup specifies transparency (i.e. the
inverse of what it should be!). I am still struggling to get GE to
understand transparency, anyone know what it expects?
9. Rudimentary support for Collada effect parameters (newparam, setparam,
param) on input. Basic nVidia FX Composer dae documents can now be read.

"
2007-12-11 14:06:45 +00:00
Robert Osfield
3341c42873 Updated wrappers 2007-12-11 12:35:10 +00:00
Robert Osfield
640999dea6 From Tim More, "This submission tries to optimize redundant compilation of StateSets and Drawables
in the DatabasePager. The practical effects of these are to greatly reduce startup time
and the time to load an individual scenery tile in FlightGear.

- From my log message:

   Minimize the number of StateSets and drawables that are compiled by checking
   if they have already been compiled or will be elminated by the
   SharedStateManager.

   Move the sorting of the dataToCompile queue out of compileGLObjects
   into the man pager run function.

   Change the SharedStateManager to use maps instead of vectors."
2007-12-11 12:32:31 +00:00
Robert Osfield
42723fec8f From Joseph Steel, "he change is to initializeExtensionProcs() to
verify the version of the OpenGL implementation before attempting to get the
MaxTextureCoords parameter."
2007-12-11 11:57:32 +00:00
Robert Osfield
880682f138 From Mathias Froelich, "I have cleaned up the state set handling of the osg::ClipNode.
Previously the complete StateSet was cleared, even the non clipping releted
state attributes and modes in this stateset on a call to
setLocalSetateSetModes.
With this change only those modes/attributes are changed that need to be
changed. That is, if a clip plane is removed from the ClipNode, only this
assiciated mode is removed from the state set, instead of throwing away the
whole state set.

In this way we have less surprising results if the state set of a clip node is
used for more state than just the clip state.
"
2007-12-11 11:55:15 +00:00
Robert Osfield
298e07fc72 From Mathias Froechlich, "I have extended the StateSet api with a
StateSet::removeAssociatedModes(const StateAttribute*)

and a

StateSet::removeAssociatedTextureModes(unsigned, const StateAttribute*)

call. These funktions are just missing for a complete api IMO."
2007-12-11 11:42:02 +00:00
Robert Osfield
b467fdeb6c From Alberto Luaces, "it seems that include/osgParticle/BoxPlacer was created from the SectorPlacer
file. The code works well but the SectorPlacer comments stayed in the new
file. I have altered those comments so they now contain valid information for
the BoxPlacer class and the doxygen generated documentation is correct.

"
2007-12-11 11:37:03 +00:00
Robert Osfield
4e5ce63c85 From Per Fahlberg, "Attached is a fix allowing removal of shaders from a program after it is
first compiled. It will also allow new shaders to be attached after the
program is first compiled."
2007-12-11 11:21:13 +00:00
Robert Osfield
62bba8e52b From Sherman Wilcox, "In ESRIShapeParser.cpp, wasn't closing the file handle. Added:
if(fd)
   {
     close(fd);
     fd = 0;
   }


to the constructor."
2007-12-10 20:56:26 +00:00
Robert Osfield
b668a54e17 From Eric Wing, "For osgviewerCocoa, a very simple change to allow toggling between
fullscreen mode and back between views. (To activate, double click on
the view to toggle.) It demonstrates/uses the new one-liner fullscreen
method introduced in Leopard. Code will still compile and run in
pre-Leopard (thanks to Obj-C dynamic/late binding), but code path is
treated as a no-op in those cases."
2007-12-10 20:36:34 +00:00
Robert Osfield
aa24c273c7 Updated wrappers 2007-12-10 20:35:50 +00:00
Robert Osfield
c43606e3fe From Richard Schmidt, fix on ordering to be standard OpenGL way. 2007-12-10 20:33:22 +00:00
Robert Osfield
c5704586f9 From Richard Schmidt, "attached you will find a set of small fixes and features.
CullVisitor/SceneView:

*Feature: This version supports multiple clearnodes in the graph, one per renderstage.

 

Text:

*Feature: Performance Enhancement when calling SetBackdropColor

 

Material:

*Fix: OpenGL calls are now made according to the OpenGL Standard

"
2007-12-10 20:30:05 +00:00
Robert Osfield
9d260213f7 From Ulrich Hertlein, "attached are some fixes and tweaks I made to the .obj loader:
- Material class contained both 'shininess' and 'Ns' member variables
- 'Ns' and 'Ni' are initialized to 0 ('Ni' is unused at the moment)
- only 'Ns' was read from .mtl file but 'shininess' was used for osg::Material
- 'illum' was read from .mtl file but never used; it is now used as follows
-- illum==0 -> no osg::Material created/attached therefore no lighting
-- illum==1 -> osg::Material specular is set to black
-- illum==2 (default) -> specular read from .mtl file is used
- 'map_Kd' and 'map_Ks' may contain additional arguments (e.g. '-s 1 1 1'),
these are now skipped over and the texture filename is properly extracted
"
2007-12-10 20:27:06 +00:00
Robert Osfield
d0cc647986 From David Callu, IO support for Text3D 2007-12-10 19:51:33 +00:00
Robert Osfield
eef88e7e83 From David Callu, Text3D 2007-12-10 19:49:17 +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
1dcb6cc4fd Updated wrappers 2007-12-10 16:21:13 +00:00
Robert Osfield
a59790ed6e Added osgViewerGetVersion() usage to force Windows to link osgViewer. 2007-12-10 16:14:21 +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
Robert Osfield
9b56dbe83a From David Callu, added support for automatically reading associate dbase files 2007-12-10 12:45:16 +00:00
Robert Osfield
13ff9f28d5 Char char[] to char* with new allocation. 2007-12-10 12:00:09 +00:00
Robert Osfield
695df58bc9 Refactored record allocation to fix build errors under Windows. 2007-12-10 11:34:00 +00:00
Robert Osfield
9946cb3b24 Added export macro for windows build 2007-12-10 11:20:22 +00:00
Robert Osfield
0c4648e027 Added include<string.h> to fix compile errors under gcc 4.3 2007-12-10 10:16:13 +00:00
Robert Osfield
8648cd12ea From Gustavo Wagner, fixed bugs in reading M records from shapefile 2007-12-09 16:38:33 +00:00
Robert Osfield
e2ad20a887 From Gino van den Bergen, "I've added the following features to the OSG VRML plugin:
* Support for Box, Sphere, Cone, and Cylinder. These nodes are converted
to osg::Geometry conform the VRML97 spec.
* Backface culling is enabled/disabled according to the "solid" flag for
geometries that are converted from IndexFaceSets.
* PROTO instances can now be used for "appearance" and "geometry" fields
in a Shape node.

The file ReaderWriterVRML2.cpp is adapted for the latest stable public
release:

http://www.openscenegraph.org/svn/osg/OpenSceneGraph/tags/OpenSceneGraph-2.2.0

The changes where needed for being able to read VRML file which are
output by VMD (http://www.ks.uiuc.edu/Research/vmd/). A sample VRML file
is enclosed in this submission.

The plugin has been tested against a number of VRML samples that include
texturing. The texturing is found to be VRML97 compliant for all added
geometry nodes.
"
2007-12-09 16:29:18 +00:00
Robert Osfield
457d3fd7e4 Removed redundent OpenFlightOptimizer 2007-12-09 16:23:19 +00:00
Robert Osfield
df2f9f5f7c From Ralf Karn, fixed "invalid enumerant" warning on TEXTURE_2D_ARRAY_EXT initialization 2007-12-09 16:14:07 +00:00
Robert Osfield
6ff9810be1 From Mihai Radu, "After someone asked for a fix for non-textured object appearing black
with the shader for textured objects. This works very well in cases
where there could be a mix of textured and non-textured objects in the
scene, and it makes the initialization more robust.
The idea is from PSSM, to add a 1pixel texture to the main rendering  as
to provide white for any objects missing textures."
2007-12-09 16:06:14 +00:00
Robert Osfield
2be3992a2f Updated wrappers 2007-12-09 16:01:29 +00:00
Robert Osfield
78c1fd4844 From David Callu, added DBase attribute support for shapefiles 2007-12-09 15:43:49 +00:00
Robert Osfield
5e6bab7de1 Updated wrappers 2007-12-09 14:54:02 +00:00
Robert Osfield
a45d7fdee4 From Aderian Egli, changed the window dimension clamping code to work independantly for width and height. 2007-12-09 12:19:06 +00:00
Robert Osfield
a0c2349438 From Mario Guimaraes, "Currently, in the StateSet::merge method, the rhs state attributes and
modes are not merged into the lhs state when the rhs is PROTECTED. The
changes I'm providing here address this problem."
2007-12-08 17:10:07 +00:00
Robert Osfield
fb65fc5e0a From Serge Lages, "Hi Robert,
You were right about the CMAKE_MODULE_LINKER_FLAGS option for CMake, so here is a modification allowing to not generate the manifest files for the plugins making them a lot more easy to redistribute. I have also made the same modification to the wrappers as they are also put into the osgPlugin folder when generated.
"
2007-12-08 17:04:52 +00:00
Robert Osfield
2d4ef642e6 from Paul Matz, "Understood. Well, I think it's reasonable to assume that the non-env var
case is the more tested case, and therefore it is correct to set
_supportsVertexBufferObjects to the same value as _fastPath. So here's a
change that does the same thing for the env var case."
2007-12-08 17:00:38 +00:00
Robert Osfield
f2d59416aa From Jeremy Moles, Anders Backman and Robert Osfield,
both Jeremy and Anders added static build support as an option, but one was
for Unix and one for Windowsm, but the two mods were also inconsitent in naming
and implementation.  I have had a bash at merging them both, but don't know yet
if these changes will work yet on either configuration... user testing will tell...
2007-12-08 16:52:27 +00:00
Robert Osfield
65bef96a6e From Peter Hrenka, "Due to popular demand I would like to submit this
enhanced version of PolytopeIntersector.


New features of PolytopeIntersector :

* Dimension mask: The user may specify the dimensions of the
   primitives to be tested. Checking polytope-triangle and
   polytope-quad intersections is rather slow so this can
   be turned off.
* Reference plane: The resulting intersections are sorted
   by the distance to this plane.

New memebers of PolytopeIntersector::Intersection :

* distance: Distance of localIntersectionPoint to the reference plane
* maxDistance: Maximum distance of all intersectionPoints to the
   reference plane.
* intersectionPoints: The points intersecting the planes of the polytope
   or points completely inside the polytope.
* localIntersectionPoint: arithmetic mean of all intersection points
* primitiveIndex: Index of the primitive that intersected


I added some more output to the example osgkeyboardmouse."
2007-12-08 16:37:05 +00:00
Robert Osfield
195ed8ba26 From David Cullu and Robert Osfield, David addded a new style of OSG integration with QT by sublcassing from QTWidget and using osgViewer to create the graphics context, Robert added integration of this codes
with the original AdapterWidget implementation still available by default.   The new implementation can be accessed by running:

  osgviewerQT cow.osg --QOSGWidget
2007-12-08 15:46:19 +00:00
Robert Osfield
e7fbacc3b6 From Daniel Larimer, "There was a error with QTUtils.h when compiling on HFS case-sensitive
file system.  The #include<Quicktime/Quicktime.h> line needs to be
replaced with #include<QuickTime/QuickTime.h"
2007-12-08 15:32:16 +00:00
Robert Osfield
5fe9da12c9 From Neil Hughes, "Please find attached a replacement for the 3DS pluggin's ReaderWriter3DS.cpp file. This contains a minor fix (one line added) to ensure that the OSG Material structure is given the name of the material definition within a loaded 3DS file.
"
2007-12-08 15:27:29 +00:00
Robert Osfield
cdb9a0baec From Donald Cipperly, Fixed memory leak in computeIntersections 2007-12-08 15:08:32 +00:00
Robert Osfield
0120bae9f7 From Jeremy Moles, "This extra call to SDL_VideoSetMode() prevents my viewport from getting
all wonky when I resize the SDL window. I'm not sure if this bug has
always existed or not, but according to the SDL documentation this
operation should be safe regardless, and doesn't not introduce the need
for extra memory management (that is: there is no need to "cleanup" the
old screen variable, that is all handled by SDL for us).
"
2007-12-08 15:04:47 +00:00
Robert Osfield
13e8af6305 From Robert Osfield and Richard Schmidt, made fixes inspired by an original submission from Richard which
highlighted problems with Light, ClipPlane and Hint usage in osg::State's usage of cloneType
and reassignment of target/num in StateSet/these StateAttributes.
2007-12-08 13:29:31 +00:00
Robert Osfield
ede9b4ff6b From David Callu, added IO_FluidProgram implementation. 2007-12-08 12:12:05 +00:00
Robert Osfield
71f71f18b6 Added an #include<assert.h> to avoid compile problems on some systems. 2007-12-07 13:42:14 +00:00
Robert Osfield
ab7043ea45 From Tony Horrobin, "Attached is a small fix for the openflight loader with regard to road
segment and construction records.

It just uses the id field to set the name of the osg node as with other
types."
2007-12-07 13:28:02 +00:00
Robert Osfield
4c217b0d1c From Paul Martz, minor typo fixes in notify messages 2007-12-07 13:19:53 +00:00
Robert Osfield
b112e15b13 From Bob Kuehne, added extra event handlers 2007-12-06 17:53:22 +00:00
Robert Osfield
5906e0861c From Farshid Lashkari, "The bmp writer crashes in certain cases. It happens when the computed
size of the image data is greater than the actual image size. This
causes the memcpy call to go out of the array bounds. I modified the
code so that it copies the data during the iteration, instead of
memcpy'ing. This fixes the problems i was having.

If you are curious, the writer was crashing when trying to write an
RGB image that was 2050 x 1280. You might be able to reproduce it by
allocating an empty image of that size and writing it to a file."
2007-12-06 17:44:56 +00:00
Robert Osfield
c07598dc39 From Hautio Jari, "Current version of GraphicsWindowWin32 allows resize to zero height
window. This breaks rendering in for example MFC SDI applications and in
MFC MDI applications if user resizes the window so that client area has
zero height. Current safeguard for minimized window:

LRESULT GraphicsWindowWin32::handleNativeWindowingEvent( HWND hwnd, UINT
uMsg, WPARAM wParam, LPARAM lParam )
...
       /////////////////
       case WM_MOVE    :
       case WM_SIZE    :
       /////////////////
...
               if (clientRect.bottom==0 && clientRect.right==0)
...

does not cover this situation. In these situations clientRect.bottom = 0
and clientRect.right > 0.

Quick fix to this is relax condition:
               if (clientRect.bottom==0 || clientRect.right==0)

Modified file is attached.

Tested with osgviewerMFC from 2.2.0 release (Windows XP sp2)

Before fix:
 - execute from command line osgviewerMFC.exe cow.osg.
 - the cow is rendered nicely.
 - resize window to zero height by dragging from bottom border upwards.
 - resize window back to original height
 - just blue screen, no cow

After fix:
 - execute from command line osgviewerMFC.exe cow.osg.
 - the cow is rendered nicely.
 - resize window to zero height by dragging from bottom border upwards.
 - resize window back to original height
 - the cow is where it is supposed to be.
"
2007-12-06 17:41:20 +00:00
Robert Osfield
b7881943d4 From Serge Lages, "Here are some modifications to the DatabasePager, with the possibility to :
- Get or set the target number of PagedLOD children to remove per frame.
- Get or set the minimum number of inactive PagedLOD to keep.

Corresponding environment variables have been added too.
The default values reproduce the previous DatabasePager behavior."
2007-12-06 17:31:00 +00:00
Robert Osfield
6c09a22957 From Cedric Pinson, fixes for toggle fullscreen on gnome desktop 2007-12-06 17:28:29 +00:00
Robert Osfield
188b196ca6 From Mathias Froehlich, "n examples/osgfadetext/CMakeLists.txt osgSim as dependency is missing." 2007-12-06 17:07:04 +00:00
Robert Osfield
49db32ca3f From Mathias Froehlich, "Add missing includes. Fails on hp-ux." 2007-12-06 17:03:47 +00:00
Robert Osfield
5b305e37b0 From Mathias Froehlich, "Attached is a changed version of osgunittests.cpp. The __FUNCTION__
macro/string value is not portable. Instead the functions name is just put
into the string."
2007-12-06 17:01:22 +00:00
Robert Osfield
6e095c4e60 From Wojiech Leandowski, fixed the hardwiring of archive extensions to 4 charaters 2007-12-06 16:50:43 +00:00
Robert Osfield
8954309c07 Fixed crash in cfg by rearranging the code blocks so the codes that use the graphics context are only called when a graphics context is successfully aquired. 2007-12-06 10:04:25 +00:00
Robert Osfield
abe647fdaa From Ulrich Hertlein, added osgViewer dependency for OSX build 2007-12-06 09:22:41 +00:00
Robert Osfield
9fbec36508 Changed WIN32 guard to _WIN32_IMPLEMENTATION to attempt to avoid Win32 build error 2007-12-05 18:32:15 +00:00
Robert Osfield
0bfdc78f52 Removed debugging line. 2007-12-05 11:29:58 +00:00
Robert Osfield
b164c5e7a6 From Cedric Pinson, first cut at Producer .cfg camera configuration file support. 2007-12-05 11:23:27 +00:00
Robert Osfield
1b1c5bbdd1 Added support for new double Vec*Array classes in various functors. 2007-12-04 14:46:46 +00:00
Robert Osfield
8a4caa0a59 Added optional double support via new Vec3dArray support in osg::Geometry.
To enable double usage set the option string "double" i.e.

  osgviewer myshapefile.shf -O "double"
2007-12-04 14:46:08 +00:00
Robert Osfield
2e821b77a2 Added support for double Vec*Array objects 2007-12-04 14:44:49 +00:00
Robert Osfield
a909a62b85 Added double Vec*Array support 2007-12-04 14:44:21 +00:00
Robert Osfield
3d7fbeca28 Added testPolytope entry 2007-12-04 14:43:14 +00:00
Robert Osfield
6cd4cc682c Fixed the Polytop::setFrustum and setBoundingBox method 2007-12-01 15:30:35 +00:00
Robert Osfield
da9b845558 Added a check against the makeCurrent() return type to make sure that OpenGL
calls are only made if the makeCurrent() is successful.
2007-11-21 10:18:10 +00:00
Robert Osfield
ca9b2dc7db From Colin Dunlop, add --devices support. 2007-11-17 11:50:13 +00:00
Robert Osfield
592d0dfc5b Added support for filename only setup of CompositeLayer on reading/writing. 2007-11-13 17:03:36 +00:00
Eric WING
91e7550ecf Added missing files for qt plugin 2007-11-10 03:43:23 +00:00
Eric WING
15c3ad2b97 For osgdb_freetype:
Ugh. Another fix for the cycle problem. It seems that the SDKROOT didn't necessarily solve the problem, but there were some unneeded library dependencies that weren't in my test fork which allowed my test to work, but caused SVN to fail.
I have removed some of the excess libraries and it seems to build without the Q&A fix.
2007-11-09 20:04:08 +00:00
Eric WING
28b9659593 OpenThreads Version header was mistakenly in Resources.
osg Texture2DArray header was mistakenly in Resources.
2007-11-09 13:16:32 +00:00
Eric WING
fab7c66061 Lots of Leopard information added. 2007-11-09 02:21:16 +00:00
Robert Osfield
94c57ecff5 From Colin Dunlop, added missing header (note from Robert Osfield, this submission was extracted from an inline submission so may be prone to errors). 2007-11-08 10:30:23 +00:00
Eric WING
2888152d52 For Leopard freetype, path is $(SDKROOT)/usr/X11/lib not X11R6. 2007-11-08 10:30:06 +00:00
Robert Osfield
043ed14ba9 From Colin Dunlop, add live video stream support 2007-11-06 12:07:23 +00:00
Robert Osfield
2e2ddba49e Added support for setting volume in xine plugin, manual adjustment of volume
in osgmove example, and clamping to 0 to 1.0 range in quicktime plugin
2007-11-04 16:08:05 +00:00
Robert Osfield
6f47d924d6 Changed the include definition so that it works under Cygwin. 2007-11-04 15:21:48 +00:00
Robert Osfield
6ad176042c Fixed bug in addSlave 2007-11-03 10:32:18 +00:00
Robert Osfield
b7a26ae56a Changed the spherical display intensity map set up to use colours rather than
a second texture unit.
2007-10-31 12:55:59 +00:00
Robert Osfield
316b36fab7 Added getColor method to allow easy reading of individual pixels. 2007-10-31 12:55:15 +00:00
Robert Osfield
c761efb371 Fixed wrap mode for panoramic display. 2007-10-31 11:06:33 +00:00
Robert Osfield
072cd1df8f Changed debug message from NOTICE to INFO. 2007-10-30 14:17:34 +00:00
Eric WING
f98051d4c7 Fix for freetype plugin to be aware of SDKs (i.e. use SDKROOT). 2007-10-29 00:36:47 +00:00
Robert Osfield
3dced3445f Fixed the capitilization of the osgdb_osgfx plugin 2007-10-25 09:00:25 +00:00
Robert Osfield
8b46a624c2 Fixed errors is setup of VBO/EBO's. 2007-10-19 09:58:11 +00:00
Robert Osfield
cc2a0290a4 Fix for setting scene data after slaves have been added. 2007-10-19 08:42:44 +00:00
Robert Osfield
60052a0488 Fixed getOrCreateVertexBufferObject(). 2007-10-19 08:39:07 +00:00
Robert Osfield
aaceb957bc Removed redundent X11/Intrinsic include 2007-10-17 19:01:18 +00:00
Robert Osfield
791035c4e6 Added flv to accepted list video format for the quicktime and xine-lib plugins 2007-10-16 19:04:10 +00:00
Robert Osfield
ef4198dff5 Added flv to accepted list of formats 2007-10-16 19:03:43 +00:00
Robert Osfield
57f961ff2e Added flv to the list of accepted movie types 2007-10-16 19:01:25 +00:00
Eric WING
c67f68a760 Forgot to bump version numbers to 2.2.0. 2007-10-05 11:48:41 +00:00
Eric WING
7e32ff881d Needed to remove dead header from precompiled header file.
Minor fixes to readme.
2007-10-05 11:28:49 +00:00
Robert Osfield
3882ad034c From Mathias Froehlich, "since we patched our hp to an other patchlevel, I need the following to
include/osg/Texture"
2007-10-05 10:46:46 +00:00
Robert Osfield
a5f37a23e2 From Andy Skinner, build fixes for Solaris. 2007-10-05 09:10:04 +00:00
Robert Osfield
b5f681b86f Changed the threading model to single threaded. 2007-10-05 09:03:51 +00:00
952 changed files with 70270 additions and 13220 deletions

View File

@@ -1,6 +1,6 @@
OpenSceneGraph Library 2.2.0
OpenSceneGraph Library 2.4.0
281 Contributors:
307 Contributors:
Firstname Surname
-----------------
@@ -8,116 +8,132 @@ Robert Osfield
Don Burns
Marco Jez
Mike Weiblen
Paul Martz
Eric Wing
Brede Johansen
Geoff Michel
Paul Martz
Farshid Lashkari
Stephan Huber
Farshid Lashkari
Bob Kuehne
Martin Lavery
Ulrich Hertlein
Martin Lavery
Eric Sokolowsky
Mathias Fr<46>hlich
Tree
Mike Wittman
David Callu
Luigi Calori
Trajce Nikolov
Mike Wittman
Jean-Sebastien Guay
Pavel Moloshtan
Tom Jolley
Mathias Fr<46>hlich
Norman Vine
David Callu
Alberto Farre
Andy Skinner
Roger James
Norman Vine
Colin McDonald
Alberto Farre
Andr<EFBFBD> Garneau
Ruben Lopez
Randall Hopper
Wojciech Lewandowski
Olaf Flebbe
Gideon May
Don Tidrow
Romano Jos<6F> Magacho da Silva
Michael Gronager
Daniel Sj<53>lie
Colin McDonald
Chris Hanson
Jean-Sebastien Guay
David Spilling
Andy Skinner
Per Fahlberg
Jeremy Moles
J.P. Delport
David Spilling
Art Tevs
Sherman Wilcox
Joran Jessurun
Jason Beverage
Paul Melis
Jason Daly
Frederic Marmond
David Fries
Boris Bralo
Yefei He
Sondra Iverson
Serge Lages
Rune Schmidt Jensen
Neil Salter
Mike Connell
Jeremy Moles
Jason Daly
Jason Beverage
Ben Discoe
Sasa Bistrovic
Rainer Oder
Paul Melis
Mike Connell
Melchior Franz
Joakim Simonsson
Carlo Camporesi
Ben Discoe
Andreas Ekstrand
Adrian Egli
Sasa Bistrovic
Martin Naylor
Martin Aumueller
Markus Trenkwalder
Loic Dachary
Joakim Simonsson
Joseph Steel
John Shue
Jan Peciva
Jan Ciger
Gordon Tomlinson
Bryan Thrall
Brad Colbert
Art Tevs
Andreas Ekstrand
Vivek Rajan
Stephane Simon
Sherman Wilcox
Sean Spicer
Ravi Mathur
Nikolaus Hanekamp
Neil Salter
Mihai Radu
Michael Platings
Michael Hartman
Laurens Voerman
Joseph Steel
John Shue
David Guthrie
Corbin Holtz
Brad Christiansen
Adrian Egli
Toshiyuki Takahei
Thom DeCarlo
Terry Welsh
Stephane Lamoliatte
Simon Julier
Sebastien Grignard
Romano Magacho
Philip Lowman
Paul de Repentigny
Mihai Radu
Luc Frauciel
Leandro Motta Barros
Jos<EFBFBD> Delport
Carlo Camporesi
Bryan Thrall
John Kelso
Glenn Waldron
Daniel Larimer
Colin Dunlop
Cedric Pinson
Bruce Clay
Alberto Luaces
Alberto Barbati
Vladimir Shabanov
Uwe Woessner
Tony Horrobin
Tim Moore
Thibault Genessay
Sohey Yamamoto
Serge Lages
Roland Smeenk
Richard Schmidt
Rafa Gaitan
Phil Atkin
Peter Hrenka
Neil Hughes
Mattias Linde
Mattias Helsing
Mathieu Marache
Maria Ten
Ken Sewell
Julian Ortiz
John Kelso
Jeremy Bell
James French
Gabor Dorka
Donn Mielcarek
Domenico Mangieri
Daniel Larimer
Charles Cole
Blake Williams
Antoine Hue
@@ -126,18 +142,15 @@ Ali Botorabi
Zach Deedler
Yuzhong Shen
Tugkan Calapoglu
Tony Horrobin
Tim Daoust
Thibault Genessay
Terrex
Sylvain Marie
Steve Lunsford
Stephane Simon
Stephan Eilemann
Stanislav Blinov
Roland Smeenk
Riccardo Corsi
Rafa Giatan
Philip Lowman
Peter Hrenka
Ralf Kern
Perry Miller
Nathan Monteleone
Michael Henheffer
@@ -151,21 +164,22 @@ Joseph Winston
John Aughey
Johan Nouvel
Igor Kravtchenko
Gustavo Wagner
Gino van den Bergen
Gerrick Bivins
George Tarantilis
Garret Potts
Fabio Mierlo
Edgar Ellis
Donald Cipperly
David Ergo
Daniel Trstenjak
Csaba Halasz
Andrew Sampson
Andrew Lorino
Andreas Goebel
Alberto Luaces
Zbigniew Sroczynski
Yuri Vilmanis
Wojciech Lewandowski
Warren Macchi
Wang Lam
Walter J. Altice
@@ -177,26 +191,31 @@ Vasily Radostev
Vaclav Bilek
Tyge
Troy Yee
Tomas Hnilica
Tino Schwarze
Tim Moore
Thom Carlo
Tery Welsh
Tatsuhiro Nishioka
Tanguy Fautr<74>
Sylvan Marie
Sylvain Marie
Sid Byce
Shuxing Xiao
Shane Arnott
Sebastien Kuntz
Sebastian Messerschimdt
Rudolf Wiedemann
Ronny Krueger
Robert Swain
Rick Pingry
Rene Molenaar
Reinhard Sainitzer
Rein Kadijk
Ralf Kern
Qing Shen
Philipp Siemoleit
Philipp M<>chler
Paul Obermeier
Paul Fredrikson
Parag Chaudhur
Panagiotis Papadakos
Orhun Birsoy
Ole-Morten Duesund
Nicolas Brodu
@@ -204,6 +223,7 @@ Nathan Cournia
Morn<EFBFBD> Pistorius
Mirko Viviani
Mikkel Gjøl
Mike Garrity
Michael Polak
Michael Morrison
Michael Logan
@@ -217,38 +237,41 @@ Mason Menninger
Martin Spott
Martin Amueller
Mario Valle
Mario Guimaraes
Marin Lavery
Louis Hamilton
Lewis Harmon
Kristopher Bixler
Karsten Weiss
Karl Heijdenberg
Josh Portway
John Tan
John Grant
John Donovan
John Davis
Joan Abadie
Joakim Simmonsson
Jean-Christophe Lombardo
Jay Zuckerman
Jason Howlett
Jason Ballenger
J.E. Hoffmann
Henrique Bucher
Gustavo Wagner
He Sicong
Hautio Jari
Guillaume Millet
Graeme Harkness
Glenn Waldrom
Gian Lorenzetto
George Papagiannakis
Gary Quinn
Galen Faidley
Frederic Bouvier
Frashid Lashkari
Frank Warmerdam
Frank Lindeman
Frank Lichtenheld
Ferdinand Cornelissen
Fabien Dachicourt
Eric Sokolwsky
Emmanuel Roche
Edmond Gheury
Ed Ralston
Duvan Cope
@@ -256,14 +279,16 @@ Duncan Cavens
Drew Whitehouse
Douglas A. Pouk
Doug McCorkle
Donny Cipperly
Dean Iverson
David Jung
David Gurhrie
Daniel Stien
Dan Minor
Cyril Brulebois
Clay Fowler
Chuck Sembroski
Chuck Seberion
Christian Kaser
Chris McGlone
Carlos Garcea
Bruno Herbelin
@@ -272,6 +297,7 @@ Brandon Hamm
Brad Anderegg
Bora Utka
Blasius Czink
Benoit Laniel
Ben van Basten
Bart Gallet
Axel Volley

View File

@@ -15,9 +15,9 @@ ENDIF(WIN32)
PROJECT(OpenSceneGraph)
SET(OPENSCENEGRAPH_MAJOR_VERSION 2)
SET(OPENSCENEGRAPH_MINOR_VERSION 2)
SET(OPENSCENEGRAPH_MINOR_VERSION 4)
SET(OPENSCENEGRAPH_PATCH_VERSION 0)
SET(OPENSCENEGRAPH_SOVERSION 25)
SET(OPENSCENEGRAPH_SOVERSION 35)
SET(OPENSCENEGRAPH_VERSION ${OPENSCENEGRAPH_MAJOR_VERSION}.${OPENSCENEGRAPH_MINOR_VERSION}.${OPENSCENEGRAPH_PATCH_VERSION})
@@ -120,6 +120,14 @@ ENDIF(OSG_GLU_TESS_CALLBACK_TRIPLEDOT)
IF(WIN32)
# This option is to enable the /MP switch for Visual Studio 2005 and above compilers
OPTION(WIN32_USE_MP "Set to ON to build OpenSceneGraph with the /MP option (Visual Studio 2005 and above)." OFF)
MARK_AS_ADVANCED(WIN32_USE_MP)
IF(WIN32_USE_MP)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP")
ENDIF(WIN32_USE_MP)
ADD_DEFINITIONS(-D_SCL_SECURE_NO_WARNINGS)
ADD_DEFINITIONS(-D_CRT_SECURE_NO_DEPRECATE)
#needed for net plugin
@@ -177,18 +185,29 @@ ENDIF(WIN32)
#luigi#ENDIF(UNIX)
########################################################################################################
OPTION(OSG_USE_FLOAT_MATRIX "Set to ON to build OpenSceneGraph with float matrix instead of double." OFF)
OPTION(OSG_USE_FLOAT_MATRIX "Set to ON to build OpenSceneGraph with float Matrix instead of double." OFF)
MARK_AS_ADVANCED(OSG_USE_FLOAT_MATRIX)
IF(OSG_USE_FLOAT_MATRIX)
ADD_DEFINITIONS(-DOSG_USE_FLOAT_MATRIX)
ENDIF(OSG_USE_FLOAT_MATRIX)
OPTION(OSG_USE_FLOAT_PLANE "Set to ON to build OpenSceneGraph with float matrix instead of double." OFF)
OPTION(OSG_USE_FLOAT_PLANE "Set to ON to build OpenSceneGraph with float Plane instead of double." OFF)
MARK_AS_ADVANCED(OSG_USE_FLOAT_PLANE)
IF(OSG_USE_FLOAT_PLANE)
ADD_DEFINITIONS(-DOSG_USE_FLOAT_PLANE)
ENDIF(OSG_USE_FLOAT_PLANE)
OPTION(OSG_USE_FLOAT_BOUNDINGSPHERE "Set to ON to build OpenSceneGraph with float BoundingSphere instead of double." ON)
MARK_AS_ADVANCED(OSG_USE_FLOAT_BOUNDINGSPHERE)
IF(NOT OSG_USE_FLOAT_BOUNDINGSPHERE)
ADD_DEFINITIONS(-DOSG_USE_DOUBLE_BOUNDINGSPHERE)
ENDIF(NOT OSG_USE_FLOAT_BOUNDINGSPHERE)
OPTION(OSG_USE_FLOAT_BOUNDINGBOX "Set to ON to build OpenSceneGraph with float BoundingBox instead of double." ON)
MARK_AS_ADVANCED(OSG_USE_FLOAT_BOUNDINGBOX)
IF(NOT OSG_USE_FLOAT_BOUNDINGBOX)
ADD_DEFINITIONS(-DOSG_USE_DOUBLE_BOUNDINGBOX)
ENDIF(NOT OSG_USE_FLOAT_BOUNDINGBOX)
################################################################################
# 3rd Party Dependency Stuff
@@ -210,6 +229,7 @@ FIND_PACKAGE(OpenVRML)
FIND_PACKAGE(Performer)
FIND_PACKAGE(ZLIB)
FIND_PACKAGE(GDAL)
FIND_PACKAGE(CURL)
SET(wxWidgets_USE_LIBS base core gl net)
FIND_PACKAGE(wxWidgets)
@@ -291,13 +311,17 @@ ENDIF(NOT DEFINED LIB_POSTFIX)
#SET(OUTPUT_BINDIR ${PROJECT_BINARY_DIR}/bin/${CMAKE_SYSTEM_NAME})
SET(OUTPUT_BINDIR ${PROJECT_BINARY_DIR}/bin)
MAKE_DIRECTORY(${OUTPUT_BINDIR})
IF(MSVC AND NOT MSVC_IDE)
MAKE_DIRECTORY(${OUTPUT_BINDIR}/${OSG_PLUGINS})
ENDIF(MSVC AND NOT MSVC_IDE)
SET(EXECUTABLE_OUTPUT_PATH ${OUTPUT_BINDIR})
#SET(OUTPUT_LIBDIR ${PROJECT_BINARY_DIR}/lib/${CMAKE_SYSTEM_NAME})
SET(OUTPUT_LIBDIR ${PROJECT_BINARY_DIR}/lib)
MAKE_DIRECTORY(${OUTPUT_LIBDIR})
IF(NOT MSVC)
MAKE_DIRECTORY(${OUTPUT_LIBDIR}/${OSG_PLUGINS})
MAKE_DIRECTORY(${OUTPUT_LIBDIR}/${OSG_PLUGINS})
ENDIF(NOT MSVC)
SET(LIBRARY_OUTPUT_PATH ${OUTPUT_LIBDIR})
@@ -443,15 +467,36 @@ IF(APPLE)
ENDIF(APPLE)
OPTION(BUILD_REF_DOCS "Build OpenSceneGraph reference documentation using doxygen (use: make DoxygenDoc)" OFF)
IF(BUILD_REF_DOCS)
SET(BUILD_DOCUMENTATION YES)
OPTION(BUILD_REF_DOCS_SEARCHENGINE "Enable doxygen's search engine (requires that documentation to be installed on a php enabled web server)" OFF)
OPTION(BUILD_REF_DOCS_TAGFILE "Generate a tag file named osg.tag on the documentation web server" OFF)
ENDIF(BUILD_REF_DOCS)
# For Doxygen
#FIXME: I haven't figured out what to do with OSG's multiple doxyfiles
# and footer.
INCLUDE(${CMAKE_ROOT}/Modules/Documentation.cmake OPTIONAL)
OPTION(BUILD_DOCUMENTATION "Build osg documentation" OFF)
# To build the documention, you will have to enable it
# and then do the equivalent of "make DoxygenDoc".
IF(BUILD_DOCUMENTATION)
SET(BUILD_DOCUMENTATION YES)
IF(BUILD_REF_DOCS_SEARCHENGINE)
SET(SEARCHENGINE YES)
ELSE(BUILD_REF_DOCS_SEARCHENGINE)
SET(SEARCHENGINE NO)
ENDIF(BUILD_REF_DOCS_SEARCHENGINE)
IF(BUILD_REF_DOCS_TAGFILE)
SET(GENERATE_TAGFILE "doc/OpenSceneGraphReferenceDocs/osg.tag")
ELSE(BUILD_REF_DOCS_TAGFILE)
SET(GENERATE_TAGFILE "")
ENDIF(BUILD_REF_DOCS_TAGFILE)
IF(DOT)
SET(HAVE_DOT YES)
ELSE(DOT)
@@ -469,7 +514,7 @@ IF(BUILD_DOCUMENTATION)
# It runs the final generated Doxyfile against it.
# The DOT_PATH is substituted into the Doxyfile.
ADD_CUSTOM_TARGET(DoxygenDoc ${DOXYGEN}
${PROJECT_BINARY_DIR}/docs/doxyfile
${PROJECT_BINARY_DIR}/doc/doxyfile
)
ENDIF(BUILD_DOCUMENTATION)

View File

@@ -52,13 +52,14 @@ ENDMACRO(FIND_DEPENDENCY DEPNAME INCLUDEFILE LIBRARY_NAMES SEARCHPATHLIST DEBUGS
MACRO(SEARCH_3RDPARTY OSG_3RDPARTY_BIN)
FIND_DEPENDENCY(TIFF tiff.h libtiff ${OSG_3RDPARTY_BIN} "D")
FIND_DEPENDENCY(FREETYPE ft2build.h "freetype;freetype219;freetype234;freetype234MT" ${OSG_3RDPARTY_BIN} "_D")
FIND_DEPENDENCY(FREETYPE ft2build.h "freetype;freetype234;freetype234MT;freetype235" ${OSG_3RDPARTY_BIN} "_D")
IF(FREETYPE_FOUND)
#forcing subsequent FindFreeType stuff to not search for other variables.... kind of a hack
SET(FREETYPE_INCLUDE_DIR_ft2build ${FREETYPE_INCLUDE_DIR} CACHE PATH "")
SET(FREETYPE_INCLUDE_DIR_freetype2 ${FREETYPE_INCLUDE_DIR} CACHE PATH "")
MARK_AS_ADVANCED(FREETYPE_INCLUDE_DIR_ft2build FREETYPE_INCLUDE_DIR_freetype2)
ENDIF(FREETYPE_FOUND)
FIND_DEPENDENCY(CURL curl/curl.h "libcurl;curllib" ${OSG_3RDPARTY_BIN} "D")
FIND_DEPENDENCY(JPEG jpeglib.h libjpeg ${OSG_3RDPARTY_BIN} "D")
#FIND_DEPENDENCY(GDAL gdal.h "gdal;gdal_i" ${OSG_3RDPARTY_BIN})
FIND_DEPENDENCY(GLUT GL/glut.h glut32 ${OSG_3RDPARTY_BIN} "D")

View File

@@ -25,55 +25,93 @@
# I'm going to attempt to cut out the middleman and hope
# everything still works.
FIND_PATH(FREETYPE_INCLUDE_DIR_ft2build ft2build.h
$ENV{FREETYPE_DIR}
/usr/local/include
/usr/include
/usr/local/X11R6
/usr/X11R6/include
/sw/include
/opt/local/include
/opt/csw/include
/opt/include
/usr/freeware/include/freetype2
PATHS
$ENV{FREETYPE_DIR}
NO_DEFAULT_PATH
PATH_SUFFIXES include
)
FIND_PATH(FREETYPE_INCLUDE_DIR_ft2build ft2build.h
PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
NO_DEFAULT_PATH
PATH_SUFFIXES include
)
FIND_PATH(FREETYPE_INCLUDE_DIR_ft2build ft2build.h
PATHS
/usr/local
/usr
/usr/local/X11R6
/usr/local/X11
/usr/X11R6
/usr/X11
/sw
/opt/local
/opt/csw
/opt
/usr/freeware
PATH_SUFFIXES include
)
FIND_PATH(FREETYPE_INCLUDE_DIR_freetype2 freetype/config/ftheader.h
$ENV{FREETYPE_DIR}/include/freetype2
/usr/local/include/freetype2
/usr/include/freetype2
/usr/local/X11R6/include/freetype2
/usr/X11R6/include/freetype2
/sw/include/freetype2
/opt/local/include/freetype2
/opt/csw/include/freetype2
/opt/include/freetype2
/usr/freeware/include/freetype2
$ENV{FREETYPE_DIR}/include/freetype2
NO_DEFAULT_PATH
)
FIND_PATH(FREETYPE_INCLUDE_DIR_freetype2 freetype/config/ftheader.h
PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
NO_DEFAULT_PATH
PATH_SUFFIXES include/freetype2
)
FIND_PATH(FREETYPE_INCLUDE_DIR_freetype2 freetype/config/ftheader.h
/usr/local/include/freetype2
/usr/include/freetype2
/usr/local/X11R6/include/freetype2
/usr/local/X11/include/freetype2
/usr/X11R6/include/freetype2
/usr/X11/include/freetype2
/sw/include/freetype2
/opt/local/include/freetype2
/opt/csw/include/freetype2
/opt/include/freetype2
/usr/freeware/include/freetype2
)
FIND_LIBRARY(FREETYPE_LIBRARY
NAMES freetype libfreetype freetype219
PATHS
$ENV{FREETYPE_DIR}/lib
$ENV{FREETYPE_DIR}/lib
/usr/local/lib
/usr/lib
/usr/local/X11R6/lib
/usr/X11R6/lib
/sw/lib
/opt/local/lib
/opt/csw/lib
/opt/lib
/usr/freeware/lib64
NAMES freetype libfreetype freetype219
PATHS
$ENV{FREETYPE_DIR}
NO_DEFAULT_PATH
PATH_SUFFIXES lib64 lib
)
FIND_LIBRARY(FREETYPE_LIBRARY
NAMES freetype libfreetype freetype219
PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
NO_DEFAULT_PATH
PATH_SUFFIXES lib64 lib
)
FIND_LIBRARY(FREETYPE_LIBRARY
NAMES freetype libfreetype freetype219
PATHS
/usr/local
/usr
/usr/local/X11R6
/usr/local/X11
/usr/X11R6
/usr/X11
/sw
/opt/local
/opt/csw
/opt
/usr/freeware
PATH_SUFFIXES lib64 lib
)
IF(FREETYPE_INCLUDE_DIR_ft2build AND FREETYPE_INCLUDE_DIR_freetype2)
SET(FREETYPE_INCLUDE_DIRS "${FREETYPE_INCLUDE_DIR_ft2build};${FREETYPE_INCLUDE_DIR_freetype2}")
SET(FREETYPE_INCLUDE_DIRS "${FREETYPE_INCLUDE_DIR_ft2build};${FREETYPE_INCLUDE_DIR_freetype2}")
ENDIF(FREETYPE_INCLUDE_DIR_ft2build AND FREETYPE_INCLUDE_DIR_freetype2)
SET(FREETYPE_FOUND "NO")
IF(FREETYPE_LIBRARY AND FREETYPE_INCLUDE_DIRS)
SET(FREETYPE_FOUND "YES")
SET(FREETYPE_FOUND "YES")
ENDIF(FREETYPE_LIBRARY AND FREETYPE_INCLUDE_DIRS)

View File

@@ -4,55 +4,90 @@
# GDAL_FOUND, if false, do not try to link to gdal
# GDAL_INCLUDE_DIR, where to find the headers
#
# $GDAL_DIR is an environment variable that would
# $GDALDIR is an environment variable that would
# correspond to the ./configure --prefix=$GDAL_DIR
# used in building gdal.
#
# Created by Robert Osfield.
# Created by Eric Wing. I'm not a gdal user, but OpenSceneGraph uses it
# for osgTerrain so I whipped this module together for completeness.
# I actually don't know the conventions or where files are typically
# placed in distros.
# Any real gdal users are encouraged to correct this (but please don't
# break the OS X framework stuff when doing so which is what usually seems
# to happen).
# This makes the presumption that you are include gdal.h like
# #include "gdal.h"
FIND_PATH(GDAL_INCLUDE_DIR gdal.h
${GDAL_DIR}/include
$ENV{GDAL_DIR}/include
$ENV{GDAL_DIR}
$ENV{OSGDIR}/include
$ENV{OSGDIR}
$ENV{OSG_ROOT}/include
~/Library/Frameworks
/Library/Frameworks
/usr/local/include
/usr/include
/usr/include/gdal
/sw/include # Fink
/opt/local/include # DarwinPorts
/opt/csw/include # Blastwave
/opt/include
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/include
/usr/freeware/include
$ENV{GDAL_DIR}
NO_DEFAULT_PATH
PATH_SUFFIXES include
)
FIND_PATH(GDAL_INCLUDE_DIR gdal.h
PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
NO_DEFAULT_PATH
PATH_SUFFIXES include
)
FIND_PATH(GDAL_INCLUDE_DIR gdal.h
PATHS
~/Library/Frameworks/gdal.framework/Headers
/Library/Frameworks/gdal.framework/Headers
/usr/local/include/gdal
/usr/local/include/GDAL
/usr/local/include
/usr/include/gdal
/usr/include/GDAL
/usr/include
/sw/include/gdal
/sw/include/GDAL
/sw/include # Fink
/opt/local/include/gdal
/opt/local/include/GDAL
/opt/local/include # DarwinPorts
/opt/csw/include/gdal
/opt/csw/include/GDAL
/opt/csw/include # Blastwave
/opt/include/gdal
/opt/include/GDAL
/opt/include
)
FIND_LIBRARY(GDAL_LIBRARY
NAMES gdal gdal_i gdal1.4.0 gdal1.3.2
PATHS
${GDAL_DIR}/lib
$ENV{GDAL_DIR}/lib
$ENV{GDAL_DIR}
$ENV{OSGDIR}/lib
$ENV{OSGDIR}
$ENV{OSG_ROOT}/lib
NAMES gdal gdal_i gdal1.5.0 gdal1.4.0 gdal1.3.2 GDAL
PATHS
$ENV{GDAL_DIR}
NO_DEFAULT_PATH
PATH_SUFFIXES lib64 lib
)
FIND_LIBRARY(GDAL_LIBRARY
NAMES gdal gdal_i gdal1.5.0 gdal1.4.0 gdal1.3.2 GDAL
PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
NO_DEFAULT_PATH
PATH_SUFFIXES lib64 lib
)
FIND_LIBRARY(GDAL_LIBRARY
NAMES gdal gdal_i gdal1.5.0 gdal1.4.0 gdal1.3.2 GDAL
PATHS
~/Library/Frameworks
/Library/Frameworks
/usr/local/lib
/usr/lib
/sw/lib
/opt/local/lib
/opt/csw/lib
/opt/lib
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/lib
/usr/freeware/lib64
/usr/local
/usr
/sw
/opt/local
/opt/csw
/opt
/usr/freeware
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;GDAL_ROOT]/lib
PATH_SUFFIXES lib64 lib
)
SET(GDAL_FOUND "NO")
IF(GDAL_LIBRARY AND GDAL_INCLUDE_DIR)
SET(GDAL_FOUND "YES")
SET(GDAL_FOUND "YES")
ENDIF(GDAL_LIBRARY AND GDAL_INCLUDE_DIR)

View File

@@ -1,56 +1,74 @@
# Locate gdal
# This module defines
# GIFLIB_LIBRARY
# GIFLIB_FOUND, if false, do not try to link to gdal
# GIFLIB_FOUND, if false, do not try to link
# GIFLIB_INCLUDE_DIR, where to find the headers
#
# $GIFLIB_DIR is an environment variable that would
# correspond to the ./configure --prefix=$GIFLIB_DIR
# used in building gdal.
#
# Created by Eric Wing.
FIND_PATH(GIFLIB_INCLUDE_DIR gif_lib.h
$ENV{GIFLIB_DIR}/include
$ENV{GIFLIB_DIR}
$ENV{OSGDIR}/include
$ENV{OSGDIR}
$ENV{OSG_ROOT}/include
~/Library/Frameworks
/Library/Frameworks
/usr/local/include
/usr/include
/sw/include # Fink
/opt/local/include # DarwinPorts
/opt/csw/include # Blastwave
/opt/include
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/include
/usr/freeware/include
PATHS
$ENV{GIFLIB_DIR}
NO_DEFAULT_PATH
PATH_SUFFIXES include
)
FIND_PATH(GIFLIB_INCLUDE_DIR gif_lib.h
PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
NO_DEFAULT_PATH
PATH_SUFFIXES include
)
FIND_PATH(GIFLIB_INCLUDE_DIR gif_lib.h
PATHS
~/Library/Frameworks
/Library/Frameworks
/usr/local/include
/usr/include
/sw/include # Fink
/opt/local/include # DarwinPorts
/opt/csw/include # Blastwave
/opt/include
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/include
/usr/freeware/include
)
FIND_LIBRARY(GIFLIB_LIBRARY
NAMES gif ungif libgif libungif
PATHS
$ENV{GIFLIB_DIR}/lib
$ENV{GIFLIB_DIR}
$ENV{OSGDIR}/lib
$ENV{OSGDIR}
$ENV{OSG_ROOT}/lib
~/Library/Frameworks
/Library/Frameworks
/usr/local/lib
/usr/lib
/sw/lib
/opt/local/lib
/opt/csw/lib
/opt/lib
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/lib
/usr/freeware/lib64
NAMES gif ungif libgif libungif
PATHS
$ENV{GIFLIB_DIR}
NO_DEFAULT_PATH
PATH_SUFFIXES lib64 lib
)
FIND_LIBRARY(GIFLIB_LIBRARY
NAMES gif ungif libgif libungif
PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
NO_DEFAULT_PATH
PATH_SUFFIXES lib64 lib
)
FIND_LIBRARY(GIFLIB_LIBRARY
NAMES gif ungif libgif libungif
PATHS
~/Library/Frameworks
/Library/Frameworks
/usr/local
/usr
/sw
/opt/local
/opt/csw
/opt
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]
/usr/freeware
PATH_SUFFIXES lib64 lib
)
SET(GIFLIB_FOUND "NO")
IF(GIFLIB_LIBRARY AND GIFLIB_INCLUDE_DIR)
SET(GIFLIB_FOUND "YES")
SET(GIFLIB_FOUND "YES")
ENDIF(GIFLIB_LIBRARY AND GIFLIB_INCLUDE_DIR)

View File

@@ -53,7 +53,7 @@ FIND_LIBRARY(INVENTOR_LIBRARY_DEBUG
)
IF(NOT INVENTOR_LIBRARY_DEBUG)
IF(INVENTOR_LIBRARY)
SET(INVENTOR_LIBRARY_DEBUG INVENTOR_LIBRARY)
SET(INVENTOR_LIBRARY_DEBUG ${INVENTOR_LIBRARY})
ENDIF(INVENTOR_LIBRARY)
ENDIF(NOT INVENTOR_LIBRARY_DEBUG)

View File

@@ -43,36 +43,36 @@
# may change.
FIND_PATH(OPENTHREADS_INCLUDE_DIR OpenThreads/Thread
PATHS
$ENV{OPENTHREADS_INCLUDE_DIR}
$ENV{OPENTHREADS_DIR}/include
$ENV{OPENTHREADS_DIR}
$ENV{OSG_INCLUDE_DIR}
$ENV{OSG_DIR}/include
$ENV{OSG_DIR}
$ENV{OSGDIR}/include
$ENV{OSGDIR}
NO_DEFAULT_PATH
)
IF(NOT OPENTHREADS_INCLUDE_DIR)
FIND_PATH(OPENTHREADS_INCLUDE_DIR OpenThreads/Thread
PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
PATH_SUFFIXES include
)
ENDIF(NOT OPENTHREADS_INCLUDE_DIR)
FIND_PATH(OPENTHREADS_INCLUDE_DIR OpenThreads/Thread
PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
NO_DEFAULT_PATH
PATH_SUFFIXES include
)
IF(NOT OPENTHREADS_INCLUDE_DIR)
FIND_PATH(OPENTHREADS_INCLUDE_DIR OpenThreads/Thread
~/Library/Frameworks
/Library/Frameworks
/usr/local/include
/usr/include
/sw/include # Fink
/opt/local/include # DarwinPorts
/opt/csw/include # Blastwave
/opt/include
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OpenThreads_ROOT]/include
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/include
)
ENDIF(NOT OPENTHREADS_INCLUDE_DIR)
FIND_PATH(OPENTHREADS_INCLUDE_DIR OpenThreads/Thread
~/Library/Frameworks
/Library/Frameworks
/usr/local/include
/usr/include
/sw/include # Fink
/opt/local/include # DarwinPorts
/opt/csw/include # Blastwave
/opt/include
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OpenThreads_ROOT]/include
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/include
)
FIND_LIBRARY(OPENTHREADS_LIBRARY
@@ -86,39 +86,39 @@ FIND_LIBRARY(OPENTHREADS_LIBRARY
$ENV{OSG_DIR}/lib64
$ENV{OSG_DIR}/lib
$ENV{OSG_DIR}
$ENV{OSGDIR}/lib64
$ENV{OSGDIR}/lib
$ENV{OSGDIR}
NO_DEFAULT_PATH
)
IF(NOT OPENTHREADS_LIBRARY)
FIND_LIBRARY(OPENTHREADS_LIBRARY
NAMES OpenThreads OpenThreadsWin32
PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
PATH_SUFFIXES lib64 lib
)
ENDIF(NOT OPENTHREADS_LIBRARY)
FIND_LIBRARY(OPENTHREADS_LIBRARY
NAMES OpenThreads OpenThreadsWin32
PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
NO_DEFAULT_PATH
PATH_SUFFIXES lib64 lib
)
IF(NOT OPENTHREADS_LIBRARY)
FIND_LIBRARY(OPENTHREADS_LIBRARY
NAMES OpenThreads OpenThreadsWin32
PATHS
~/Library/Frameworks
/Library/Frameworks
/usr/local/lib64
/usr/local/lib
/usr/lib64
/usr/lib
/sw/lib64
/sw/lib
/opt/local/lib64
/opt/local/lib
/opt/csw/lib64
/opt/csw/lib
/opt/lib64
/opt/lib
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OpenThreads_ROOT]/lib
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/lib
)
ENDIF(NOT OPENTHREADS_LIBRARY)
FIND_LIBRARY(OPENTHREADS_LIBRARY
NAMES OpenThreads OpenThreadsWin32
PATHS
~/Library/Frameworks
/Library/Frameworks
/usr/local/lib64
/usr/local/lib
/usr/lib64
/usr/lib
/sw/lib64
/sw/lib
/opt/local/lib64
/opt/local/lib
/opt/csw/lib64
/opt/csw/lib
/opt/lib64
/opt/lib
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OpenThreads_ROOT]/lib
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/lib
)
FIND_LIBRARY(OPENTHREADS_LIBRARY_DEBUG
@@ -133,40 +133,37 @@ FIND_LIBRARY(OPENTHREADS_LIBRARY_DEBUG
$ENV{OSG_DIR}/lib64
$ENV{OSG_DIR}/lib
$ENV{OSG_DIR}
${CMAKE_PREFIX_PATH}/lib64
${CMAKE_PREFIX_PATH}/lib
${CMAKE_PREFIX_PATH}
$ENV{OSGDIR}/lib64
$ENV{OSGDIR}/lib
$ENV{OSGDIR}
NO_DEFAULT_PATH
)
IF(NOT OPENTHREADS_LIBRARY_DEBUG)
FIND_LIBRARY(OPENTHREADS_LIBRARY_DEBUG
NAMES OpenThreadsd OpenThreadsWin32d
PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
PATH_SUFFIXES lib64 lib
)
ENDIF(NOT OPENTHREADS_LIBRARY_DEBUG)
FIND_LIBRARY(OPENTHREADS_LIBRARY_DEBUG
NAMES OpenThreadsd OpenThreadsWin32d
PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
NO_DEFAULT_PATH
PATH_SUFFIXES lib64 lib
)
IF(NOT OPENTHREADS_LIBRARY_DEBUG)
FIND_LIBRARY(OPENTHREADS_LIBRARY_DEBUG
NAMES OpenThreadsd OpenThreadsWin32d
PATHS
/usr/local/lib64
/usr/local/lib
/usr/lib64
/usr/lib
/sw/lib64
/sw/lib
/opt/local/lib64
/opt/local/lib
/opt/csw/lib64
/opt/csw/lib
/opt/lib64
/opt/lib
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OpenThreads_ROOT]/lib
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/lib
)
ENDIF(NOT OPENTHREADS_LIBRARY_DEBUG)
FIND_LIBRARY(OPENTHREADS_LIBRARY_DEBUG
NAMES OpenThreadsd OpenThreadsWin32d
PATHS
/usr/local/lib64
/usr/local/lib
/usr/lib64
/usr/lib
/sw/lib64
/sw/lib
/opt/local/lib64
/opt/local/lib
/opt/csw/lib64
/opt/csw/lib
/opt/lib64
/opt/lib
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OpenThreads_ROOT]/lib
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/lib
)
IF(OPENTHREADS_LIBRARY)

View File

@@ -6,7 +6,6 @@
#
# $QUICKTIME_DIR is an environment variable that would
# correspond to the ./configure --prefix=$QUICKTIME_DIR
# used in building gdal.
#
# Created by Eric Wing.
@@ -14,19 +13,37 @@
# so I am going to case the two.
IF(APPLE)
FIND_PATH(QUICKTIME_INCLUDE_DIR QuickTime/QuickTime.h)
FIND_LIBRARY(QUICKTIME_LIBRARY QuickTime)
FIND_PATH(QUICKTIME_INCLUDE_DIR QuickTime/QuickTime.h)
FIND_LIBRARY(QUICKTIME_LIBRARY QuickTime)
ELSE(APPLE)
FIND_PATH(QUICKTIME_INCLUDE_DIR QuickTime.h
$ENV{QUICKTIME_DIR}/include
$ENV{QUICKTIME_DIR}
)
FIND_LIBRARY(QUICKTIME_LIBRARY QuickTime)
FIND_PATH(QUICKTIME_INCLUDE_DIR QuickTime.h
$ENV{QUICKTIME_DIR}/include
$ENV{QUICKTIME_DIR}
NO_DEFAULT_PATH
)
FIND_PATH(QUICKTIME_INCLUDE_DIR QuickTime.h
PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
NO_DEFAULT_PATH
PATH_SUFFIXES include
)
FIND_PATH(QUICKTIME_INCLUDE_DIR QuickTime.h)
FIND_LIBRARY(QUICKTIME_LIBRARY QuickTime
$ENV{QUICKTIME_DIR}/lib
$ENV{QUICKTIME_DIR}
NO_DEFAULT_PATH
)
FIND_LIBRARY(QUICKTIME_LIBRARY QuickTime
PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
NO_DEFAULT_PATH
PATH_SUFFIXES lib64 lib
)
FIND_LIBRARY(QUICKTIME_LIBRARY QuickTime)
ENDIF(APPLE)
SET(QUICKTIME_FOUND "NO")
IF(QUICKTIME_LIBRARY AND QUICKTIME_INCLUDE_DIR)
SET(QUICKTIME_FOUND "YES")
SET(QUICKTIME_FOUND "YES")
ENDIF(QUICKTIME_LIBRARY AND QUICKTIME_INCLUDE_DIR)

View File

@@ -22,17 +22,20 @@ ENDMACRO(LINK_WITH_VARIABLES TRGTNAME)
MACRO(LINK_INTERNAL TRGTNAME)
FOREACH(LINKLIB ${ARGN})
IF(MSVC AND OSG_MSVC_VERSIONED_DLL)
#when using versioned names, the .dll name differ from .lib name, there is a problem with that:
#CMake 2.4.7, at least seem to use PREFIX instead of IMPORT_PREFIX for computing linkage info to use into projects,
# so we full path name to specify linkage, this prevent automatic inferencing of dependencies, so we add explicit depemdencies
#to library targets used
TARGET_LINK_LIBRARIES(${TRGTNAME} optimized "${OUTPUT_LIBDIR}/${LINKLIB}" debug "${OUTPUT_LIBDIR}/${LINKLIB}${CMAKE_DEBUG_POSTFIX}")
ADD_DEPENDENCIES(${TRGTNAME} ${LINKLIB})
ELSE(MSVC AND OSG_MSVC_VERSIONED_DLL)
TARGET_LINK_LIBRARIES(${TRGTNAME} optimized "${LINKLIB}" debug "${LINKLIB}${CMAKE_DEBUG_POSTFIX}")
ENDIF(MSVC AND OSG_MSVC_VERSIONED_DLL)
IF(MSVC AND OSG_MSVC_VERSIONED_DLL)
#when using versioned names, the .dll name differ from .lib name, there is a problem with that:
#CMake 2.4.7, at least seem to use PREFIX instead of IMPORT_PREFIX for computing linkage info to use into projects,
# so we full path name to specify linkage, this prevent automatic inferencing of dependencies, so we add explicit depemdencies
#to library targets used
IF(NOT MSVC_IDE)
TARGET_LINK_LIBRARIES(${TRGTNAME} optimized "${OUTPUT_LIBDIR}/${LINKLIB}.lib" debug "${OUTPUT_LIBDIR}/${LINKLIB}${CMAKE_DEBUG_POSTFIX}.lib")
ELSE(NOT MSVC_IDE)
TARGET_LINK_LIBRARIES(${TRGTNAME} optimized "${OUTPUT_LIBDIR}/${LINKLIB}" debug "${OUTPUT_LIBDIR}/${LINKLIB}${CMAKE_DEBUG_POSTFIX}")
ENDIF(NOT MSVC_IDE)
ADD_DEPENDENCIES(${TRGTNAME} ${LINKLIB})
ELSE(MSVC AND OSG_MSVC_VERSIONED_DLL)
TARGET_LINK_LIBRARIES(${TRGTNAME} optimized "${LINKLIB}" debug "${LINKLIB}${CMAKE_DEBUG_POSTFIX}")
ENDIF(MSVC AND OSG_MSVC_VERSIONED_DLL)
ENDFOREACH(LINKLIB)
ENDMACRO(LINK_INTERNAL TRGTNAME)
@@ -95,7 +98,7 @@ MACRO(SETUP_LINK_LIBRARIES)
# FOREACH(LINKLIB ${TARGET_LIBRARIES})
# TARGET_LINK_LIBRARIES(${TARGET_TARGETNAME} optimized ${LINKLIB} debug "${LINKLIB}${CMAKE_DEBUG_POSTFIX}")
# ENDFOREACH(LINKLIB)
LINK_INTERNAL(${TARGET_TARGETNAME} ${TARGET_LIBRARIES})
LINK_INTERNAL(${TARGET_TARGETNAME} ${TARGET_LIBRARIES})
FOREACH(LINKLIB ${TARGET_EXTERNAL_LIBRARIES})
TARGET_LINK_LIBRARIES(${TARGET_TARGETNAME} ${LINKLIB})
ENDFOREACH(LINKLIB)
@@ -103,8 +106,8 @@ MACRO(SETUP_LINK_LIBRARIES)
LINK_WITH_VARIABLES(${TARGET_TARGETNAME} ${TARGET_LIBRARIES_VARS})
ENDIF(TARGET_LIBRARIES_VARS)
IF(MSVC AND OSG_MSVC_VERSIONED_DLL)
#when using full path name to specify linkage, it seems that already linked libs must be specified
LINK_EXTERNAL(${TARGET_TARGETNAME} ${OPENGL_LIBRARIES})
#when using full path name to specify linkage, it seems that already linked libs must be specified
LINK_EXTERNAL(${TARGET_TARGETNAME} ${OPENGL_LIBRARIES})
ENDIF(MSVC AND OSG_MSVC_VERSIONED_DLL)
ENDMACRO(SETUP_LINK_LIBRARIES)
@@ -140,24 +143,28 @@ MACRO(SETUP_PLUGIN PLUGIN_NAME)
IF(NOT MSVC)
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES DEBUG_POSTFIX "")
ELSE(NOT MSVC)
IF(OSG_MSVC_VERSIONED_DLL)
#this is a hack... the build place is set to lib/<debug or release> by LIBARARY_OUTPUT_PATH equal to OUTPUT_LIBDIR
#the .lib will be crated in ../ so going straight in lib by the IMPORT_PREFIX property
#because we want dll placed in OUTPUT_BINDIR ie the bin folder sibling of lib, we can use ../../bin to go there,
#it is hardcoded, we should compute OUTPUT_BINDIR position relative to OUTPUT_LIBDIR ... to be implemented
#changing bin to something else breaks this hack
#the dll are placed in bin/${OSG_PLUGINS}
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES PREFIX "../../bin/${OSG_PLUGINS}/")
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES IMPORT_PREFIX "../")
ELSE(OSG_MSVC_VERSIONED_DLL)
#in standard mode (unversioned) the .lib and .dll are placed in lib/<debug or release>/${OSG_PLUGINS}.
#here the PREFIX property has been used, the same result would be accomplidhe by prepending ${OSG_PLUGINS}/ to OUTPUT_NAME target property
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES PREFIX "${OSG_PLUGINS}/")
ENDIF(OSG_MSVC_VERSIONED_DLL)
IF(OSG_MSVC_VERSIONED_DLL)
#this is a hack... the build place is set to lib/<debug or release> by LIBARARY_OUTPUT_PATH equal to OUTPUT_LIBDIR
#the .lib will be crated in ../ so going straight in lib by the IMPORT_PREFIX property
#because we want dll placed in OUTPUT_BINDIR ie the bin folder sibling of lib, we can use ../../bin to go there,
#it is hardcoded, we should compute OUTPUT_BINDIR position relative to OUTPUT_LIBDIR ... to be implemented
#changing bin to something else breaks this hack
#the dll are placed in bin/${OSG_PLUGINS}
IF(NOT MSVC_IDE)
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES PREFIX "../bin/${OSG_PLUGINS}/")
ELSE(NOT MSVC_IDE)
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES PREFIX "../../bin/${OSG_PLUGINS}/" IMPORT_PREFIX "../")
ENDIF(NOT MSVC_IDE)
ELSE(OSG_MSVC_VERSIONED_DLL)
#in standard mode (unversioned) the .lib and .dll are placed in lib/<debug or release>/${OSG_PLUGINS}.
#here the PREFIX property has been used, the same result would be accomplidhe by prepending ${OSG_PLUGINS}/ to OUTPUT_NAME target property
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES PREFIX "${OSG_PLUGINS}/")
ENDIF(OSG_MSVC_VERSIONED_DLL)
ENDIF(NOT MSVC)
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES PROJECT_LABEL "${TARGET_LABEL}")
@@ -221,11 +228,11 @@ MACRO(SETUP_EXE IS_COMMANDLINE_APP)
ENDIF(${IS_COMMANDLINE_APP})
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES PROJECT_LABEL "${TARGET_LABEL}")
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES DEBUG_POSTFIX ${CMAKE_DEBUG_POSTFIX})
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES DEBUG_POSTFIX "${CMAKE_DEBUG_POSTFIX}")
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES OUTPUT_NAME ${TARGET_NAME})
IF(MSVC AND OSG_MSVC_VERSIONED_DLL)
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES PREFIX "../")
ENDIF(MSVC AND OSG_MSVC_VERSIONED_DLL)
IF(MSVC_IDE AND OSG_MSVC_VERSIONED_DLL)
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES PREFIX "../")
ENDIF(MSVC_IDE AND OSG_MSVC_VERSIONED_DLL)
SETUP_LINK_LIBRARIES()
ENDMACRO(SETUP_EXE)
@@ -299,10 +306,22 @@ MACRO(HANDLE_MSVC_DLL)
ELSE(${ARGC} GREATER 1)
SET(LIB_SOVERSION ${OPENSCENEGRAPH_SOVERSION})
ENDIF(${ARGC} GREATER 1)
SET_TARGET_PROPERTIES(${LIB_NAME} PROPERTIES PREFIX "../../bin/${LIB_PREFIX}${LIB_SOVERSION}-")
SET_TARGET_PROPERTIES(${LIB_NAME} PROPERTIES IMPORT_PREFIX "../")
IF(NOT MSVC_IDE)
SET_TARGET_PROPERTIES(${LIB_NAME} PROPERTIES PREFIX "../bin/${LIB_PREFIX}${LIB_SOVERSION}-")
SET(NEW_LIB_NAME "${OUTPUT_BINDIR}/${LIB_PREFIX}${LIB_SOVERSION}-${LIB_NAME}")
ADD_CUSTOM_COMMAND(
TARGET ${LIB_NAME}
POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy "${NEW_LIB_NAME}.lib" "${OUTPUT_LIBDIR}/${LIB_NAME}.lib"
COMMAND ${CMAKE_COMMAND} -E copy "${NEW_LIB_NAME}.exp" "${OUTPUT_LIBDIR}/${LIB_NAME}.exp"
COMMAND ${CMAKE_COMMAND} -E remove "${NEW_LIB_NAME}.lib"
COMMAND ${CMAKE_COMMAND} -E remove "${NEW_LIB_NAME}.exp"
)
ELSE(NOT MSVC_IDE)
SET_TARGET_PROPERTIES(${LIB_NAME} PROPERTIES PREFIX "../../bin/${LIB_PREFIX}${LIB_SOVERSION}-" IMPORT_PREFIX "../")
ENDIF(NOT MSVC_IDE)
# SET_TARGET_PROPERTIES(${LIB_NAME} PROPERTIES PREFIX "../../bin/osg${OPENSCENEGRAPH_SOVERSION}-")
# SET_TARGET_PROPERTIES(${LIB_NAME} PROPERTIES IMPORT_PREFIX "../")
# SET_TARGET_PROPERTIES(${LIB_NAME} PROPERTIES PREFIX "../../bin/osg${OPENSCENEGRAPH_SOVERSION}-")
# SET_TARGET_PROPERTIES(${LIB_NAME} PROPERTIES IMPORT_PREFIX "../")
ENDMACRO(HANDLE_MSVC_DLL)

6
CMakeModules/clean_directories Executable file
View File

@@ -0,0 +1,6 @@
find . -name Makefile | xargs rm -rf
find . -name cmake_install.cmake | xargs rm -rf
find . -name CMakeFiles | xargs rm -rf
rm -rf CMakeCache.txt cmake_uninstall.cmake install_manifest.txt
rm -rf lib bin

3020
ChangeLog

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,62 @@
OSG News
========
= !OpenSceneGraph 2.4 release adds geometry shaders, multiple render targets, support for terrabyte scale terrain databases, writing to !OpenFlight and much more. =
PERTHSHIRE, Scotland - 25th April 2008 - !OpenSceneGraph Professional Services announces the release of !OpenSceneGraph 2.4, the industry's leading open-source scene graph technology, designed to accelerate application development and improve 3D graphics performance. !OpenSceneGraph 2.4 written entirely in Standard C++ and built upon OpenGL, offers developers working in the visual simulation, game development, virtual reality, scientific visualization and modeling markets - a real-time visualization tool which eclipses commercial scene graph toolkits in functionality, stability and performance. !OpenSceneGraph 2.4 runs on all Microsoft Windows platforms, Apple OS/X, GNU/Linux, IRIX, Solaris, HP-UX, AIX and FreeBSD operating systems.
=== Open-source development delivers industry-leading features and performance ===
The !OpenSceneGraph 2.4 release is the culmination of 9 years of work by the lead developers and the open-source community that has grown up around the project. The real-time graphics industry and academia embraced it from the very beginning, deploying it in real-world applications, and actively participating in its development, testing and refinement. The end result is a high-quality library with a feature set relevant to application developers' needs.
=== Updates include: ===
* Support for OpenGL Geometry shaders
* Support for OpenGL Multiple Render Targets extension to Frame Buffer Objects
* Support for OpenGL Occlussion Query extension
* New !OpenFlight writer
* New libcurl based plugin for reading http hosted databases
* Quicktime based reading of live video streams under Windows and OSX
* Better load balancing in database pager
* Improvements to osgTerrain for support of terrabyte scale whole earth terrain databases
* Additions to the Shapefile loader with .dbf attribute file, .proj projection file support and loading data as doubles
* Enhanced intersection functionality including double support for line intersections
* Parallel build support under Visual Studio
* Support for reading Producer .cfg viewer configuration files
* A wide range of build and bug fixes
=== Downloads and Licensing ===
!OpenSceneGraph is open-source so full source code is provided, and can be copied, modified and used free of charge for commercial and non-commercial use. Access to the source allows end users greater flexibility in how they develop, debug and deploy their applications. They gain productivity and freedom by being able to leverage the tool chain in accordance with their own release cycles. Downloads of binaries and source can be found in the [http://www.openscenegraph.org/projects/osg/wiki/Downloads Downloads] section of the openscenegraph.org website.
!OpenSceneGraph is released under the [http://www.openscenegraph.org/projects/osg/wiki/Legal OpenSceneGraph Public License], which is based on the Lesser GNU Public License (LGPL), permitting the software to be used free of charge across the full spectrum of commercial and open-source applications. Furthermore, it allows both static and dynamic linking of the !OpenSceneGraph libraries without restricting the licensing of the user's software.
=== !OpenSceneGraph Books now available ===
The !OpenSceneGraph Quick Start Guide is now available in Chinese as well as English, and alongside the Reference Manual books can be found at [http://www.osgbooks.com OsgBooks].
=== Professional support and services ===
!OpenSceneGraph project is backed up with professional services by [http://openscenegraph.com OpenSceneGraph Professional Services], based in Scotland, and [http://www.skew-matrix.com Skew-Matrix] and [http://www.blue-newt.com Blue-Newt Software] both based in the USA, and a range of [wiki:Community/Contractors Contractors] from around the world. Services available include:
* Confidential Professional Support
* Bespoke development
* Consultancy
* Training
=== Community support and contributions ===
The diverse and growing community of over 1800 developers is centred around the public osg-users mailing list, where members discuss how best to use !OpenSceneGraph, provide mutual support, and coordinate development of new features and bug fixes. Members of this community come from many different countries with backgrounds ranging from some of the world's largest aerospace companies, game companies, and visual simulation specialists to university researchers, students and hobbyists.
The !OpenSceneGraph project owes a great deal to the community for its development and support, in particular we wish to thank the [http://www.openscenegraph.org/projects/osg/wiki/Support/Contributors/TwoPointFour 306 individuals] from around the world that have directly contributed to the development and refinement of the !OpenSceneGraph code base.
----
About !OpenSceneGraph:[[BR]]
!OpenSceneGraph Project was founded in September 1999 by Don Burns and Robert Osfield.
Further information, screenshots, downloads, documentation, and support links can be found on the !OpenSceneGraph project website http://www.openscenegraph.org.
About !OpenSceneGraph Professional Services:[[BR]]
!OpenSceneGraph Professional Services, founded by project lead Robert Osfield in April 2001, is based in Callander, Perhshire, Scotland, and provides professional services on top of !OpenSceneGraph. Further information about the services it provides can be found at http://www.openscenegraph.com.
----------------------------------------------------------------------------------------
= OpenSceneGraph 2.2 release adds support for advanced displays, soft and parallel split shadow maps and easier builds =
PERTHSHIRE, Scotland - 4th October 2007 - !OpenSceneGraph Professional Services announces the release of !OpenSceneGraph 2.2, the industry's leading open-source scene graph technology, designed to accelerate application development and improve 3D graphics performance. !OpenSceneGraph 2.2 written entirely in Standard C++ and built upon OpenGL, offers developers working in the visual simulation, game development, virtual reality, scientific visualization and modeling markets - a real-time visualization tool which eclipses commercial scene graph toolkits in functionality, stability and performance. !OpenSceneGraph 2.2 runs on all Microsoft Windows platforms, Apple OS/X, GNU/Linux, IRIX, Solaris, HP-UX, AIX and !FreeBSD operating systems.

View File

@@ -0,0 +1,21 @@
Mapping extensionless header files to C++ in Visual Studio
=============================================================================
Previous versions of the OSG included registry files which enabled syntax
highlighting for OSG's extensionless headers in Visual Studio. These are not
needed anymore, because starting with Visual Studio 2002 (7.0), there is a
setting that will map extensionless files to a certain language in the
options. This also works for the Express Editions.
1. Go to Tools-Options.
2. Open the Text Editor section, and click on File Extension.
3. At the bottom of the window, check the Map Extensionless Files To
checkbox, and select Microsoft Visual C++ in the list to the right.
Note that if you use this feature for other languages, you will have to
change it when needed. If that is too cumbersome you may want to generate
the registry files and do it that way instead. Please see the
.reg files in previous versions of OSG in the VisualStudio directory for
a guide on how to do that (hint: check the location of the registry key
to make sure the added values end up in the right place for your version
of Visual Studio).

View File

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 25 KiB

View File

Before

Width:  |  Height:  |  Size: 870 B

After

Width:  |  Height:  |  Size: 870 B

View File

Before

Width:  |  Height:  |  Size: 314 B

After

Width:  |  Height:  |  Size: 314 B

View File

Before

Width:  |  Height:  |  Size: 745 B

After

Width:  |  Height:  |  Size: 745 B

View File

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

Before

Width:  |  Height:  |  Size: 525 B

After

Width:  |  Height:  |  Size: 525 B

View File

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 4.2 KiB

View File

Before

Width:  |  Height:  |  Size: 775 B

After

Width:  |  Height:  |  Size: 775 B

View File

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@@ -6,11 +6,16 @@ OpenSceneGraph website:
http://www.openscenegraph.org
For the impatient, read the simplified build notes below.
For the impatient, read the simplified build notes below. For support
subscribe to our public mailing list:
http://www.openscenegraph.org/projects/osg/wiki/MailingLists
Robert Osfield.
Project Lead.
3rd October 2007.
25th April 2008.
--

View File

@@ -1,201 +0,0 @@
langext.dat - Map explicit filename to a language
[C/C++]
algorithm bitset cassert cctype cerrno cfloat ciso646 climits clocale cmath complex
csetjmp csignal cstdarg cstddef cstdio cstdlib cstring ctime cwchar cwctype
deque exception fstream functional iomanip ios iosfwd iostream istream iterator
limits list locale map memory new numeric ostream queue
set sstream stack stdexcept streambuf string strstream typeinfo utility valarray vector
xcomplex xios xiosbase xlocale xlocinfo xlocmon xlocnum xloctime xmemory xstddef xstring xtree xutility
AccelOperator
AlphaFunc
AnimationPath
AnimationPathManipulator
ApplicationUsage
ArgumentParser
Array
Billboard
BlendFunc
BlinkSequence
BoundingBox
BoundingSphere
BoundsChecking
buffered_value
Camera
CameraManipulator
CenteredPlacer
ClearNode
ClipNode
ClipPlane
CollectOccludersVisitor
ColorMask
ColorMatrix
ConvexPlanarOccluder
ConvexPlanarPolygon
CopyOp
Counter
CubeMapGenerator
CullFace
CullingSet
CullStack
CullVisitor
DelaunayTriangulator
Depth
DisplayListVisitor
DisplayRequirementsVisitor
DisplaySettings
DOFTransform
DotOsgWrapper
Drawable
DrawPixels
DriveManipulator
DynamicLibrary
Emitter
Endian
EventAdapter
Export
fast_back_stack
Field
FieldReader
FieldReaderIterator
FileNameUtils
FileUtils
FlightManipulator
FluidFrictionOperator
Fog
Font
ForceOperator
FrameStamp
FrontFace
Geode
Geometry
GeoSet
GL
GLExtensions
GLU
Group
GUIActionAdapter
GUIEventAdapter
GUIEventHandler
GUIEventHandlerVisitor
HalfWayMapGenerator
HighlightMapGenerator
Image
Impostor
ImpostorSprite
Input
InsertImpostorsVisitor
Interpolator
IntersectVisitor
KeyboardMouseCallback
KeySwitchCameraManipulator
Light
LightModel
LightPoint
LightPointNode
LightSource
LinearInterpolator
LineSegment
LineStipple
LineWidth
LOD
Material
Math
Matrix
MatrixTransform
ModularEmitter
ModularProgram
MultiSegmentPlacer
Node
NodeCallback
NodeVisitor
Notify
Object
OccluderNode
Operator
Optimizer
OsgCameraGroup
OsgSceneHandler
Output
ParameterOutput
Particle
ParticleProcessor
ParticleSystem
ParticleSystemUpdater
PickVisitor
Placer
Plane
Point
PointPlacer
PolygonMode
PolygonOffset
PolygonStipple
Polytope
PositionAttitudeTransform
PrimitiveSet
Program
Projection
Quat
RadialShooter
RandomRateCounter
range
ReaderWriter
ReadFile
ref_ptr
Referenced
ReflectionMapGenerator
Registry
RenderBin
StateGraph
RenderLeaf
RenderStage
PositionalStateContianer
SceneView
Sector
SectorPlacer
SegmentPlacer
Sequence
SetSceneViewVisitor
ShadeModel
ShadowVolumeOccluder
Shape
ShapeDrawable
Shooter
SmoothingVisitor
State
StateAttribute
StateSet
StateSetManipulator
Statistics
Stencil
String
Switch
Tessellator
TexEnv
TexEnvCombine
TexGen
TexMat
Text
Texture
Texture1D
Texture2D
Texture3D
TextureCubeMap
TextureRectangle
Timer
TrackballManipulator
Transform
TransformCallback
TriangleFunctor
TriStripVisitor
UnitTestFramework
UpdateVisitor
VariableRateCounter
Vec2
Vec3
Vec4
Version
VertexProgram
Viewer
ViewerEventHandler
Viewport
WriteFile

View File

@@ -1,93 +0,0 @@
Detailed build documentation can be found on the OpenSceneGraph website at:
http://openscenegraph.org/osgwiki/pmwiki.php/PlatformSpecifics/VisualStudio
IMPORTANT NOTE: Whilst the OSG will compile cleanly with the basic VC++6.0
and its own STL implementation, the OSG will crash regularily due to bugs
in VC++6.0's STL. VC++6.0's STL is horribly broken and therefore is *NOT*
supported. Do not attempt to use the OSG in conjunction with native VC++6.0
STL implemention.
The supported combinations are:
1.Visual Studio8.x .NET
2.Visual Studio7.x .NET
Deprecated are:
3.Visual Studio6.0 + Dinkumware's STL bug fix patches
4.Visual Studio6.0 + STLport
For details on how to patch VisualStudio6.0 see the above website link.
Note, osgIntrospection, src/osgWrapper plugins and the
osgintrospection example cannot be compiled under VisualStudio plugin.
You will also need to run the fixup-vc6-dsps.pl script to clean up the
project files that won't otherwise compile to do new elements required
for support of Window 64 bit build under VS 7.x and 8.x.
Several of the plugins and examples require external dependancies. Full details on where to obtain
these can be found in doc/dependancies.html.
--
For syntax highlighting in VisualStudio which the standard C++ style headers
found in the OSG :
VisualStudio6.0
Substiture the LANDEXT.DAT file found in this directory with the one found
*\Common\MSDev98\Bin
VisualStudio7.x & 8.x/.NET
Install the syntaxhighlight.reg (just double click it). This will update
Extensionless file for Visual Studio. Don't worry, it will keep the
current extensionless files (STL ones) intact.
--
How to use the Visual Studio projects:
To build the OpenSceneGraph code in Visual Studio, you normally must use the VisualStudio.sln solution file provided. The individual projects won't build as-is, because they depend on each other and only the VisualStudio.sln file provides those dependencies.
To create a program based on an example, probably the easiest way is to do this:
1. Copy the VisualStudio.sln project to a new file in the same directory
2. Copy the project you want to base your new project on to a new directory in the same level of the directory tree
3. Open the new .sln file you copied in step 1
4. Remove unneeded projects from it, but keep the core libraries (osg, osgDB, etc.). Shift-clicking to select a bunch of projects at once makes this easier to do
5. Add the new project to that solution
6. Set the dependencies for your new project. This is most easily done by opening the Solution Properties dialog, going to Project Dependencies, and checking off the libraries your project depends on
--
Building 64 bit binaries
64 bit OpenSceneGraph and OpenThreads binaries can be built in Visual Studio 8, but several extra steps are required due to limits of the Visual Studio 6 project files:
1. For each of the OpenSceneGraph, and OpenThreads .dsw files, :
a. Open the .dsw or .sln file and convert all projects to VS 8 format.
b. Open the Configuration Manager window under the Build menu, bring up the New Solution Platform window by selecting <New...> in the Active solution platform drop-down menu. Select x64 as the new platform and copy settings from Win32 (you need to have the x64 compiler installed to see the x64 platform option). Ensure the Create new project platforms checkbox is selected. Click OK, then close the Configuration Manager window.
c. Do a "Save All" to save the project files.
2. Visual Studio unfortunately chooses its own Output Directory setting for the x64 configurations in step 1.b., and this must be reset to the Win32 setting.
IF PERL _IS_ INSTALLED (native or Cygwin), do the following:
a. Close all Visual Studio solutions.
b. Open a command shell and cd to the OpenSceneGraph/VisualStudio directory.
c. Run the command "perl reset-64bit-outdirs.pl".
d. Reopen the solutions.
IF PERL _IS NOT_ INSTALLED, do the following to accomplish the same thing manually:
a. In the OpenThreads solution, open the properties window for the OpenThreads project.
i. Select multiple configurations, Debug and Release. Under the General page, overwrite the Output Directory path of the x64 platform with the corresponding Win32 path. For static builds, do the same thing for the Debug Static and Release Static configurations.
b. In the OpenSceneGraph solution:
i. Select all the "Application" and "Example" projects in the Solution Explorer window and repeat step 2.a.i. Note there are no static configurations.
ii. Select all the "Core" projects _except "Core osgIntrospection"_ and repeat step 2.a.i.
iii. Select "Core osgIntrospection" and repeat step 2.a.i. Note there are no static configurations.
iv. Select all the "osgPlugin" projects and repeat step 2.a.i.
v. Select all the "osgWrapper" projects and repeat step 2.a.i. Note there are no static configurations.
c. Do a "Save All" to save the project files.
3. Select the desired x64 configuration, and build away!

View File

@@ -1,33 +0,0 @@
/* create_static_workspace - Copyright (C) 2006 Joran Jessurun
*
* This library is open source and may be redistributed and/or modified under
* the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or
* (at your option) any later version. The full license is in LICENSE file
* included with this distribution, and on the openscenegraph.org website.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* OpenSceneGraph Public License for more details.
*
* Made by Joran Jessurun (A.J.Jessurun@tue.nl)
*/
var fso=WScript.createObject("Scripting.FileSystemObject");
var ForReading=1;
var ForWriting=2;
WScript.echo("Creating OpenSceneGraphStatic.dsw from OpenSceneGraph.dsw");
var source=fso.openTextFile("OpenSceneGraph.dsw",ForReading);
var destin=fso.openTextFile("OpenSceneGraphStatic.dsw",ForWriting,true);
var state=0; // 0=copy, 1=skip
while(!source.atEndOfStream) {
line=source.readLine();
if(/Begin Project Dependency/.test(line)) state=1;
if(state==0) destin.writeLine(line);
if(/End Project Dependency/.test(line)) state=0;
}
source.close();
destin.close();
WScript.echo("Done");

View File

@@ -1,339 +0,0 @@
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\7.0\Languages\Extensionless Files\{B2F072B0-ABC1-11D0-9D62-00C04FD9DFD9}]
"AccelOperator"=""
"AlphaFunc"=""
"AngularAccelOperator"=""
"AnimationPath"=""
"AnimationPathManipulator"=""
"AnisotropicLighting"=""
"ApplicationUsage"=""
"Archive"=""
"ArgumentParser"=""
"Array"=""
"Attributes"=""
"AutoTransform"=""
"Billboard"=""
"BlendColor"=""
"BlendEquation"=""
"BlendFunc"=""
"BlinkSequence"=""
"BoundingBox"=""
"BoundingSphere"=""
"BoundsChecking"=""
"buffered_value"=""
"BufferObject"=""
"BumpMapping"=""
"Camera"=""
"CameraView"=""
"Cartoon"=""
"CenteredPlacer"=""
"ClearNode"=""
"ClipNode"=""
"ClipPlane"=""
"ClusterCullingCallback"=""
"CollectOccludersVisitor"=""
"ColorMask"=""
"ColorMatrix"=""
"ColorRange"=""
"Comparator"=""
"CompositeViewer"=""
"ConnectedParticleSystem"=""
"ConstantRateCounter"=""
"ConstructorInfo"=""
"Converter"=""
"ConverterProxy"=""
"ConvexPlanarOccluder"=""
"ConvexPlanarPolygon"=""
"CoordinateSystemNode"=""
"CopyOp"=""
"Counter"=""
"CubeMapGenerator"=""
"CullFace"=""
"CullingSet"=""
"CullSettings"=""
"CullStack"=""
"CullVisitor"=""
"CustomAttribute"=""
"CustomAttributeProvider"=""
"DatabasePager"=""
"DelaunayTriangulator"=""
"Depth"=""
"DisplayRequirementsVisitor"=""
"DisplaySettings"=""
"DOFTransform"=""
"DotOsgWrapper"=""
"Drawable"=""
"DrawPixels"=""
"DriveManipulator"=""
"DynamicLibrary"=""
"Effect"=""
"Emitter"=""
"Endian"=""
"EventAdapter"=""
"EventVisitor"=""
"Exceptions"=""
"ExplosionDebrisEffect"=""
"ExplosionEffect"=""
"Export"=""
"fast_back_stack"=""
"Field"=""
"FieldReader"=""
"FieldReaderIterator"=""
"FileNameUtils"=""
"FileUtils"=""
"FireEffect"=""
"FlightManipulator"=""
"FluidFrictionOperator"=""
"FluidProgram"=""
"Fog"=""
"Font"=""
"ForceOperator"=""
"FragmentProgram"=""
"FrameBufferObject"=""
"FrameStamp"=""
"FrontFace"=""
"Geode"=""
"GeographicLocation"=""
"Geometry"=""
"GL"=""
"GL2Extensions"=""
"GLExtensions"=""
"GLObjectsVisitor"=""
"GLU"=""
"GraphicsContext"=""
"GraphicsContextImplementation"=""
"GraphicsThread"=""
"GraphicsWindow"=""
"GraphicsWindowWin32"=""
"Group"=""
"GUIActionAdapter"=""
"GUIEventAdapter"=""
"GUIEventHandler"=""
"GUIEventHandlerVisitor"=""
"HalfWayMapGenerator"=""
"HelpHandler"=""
"HeightFieldNode"=""
"HeightFieldRenderer"=""
"HighlightMapGenerator"=""
"Image"=""
"ImageOptions"=""
"ImageStream"=""
"Impostor"=""
"ImpostorSprite"=""
"Input"=""
"InsertImpostorsVisitor"=""
"InstanceCreator"=""
"Interpolator"=""
"IntersectVisitor"=""
"io_utils"=""
"KeyboardMouseCallback"=""
"KeySwitchMatrixManipulator"=""
"Light"=""
"LightModel"=""
"LightPoint"=""
"LightPointNode"=""
"LightPointSystem"=""
"LightSource"=""
"LinearInterpolator"=""
"LineSegment"=""
"LineStipple"=""
"LineWidth"=""
"LOD"=""
"LogicOp"=""
"Material"=""
"Math"=""
"Matrix"=""
"Matrixd"=""
"Matrixf"=""
"MatrixManipulator"=""
"MatrixTransform"=""
"MethodInfo"=""
"ModularEmitter"=""
"ModularProgram"=""
"Multisample"=""
"MultiSegmentPlacer"=""
"MultiSwitch"=""
"MultiTextureControl"=""
"Node"=""
"NodeCallback"=""
"NodeTrackerCallback"=""
"NodeTrackerManipulator"=""
"NodeVisitor"=""
"Notify"=""
"Object"=""
"OccluderNode"=""
"Operator"=""
"Optimizer"=""
"OsgCameraGroup"=""
"OsgSceneHandler"=""
"Output"=""
"OverlayNode"=""
"PagedLOD"=""
"ParameterInfo"=""
"ParameterOutput"=""
"Particle"=""
"ParticleEffect"=""
"ParticleProcessor"=""
"ParticleSystem"=""
"ParticleSystemUpdater"=""
"Placer"=""
"Plane"=""
"Point"=""
"PointPlacer"=""
"PointSprite"=""
"PolygonMode"=""
"PolygonOffset"=""
"PolygonStipple"=""
"Polytope"=""
"PositionalStateContainer"=""
"PositionAttitudeTransform"=""
"PrimitiveSet"=""
"Program"=""
"Program"=""
"Projection"=""
"PropertyInfo"=""
"ProxyNode"=""
"Quat"=""
"RadialShooter"=""
"RandomRateCounter"=""
"range"=""
"ReaderWriter"=""
"ReadFile"=""
"ReentrantMutex"=""
"ref_ptr"=""
"Referenced"=""
"Reflection"=""
"ReflectionMacros"=""
"ReflectionMapGenerator"=""
"Reflector"=""
"Registry"=""
"RenderBin"=""
"RenderLeaf"=""
"RenderStage"=""
"ScalarBar"=""
"ScalarsToColors"=""
"Scene"=""
"SceneView"=""
"Scissor"=""
"Scribe"=""
"Sector"=""
"SectorPlacer"=""
"SegmentPlacer"=""
"Sequence"=""
"SetSceneViewVisitor"=""
"ShadeModel"=""
"Shader"=""
"ShadowVolumeOccluder"=""
"Shape"=""
"ShapeDrawable"=""
"SharedStateManager"=""
"Shooter"=""
"SimpleViewer"=""
"Simplifier"=""
"SmokeEffect"=""
"SmokeTrailEffect"=""
"SmoothingVisitor"=""
"SpecularHighlights"=""
"SphereSegment"=""
"State"=""
"StateAttribute"=""
"StateGraph"=""
"StateSet"=""
"StateSetManipulator"=""
"StaticMethodInfo"=""
"Statistics"=""
"StatsHandler"=""
"Stencil"=""
"String"=""
"Switch"=""
"TangentSpaceGenerator"=""
"Technique"=""
"TerrainManipulator"=""
"Tessellator"=""
"TexEnv"=""
"TexEnvCombine"=""
"TexEnvFilter"=""
"TexGen"=""
"TexGenNode"=""
"TexMat"=""
"Text"=""
"Texture"=""
"Texture1D"=""
"Texture2D"=""
"Texture3D"=""
"TextureCubeMap"=""
"TextureRectangle"=""
"Timer"=""
"TrackballManipulator"=""
"Transform"=""
"TransformAttributeFunctor"=""
"TransformCallback"=""
"TriangleFunctor"=""
"TriangleIndexFunctor"=""
"TriStripVisitor"=""
"Type"=""
"TypedConstructorInfo"=""
"TypedMethodInfo"=""
"TypeNameAliasProxy"=""
"UFOManipulator"=""
"Uniform"=""
"UnitTestFramework"=""
"UpdateVisitor"=""
"Utility"=""
"Validator"=""
"Value"=""
"VariableRateCounter"=""
"variant_cast"=""
"Vec2"=""
"Vec2b"=""
"Vec2d"=""
"Vec2f"=""
"Vec2s"=""
"Vec3"=""
"Vec3b"=""
"Vec3d"=""
"Vec3f"=""
"Vec3s"=""
"Vec4"=""
"Vec4b"=""
"Vec4d"=""
"Vec4f"=""
"Vec4s"=""
"Vec4ub"=""
"Version"=""
"VertexProgram"=""
"View"=""
"Viewer"=""
"ViewerEventHandler"=""
"Viewport"=""
"VisibilityGroup"=""
"WriteFile"=""
"Block"=""
"BlockingQueue"=""
"Camera"=""
"CameraConfig"=""
"CameraGroup"=""
"Events"=""
"Export"=""
"InputArea"=""
"Keyboard"=""
"KeyboardMouse"=""
"Math"=""
"Referenced"=""
"RefOpenThreads"=""
"RenderSurface"=""
"Timer"=""
"Trackball"=""
"Types"=""
"Version"=""
"Window3D"=""
"VisualChooser"=""
"Barrier"=""
"Condition"=""
"Exports"=""
"Mutex"=""
"ScopedLock"=""
"Thread"=""

View File

@@ -1,339 +0,0 @@
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\7.1\Languages\Extensionless Files\{B2F072B0-ABC1-11D0-9D62-00C04FD9DFD9}]
"AccelOperator"=""
"AlphaFunc"=""
"AngularAccelOperator"=""
"AnimationPath"=""
"AnimationPathManipulator"=""
"AnisotropicLighting"=""
"ApplicationUsage"=""
"Archive"=""
"ArgumentParser"=""
"Array"=""
"Attributes"=""
"AutoTransform"=""
"Billboard"=""
"BlendColor"=""
"BlendEquation"=""
"BlendFunc"=""
"BlinkSequence"=""
"BoundingBox"=""
"BoundingSphere"=""
"BoundsChecking"=""
"buffered_value"=""
"BufferObject"=""
"BumpMapping"=""
"Camera"=""
"CameraView"=""
"Cartoon"=""
"CenteredPlacer"=""
"ClearNode"=""
"ClipNode"=""
"ClipPlane"=""
"ClusterCullingCallback"=""
"CollectOccludersVisitor"=""
"ColorMask"=""
"ColorMatrix"=""
"ColorRange"=""
"Comparator"=""
"CompositeViewer"=""
"ConnectedParticleSystem"=""
"ConstantRateCounter"=""
"ConstructorInfo"=""
"Converter"=""
"ConverterProxy"=""
"ConvexPlanarOccluder"=""
"ConvexPlanarPolygon"=""
"CoordinateSystemNode"=""
"CopyOp"=""
"Counter"=""
"CubeMapGenerator"=""
"CullFace"=""
"CullingSet"=""
"CullSettings"=""
"CullStack"=""
"CullVisitor"=""
"CustomAttribute"=""
"CustomAttributeProvider"=""
"DatabasePager"=""
"DelaunayTriangulator"=""
"Depth"=""
"DisplayRequirementsVisitor"=""
"DisplaySettings"=""
"DOFTransform"=""
"DotOsgWrapper"=""
"Drawable"=""
"DrawPixels"=""
"DriveManipulator"=""
"DynamicLibrary"=""
"Effect"=""
"Emitter"=""
"Endian"=""
"EventAdapter"=""
"EventVisitor"=""
"Exceptions"=""
"ExplosionDebrisEffect"=""
"ExplosionEffect"=""
"Export"=""
"fast_back_stack"=""
"Field"=""
"FieldReader"=""
"FieldReaderIterator"=""
"FileNameUtils"=""
"FileUtils"=""
"FireEffect"=""
"FlightManipulator"=""
"FluidFrictionOperator"=""
"FluidProgram"=""
"Fog"=""
"Font"=""
"ForceOperator"=""
"FragmentProgram"=""
"FrameBufferObject"=""
"FrameStamp"=""
"FrontFace"=""
"Geode"=""
"GeographicLocation"=""
"Geometry"=""
"GL"=""
"GL2Extensions"=""
"GLExtensions"=""
"GLObjectsVisitor"=""
"GLU"=""
"GraphicsContext"=""
"GraphicsContextImplementation"=""
"GraphicsThread"=""
"GraphicsWindow"=""
"GraphicsWindowWin32"=""
"Group"=""
"GUIActionAdapter"=""
"GUIEventAdapter"=""
"GUIEventHandler"=""
"GUIEventHandlerVisitor"=""
"HalfWayMapGenerator"=""
"HelpHandler"=""
"HeightFieldNode"=""
"HeightFieldRenderer"=""
"HighlightMapGenerator"=""
"Image"=""
"ImageOptions"=""
"ImageStream"=""
"Impostor"=""
"ImpostorSprite"=""
"Input"=""
"InsertImpostorsVisitor"=""
"InstanceCreator"=""
"Interpolator"=""
"IntersectVisitor"=""
"io_utils"=""
"KeyboardMouseCallback"=""
"KeySwitchMatrixManipulator"=""
"Light"=""
"LightModel"=""
"LightPoint"=""
"LightPointNode"=""
"LightPointSystem"=""
"LightSource"=""
"LinearInterpolator"=""
"LineSegment"=""
"LineStipple"=""
"LineWidth"=""
"LOD"=""
"LogicOp"=""
"Material"=""
"Math"=""
"Matrix"=""
"Matrixd"=""
"Matrixf"=""
"MatrixManipulator"=""
"MatrixTransform"=""
"MethodInfo"=""
"ModularEmitter"=""
"ModularProgram"=""
"Multisample"=""
"MultiSegmentPlacer"=""
"MultiSwitch"=""
"MultiTextureControl"=""
"Node"=""
"NodeCallback"=""
"NodeTrackerCallback"=""
"NodeTrackerManipulator"=""
"NodeVisitor"=""
"Notify"=""
"Object"=""
"OccluderNode"=""
"Operator"=""
"Optimizer"=""
"OsgCameraGroup"=""
"OsgSceneHandler"=""
"Output"=""
"OverlayNode"=""
"PagedLOD"=""
"ParameterInfo"=""
"ParameterOutput"=""
"Particle"=""
"ParticleEffect"=""
"ParticleProcessor"=""
"ParticleSystem"=""
"ParticleSystemUpdater"=""
"Placer"=""
"Plane"=""
"Point"=""
"PointPlacer"=""
"PointSprite"=""
"PolygonMode"=""
"PolygonOffset"=""
"PolygonStipple"=""
"Polytope"=""
"PositionalStateContainer"=""
"PositionAttitudeTransform"=""
"PrimitiveSet"=""
"Program"=""
"Program"=""
"Projection"=""
"PropertyInfo"=""
"ProxyNode"=""
"Quat"=""
"RadialShooter"=""
"RandomRateCounter"=""
"range"=""
"ReaderWriter"=""
"ReadFile"=""
"ReentrantMutex"=""
"ref_ptr"=""
"Referenced"=""
"Reflection"=""
"ReflectionMacros"=""
"ReflectionMapGenerator"=""
"Reflector"=""
"Registry"=""
"RenderBin"=""
"RenderLeaf"=""
"RenderStage"=""
"ScalarBar"=""
"ScalarsToColors"=""
"Scene"=""
"SceneView"=""
"Scissor"=""
"Scribe"=""
"Sector"=""
"SectorPlacer"=""
"SegmentPlacer"=""
"Sequence"=""
"SetSceneViewVisitor"=""
"ShadeModel"=""
"Shader"=""
"ShadowVolumeOccluder"=""
"Shape"=""
"ShapeDrawable"=""
"SharedStateManager"=""
"Shooter"=""
"SimpleViewer"=""
"Simplifier"=""
"SmokeEffect"=""
"SmokeTrailEffect"=""
"SmoothingVisitor"=""
"SpecularHighlights"=""
"SphereSegment"=""
"State"=""
"StateAttribute"=""
"StateGraph"=""
"StateSet"=""
"StateSetManipulator"=""
"StaticMethodInfo"=""
"Statistics"=""
"StatsHandler"=""
"Stencil"=""
"String"=""
"Switch"=""
"TangentSpaceGenerator"=""
"Technique"=""
"TerrainManipulator"=""
"Tessellator"=""
"TexEnv"=""
"TexEnvCombine"=""
"TexEnvFilter"=""
"TexGen"=""
"TexGenNode"=""
"TexMat"=""
"Text"=""
"Texture"=""
"Texture1D"=""
"Texture2D"=""
"Texture3D"=""
"TextureCubeMap"=""
"TextureRectangle"=""
"Timer"=""
"TrackballManipulator"=""
"Transform"=""
"TransformAttributeFunctor"=""
"TransformCallback"=""
"TriangleFunctor"=""
"TriangleIndexFunctor"=""
"TriStripVisitor"=""
"Type"=""
"TypedConstructorInfo"=""
"TypedMethodInfo"=""
"TypeNameAliasProxy"=""
"UFOManipulator"=""
"Uniform"=""
"UnitTestFramework"=""
"UpdateVisitor"=""
"Utility"=""
"Validator"=""
"Value"=""
"VariableRateCounter"=""
"variant_cast"=""
"Vec2"=""
"Vec2b"=""
"Vec2d"=""
"Vec2f"=""
"Vec2s"=""
"Vec3"=""
"Vec3b"=""
"Vec3d"=""
"Vec3f"=""
"Vec3s"=""
"Vec4"=""
"Vec4b"=""
"Vec4d"=""
"Vec4f"=""
"Vec4s"=""
"Vec4ub"=""
"Version"=""
"VertexProgram"=""
"View"=""
"Viewer"=""
"ViewerEventHandler"=""
"Viewport"=""
"VisibilityGroup"=""
"WriteFile"=""
"Block"=""
"BlockingQueue"=""
"Camera"=""
"CameraConfig"=""
"CameraGroup"=""
"Events"=""
"Export"=""
"InputArea"=""
"Keyboard"=""
"KeyboardMouse"=""
"Math"=""
"Referenced"=""
"RefOpenThreads"=""
"RenderSurface"=""
"Timer"=""
"Trackball"=""
"Types"=""
"Version"=""
"Window3D"=""
"VisualChooser"=""
"Barrier"=""
"Condition"=""
"Exports"=""
"Mutex"=""
"ScopedLock"=""
"Thread"=""

View File

@@ -1,339 +0,0 @@
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\8.0\Languages\Extensionless Files\{B2F072B0-ABC1-11D0-9D62-00C04FD9DFD9}]
"AccelOperator"=""
"AlphaFunc"=""
"AngularAccelOperator"=""
"AnimationPath"=""
"AnimationPathManipulator"=""
"AnisotropicLighting"=""
"ApplicationUsage"=""
"Archive"=""
"ArgumentParser"=""
"Array"=""
"Attributes"=""
"AutoTransform"=""
"Billboard"=""
"BlendColor"=""
"BlendEquation"=""
"BlendFunc"=""
"BlinkSequence"=""
"BoundingBox"=""
"BoundingSphere"=""
"BoundsChecking"=""
"buffered_value"=""
"BufferObject"=""
"BumpMapping"=""
"Camera"=""
"CameraView"=""
"Cartoon"=""
"CenteredPlacer"=""
"ClearNode"=""
"ClipNode"=""
"ClipPlane"=""
"ClusterCullingCallback"=""
"CollectOccludersVisitor"=""
"ColorMask"=""
"ColorMatrix"=""
"ColorRange"=""
"Comparator"=""
"CompositeViewer"=""
"ConnectedParticleSystem"=""
"ConstantRateCounter"=""
"ConstructorInfo"=""
"Converter"=""
"ConverterProxy"=""
"ConvexPlanarOccluder"=""
"ConvexPlanarPolygon"=""
"CoordinateSystemNode"=""
"CopyOp"=""
"Counter"=""
"CubeMapGenerator"=""
"CullFace"=""
"CullingSet"=""
"CullSettings"=""
"CullStack"=""
"CullVisitor"=""
"CustomAttribute"=""
"CustomAttributeProvider"=""
"DatabasePager"=""
"DelaunayTriangulator"=""
"Depth"=""
"DisplayRequirementsVisitor"=""
"DisplaySettings"=""
"DOFTransform"=""
"DotOsgWrapper"=""
"Drawable"=""
"DrawPixels"=""
"DriveManipulator"=""
"DynamicLibrary"=""
"Effect"=""
"Emitter"=""
"Endian"=""
"EventAdapter"=""
"EventVisitor"=""
"Exceptions"=""
"ExplosionDebrisEffect"=""
"ExplosionEffect"=""
"Export"=""
"fast_back_stack"=""
"Field"=""
"FieldReader"=""
"FieldReaderIterator"=""
"FileNameUtils"=""
"FileUtils"=""
"FireEffect"=""
"FlightManipulator"=""
"FluidFrictionOperator"=""
"FluidProgram"=""
"Fog"=""
"Font"=""
"ForceOperator"=""
"FragmentProgram"=""
"FrameBufferObject"=""
"FrameStamp"=""
"FrontFace"=""
"Geode"=""
"GeographicLocation"=""
"Geometry"=""
"GL"=""
"GL2Extensions"=""
"GLExtensions"=""
"GLObjectsVisitor"=""
"GLU"=""
"GraphicsContext"=""
"GraphicsContextImplementation"=""
"GraphicsThread"=""
"GraphicsWindow"=""
"GraphicsWindowWin32"=""
"Group"=""
"GUIActionAdapter"=""
"GUIEventAdapter"=""
"GUIEventHandler"=""
"GUIEventHandlerVisitor"=""
"HalfWayMapGenerator"=""
"HelpHandler"=""
"HeightFieldNode"=""
"HeightFieldRenderer"=""
"HighlightMapGenerator"=""
"Image"=""
"ImageOptions"=""
"ImageStream"=""
"Impostor"=""
"ImpostorSprite"=""
"Input"=""
"InsertImpostorsVisitor"=""
"InstanceCreator"=""
"Interpolator"=""
"IntersectVisitor"=""
"io_utils"=""
"KeyboardMouseCallback"=""
"KeySwitchMatrixManipulator"=""
"Light"=""
"LightModel"=""
"LightPoint"=""
"LightPointNode"=""
"LightPointSystem"=""
"LightSource"=""
"LinearInterpolator"=""
"LineSegment"=""
"LineStipple"=""
"LineWidth"=""
"LOD"=""
"LogicOp"=""
"Material"=""
"Math"=""
"Matrix"=""
"Matrixd"=""
"Matrixf"=""
"MatrixManipulator"=""
"MatrixTransform"=""
"MethodInfo"=""
"ModularEmitter"=""
"ModularProgram"=""
"Multisample"=""
"MultiSegmentPlacer"=""
"MultiSwitch"=""
"MultiTextureControl"=""
"Node"=""
"NodeCallback"=""
"NodeTrackerCallback"=""
"NodeTrackerManipulator"=""
"NodeVisitor"=""
"Notify"=""
"Object"=""
"OccluderNode"=""
"Operator"=""
"Optimizer"=""
"OsgCameraGroup"=""
"OsgSceneHandler"=""
"Output"=""
"OverlayNode"=""
"PagedLOD"=""
"ParameterInfo"=""
"ParameterOutput"=""
"Particle"=""
"ParticleEffect"=""
"ParticleProcessor"=""
"ParticleSystem"=""
"ParticleSystemUpdater"=""
"Placer"=""
"Plane"=""
"Point"=""
"PointPlacer"=""
"PointSprite"=""
"PolygonMode"=""
"PolygonOffset"=""
"PolygonStipple"=""
"Polytope"=""
"PositionalStateContainer"=""
"PositionAttitudeTransform"=""
"PrimitiveSet"=""
"Program"=""
"Program"=""
"Projection"=""
"PropertyInfo"=""
"ProxyNode"=""
"Quat"=""
"RadialShooter"=""
"RandomRateCounter"=""
"range"=""
"ReaderWriter"=""
"ReadFile"=""
"ReentrantMutex"=""
"ref_ptr"=""
"Referenced"=""
"Reflection"=""
"ReflectionMacros"=""
"ReflectionMapGenerator"=""
"Reflector"=""
"Registry"=""
"RenderBin"=""
"RenderLeaf"=""
"RenderStage"=""
"ScalarBar"=""
"ScalarsToColors"=""
"Scene"=""
"SceneView"=""
"Scissor"=""
"Scribe"=""
"Sector"=""
"SectorPlacer"=""
"SegmentPlacer"=""
"Sequence"=""
"SetSceneViewVisitor"=""
"ShadeModel"=""
"Shader"=""
"ShadowVolumeOccluder"=""
"Shape"=""
"ShapeDrawable"=""
"SharedStateManager"=""
"Shooter"=""
"SimpleViewer"=""
"Simplifier"=""
"SmokeEffect"=""
"SmokeTrailEffect"=""
"SmoothingVisitor"=""
"SpecularHighlights"=""
"SphereSegment"=""
"State"=""
"StateAttribute"=""
"StateGraph"=""
"StateSet"=""
"StateSetManipulator"=""
"StaticMethodInfo"=""
"Statistics"=""
"StatsHandler"=""
"Stencil"=""
"String"=""
"Switch"=""
"TangentSpaceGenerator"=""
"Technique"=""
"TerrainManipulator"=""
"Tessellator"=""
"TexEnv"=""
"TexEnvCombine"=""
"TexEnvFilter"=""
"TexGen"=""
"TexGenNode"=""
"TexMat"=""
"Text"=""
"Texture"=""
"Texture1D"=""
"Texture2D"=""
"Texture3D"=""
"TextureCubeMap"=""
"TextureRectangle"=""
"Timer"=""
"TrackballManipulator"=""
"Transform"=""
"TransformAttributeFunctor"=""
"TransformCallback"=""
"TriangleFunctor"=""
"TriangleIndexFunctor"=""
"TriStripVisitor"=""
"Type"=""
"TypedConstructorInfo"=""
"TypedMethodInfo"=""
"TypeNameAliasProxy"=""
"UFOManipulator"=""
"Uniform"=""
"UnitTestFramework"=""
"UpdateVisitor"=""
"Utility"=""
"Validator"=""
"Value"=""
"VariableRateCounter"=""
"variant_cast"=""
"Vec2"=""
"Vec2b"=""
"Vec2d"=""
"Vec2f"=""
"Vec2s"=""
"Vec3"=""
"Vec3b"=""
"Vec3d"=""
"Vec3f"=""
"Vec3s"=""
"Vec4"=""
"Vec4b"=""
"Vec4d"=""
"Vec4f"=""
"Vec4s"=""
"Vec4ub"=""
"Version"=""
"VertexProgram"=""
"View"=""
"Viewer"=""
"ViewerEventHandler"=""
"Viewport"=""
"VisibilityGroup"=""
"WriteFile"=""
"Block"=""
"BlockingQueue"=""
"Camera"=""
"CameraConfig"=""
"CameraGroup"=""
"Events"=""
"Export"=""
"InputArea"=""
"Keyboard"=""
"KeyboardMouse"=""
"Math"=""
"Referenced"=""
"RefOpenThreads"=""
"RenderSurface"=""
"Timer"=""
"Trackball"=""
"Types"=""
"Version"=""
"Window3D"=""
"VisualChooser"=""
"Barrier"=""
"Condition"=""
"Exports"=""
"Mutex"=""
"ScopedLock"=""
"Thread"=""

View File

@@ -1,48 +1,177 @@
{\rtf1\mac\ansicpg10000\cocoartf824\cocoasubrtf440
{\fonttbl\f0\fswiss\fcharset77 Helvetica-Bold;\f1\fswiss\fcharset77 Helvetica;\f2\fswiss\fcharset77 Helvetica-Oblique;
\f3\fmodern\fcharset77 Courier;\f4\fnil\fcharset77 Monaco;}
{\rtf1\ansi\ansicpg1252\cocoartf949
{\fonttbl\f0\fswiss\fcharset0 Helvetica;\f1\fmodern\fcharset0 Courier;\f2\fnil\fcharset0 Monaco;
}
{\colortbl;\red255\green255\blue255;}
{\*\listtable{\list\listtemplateid1\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid0\'02\'05.;}{\levelnumbers\'01;}}{\listname ;}\listid1}
{\list\listtemplateid2\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid0\'02\'05.;}{\levelnumbers\'01;}}{\listname ;}\listid2}}
{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}}
{\list\listtemplateid2\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid0\'02\'05.;}{\levelnumbers\'01;}}{\listname ;}\listid2}
{\list\listtemplateid3\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid0\'02\'05.;}{\levelnumbers\'01;}}{\listname ;}\listid3}}
{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}{\listoverride\listid3\listoverridecount0\ls3}}
\margl1440\margr1440\vieww11520\viewh13720\viewkind0
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\f0\b\fs24 \cf0 OpenSceneGraph on Mac OS X
\f1\b0 \
\b0 \
\
This is the readme for the entire OpenThreads/OpenSceneGraph distribution for the OS X frameworks and Xcode projects. This readme was originally written for the binary distribution, but there is a lot of useful information in here so it has also been included with the source code in the Xcode section. This was sync'd with the OSG 1.2 release.\
This is the readme for the entire OpenThreads/OpenSceneGraph distribution for the OS X frameworks and Xcode projects. This readme was originally written for the binary distribution, but there is a lot of useful information in here so it has also been included with the source code in the Xcode section. This was sync'd with the OSG 2.2 release.\
\
The source code is available at {\field{\*\fldinst{HYPERLINK "http://www.openscenegraph.org/"}}{\fldrslt http://www.openscenegraph.org/}}\
\
\f0\b \
\b \
Quick Start:
\f1\b0 \
\b0 \
Screencasts of how to install and get going with OSG for Mac OS X can be found here:\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
{\field{\*\fldinst{HYPERLINK "http://www.openscenegraph.org/projects/osg/wiki/Support/TipsAndTricks"}}{\fldrslt \cf0 http://www.openscenegraph.org/projects/osg/wiki/Support/TipsAndTricks}}\
\
\
\
{\field{\*\fldinst{HYPERLINK "http://www.openscenegraph.org/projects/osg/wiki/Support/Tutorials/MacOSXTips"}}{\fldrslt \cf0 http://www.openscenegraph.org/projects/osg/wiki/Support/Tutorials/MacOSXTips}}\
\pard\pardeftab720\ql\qnatural
\cf0 \
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\cf0 \
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\f0\b \cf0 What's New in this release:
\f1\b0 \
\pard\tx220\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\li720\fi-720\ql\qnatural\pardirnatural
\ls1\ilvl0\cf0 {\listtext \'a5 }OpenThreads now uses Subversion 'externals' to make it look like part of the OSG source distribution.\
{\listtext \'a5 }Producer has been removed from the distribution. osgViewer is supposed to replace it. The Mac OS X backend is currently Carbon based.\
{\listtext \'a5 }GDAL has been removed as it is no longer a dependency.\
{\listtext \'a5 }osgviewerCocoa (previously osgsimpleviewerCocoa in CVS) is an example program demonstrating tight integration between OpenSceneGraph and Cocoa. It demonstrates many of the things you should consider in building a first-class OS X application that uses OSG.\
{\listtext \'a5 }Dwarf debugging format\
{\listtext \'a5 }osgsimpleviewerSDL\
\b \cf0 Special Notes for Leopard:\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\b0 \cf0 (See {\field{\*\fldinst{HYPERLINK "http://www.openscenegraph.org/projects/osg/wiki/Support/PlatformSpecifics/MacOSX10.5"}}{\fldrslt http://www.openscenegraph.org/projects/osg/wiki/Support/PlatformSpecifics/MacOSX10.5}} for up-to-date information.)\
\
\b Broken Binary Compatibility:
\b0 \
Apple has broken binary compatibility in a limited way between 10.4 and 10.5 when using OpenGL and C++. Under 32-bit, the GLenum type was changed from long (in 10.4 and before) to int (in 10.5).\
\
Under 32-bit, sizeof(long) == sizeof(int) == 4-bytes.\
(In 64-bit, sizeof(long) == 8-bytes, sizeof(int) == 4-bytes)\
So in C 32-bit, binary compatibility is preserved.\
\
But under C++, even though both types are 4-bytes under 32-bits, C++ name mangling rules treat int and long as fundamentally different types. Thus binary compatibility is broken if you try linking two pieces of code that use different types for GLenum.\
\
\
This means:\
1) If you have a 10.4 SDK (or before) built OSG framework, you cannot build an application using the 10.5 SDK or you will get strange undefined symbol errors if GLenum is used. This means don't develop against the 10.5 SDK on Leopard.\
\
2) You cannot use a 10.5 SDK built OSG framework to build an application using the 10.4 SDK, otherwise this will also give you undefined symbol errors. This means don't develop with 10.5 built OSG frameworks when using the 10.4u SDK on Leopard or developing on 10.4 itself.\
\
3) If you have a 10.4 SDK built OSG framework and a 10.4 SDK built application that uses it, this does *not* present a binary compatibility problem and you may be able to run on 10.5 (ignoring any different compatibility issues).\
\
4) Similarly to #3, if you have a 10.5 SDK built framework and a 10.5 SDK built application that uses it, this does *not* present a binary compatibility problem and you may be able to run on 10.4 presuming there are no specific 10.5 dependencies. (But it is safer to build against the 10.4 SDK if you plan on deploying to 10.4 and use no 10.5 specific features.)\
\
Basically, this means you can't intermix 10.4 and 10.5 frameworks.\
\
You can slip around this problem if you manage to avoid the use of any code that uses GLenum. And pure C is not affected.\
\
\b \
OSG 10.4 and 10.5 SDKs:\
\b0 Xcode 3.0 introduces formal support for SDKs created by 3rd parties (like us). Since we now have binary incompatible frameworks, developing binaries for both 10.4 and 10.5 on the same system is a pain. Having a separate OSG 10.4 and 10.5 SDK may help minimize that pain.\
\
Stay tuned for the SDKs and instructions.\
\
\
\
\b X11 Link problems:\
\b0 Another common problem developers might experience is:\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural
\cf0 ld: cycle in dylib re-exports with /usr/X11R6/lib/libGL.dylib\
collect2: ld returned 1 exit status\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\cf0 \
Apple has a posted a Technical Q&A (QA1567) on this entitled "Compiling X11 / OpenGL applications on Mac OS X v.10.5 Leopard"\
{\field{\*\fldinst{HYPERLINK "http://developer.apple.com/qa/qa2007/qa1567.html"}}{\fldrslt http://developer.apple.com/qa/qa2007/qa1567.html\
}}\
Some people have reported a problem similar to this and/or used the solution posted in this Q&A to resolve a problem building the osgdb_freetype plugin. However, I believe this is the wrong solution to this specific problem. In the osgdb_freetype case, the problem was one of two things:\
1) The wrong libfreetype.dylib was being used (wrong SDK)\
2) The libfreetype.dylib was not found (wrong path)\
\
For #1, the Xcode project was linking to /usr/X11R6/lib, but we should have been linking to $(SDKROOT)/usr/X11R6/lib. You would normally experience this problem when compiling against the 10.4u SDK on 10.5.\
\
For #2, the problem was usually experienced by people building against the 10.5 SDK (on 10.5). The problem here is that Leopard has moved from XFree86.org to X.org and the path is now /usr/X11/lib instead of X11R6. Within the SDK, there is no X11R6 path, so the library was not found.\
\
The solution is quite simple and change the link path line to:\
-L$(SDKROOT)/usr/X11/lib -L$(SDKROOT)/usr/X11R6/lib in the Other Linker Flags for the osgdb_freetype plugin.\
\
This is now fixed in the Xcode project in Subversion.\
\
\
\
\b CMake:\
\b0 The CMake/OSG build system is still not quite ready for prime time. CMake has some general Leopard issues and the OS X/CMake community is trying to work through SDK support issues as the SDKs have become a more prominent part of building on OS X correctly. Framework support is still lacking in the CMake/OSG build system, though CMake CVS is gradually adding/fixing this feature to its code base. \
\
\
\b 64-bit:\
\b0 OSG for OS X 64-bit is not ready. There are two major obstacles:\
1) osgViewer\
2) osgdb_qt\
\
The osgViewer backend is written in Carbon and as far as I know, uses some deprecated APIs that are not available in 64-bit. I do not know if this can be easily cleaned up or not. However, I still believe the better long term solution is for a Cocoa based osgViewer backend to be written. However, nothing yet has been written for this as far as I know.\
\
The example, osgviewerCocoa is close to if not already 64-bit clean. However, because the example uses osgViewer::GraphicsWindowEmbedded which needlessly pulls in all the osgViewer Carbon backend dependencies, you will be unable to actually build osgviewerCocoa as 64-bit. But if you are in a hurry to get 64-bit on OS X, this might be where you want to start. Either strip away the Carbon dependencies from osgViewer, or take osgviewerCocoa and transform it into a Cocoa backend for osgViewer.\
\
\
osgdb_qt is a QuickTime based plugin that handles all image handling and movie handling on OS X. However, it is based on the old QuickTime API which has been marked deprecated and will not survive the 64-bit transition. Thus this plugin needs to be replaced.\
\
I have already submitted a new plugin called osgdb_ImageIO to osgSubmissions which attempts to assume all the image handling duties. This plugin is based on Apple's ImageIO framework which is the new low-level entry point to deal with all image types handled by the platform. Thus this plugin should handle a lot more image formats than the old QuickTime plugin (e.g. JPEG2000, RAW, etc) and will get more as Apple adds support their system. It also adds support for C++ stream support which was missing from the QuickTime plugin. ImageIO is available on 10.4 and 10.5.\
\
However, the osgdb_ImageIO plugin does not handle movies unlike the old QuickTime plugin. The current plan is to introduce a second plugin (osgdb_QTKit), which is based on the new QuickTime Kit framework (10.4 and 10.5). This plugin will replace the movie handling capabilities of the old QuickTime plugin. \
\
Once both new plugins are in place and osgViewer is sorted out, we should be able to build a 32-bit/64-bit Universal Binary of OSG for OS X.\
\
Mac OS X 10.3 and earlier users and QuickTime for Windows users will still need to use the old QuickTime plugin.\
\
\b Xcode Project Templates:\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural
\b0 \cf0 Xcode 3.0 has moved things around. The old location was:\
/Library/Application Support/Apple/Developer Tools/Project Templates/Application\
\
The new scheme is:\
/Library/Application Support/Developer/\{3.0,Shared\}/Xcode/Project Templates/Application\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\cf0 \
\pard\pardeftab720\ql\qnatural
\cf0 Specifying 3.0 will restrict them to only be available in Xcode 3.0, specifying Shared will make them available to 2.5, 3.0 and beyond.\
\
I believe our templates will work in both, so Shared is a good location:\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural
\cf0 /Library/Application Support/Developer/Shared/Xcode/Project Templates/Application\
\
Also note you may place it in per-user locations, e.g.\
~/Library/Application Support/Developer/Shared/Xcode/Project Templates/Application\
\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\cf0 \
\
\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\f0\b Notes for 2.0 release:\
\b \cf0 What's New in this release (2.2):
\b0 \
\pard\tx220\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\li720\fi-720\ql\qnatural\pardirnatural
\ls1\ilvl0\cf0 (Sorry, no OS X specific notes.)\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\cf0 \
\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\f1\b0 OSG has changed its versioning number scheme. 2.0 is the stable release following 1.2.\
\b \cf0 Notes for 2.0 release:\
\pard\tx220\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\li720\fi-720\ql\qnatural\pardirnatural
\ls2\ilvl0
\b0 \cf0 {\listtext \'95 }OpenThreads now uses Subversion 'externals' to make it look like part of the OSG source distribution.\
{\listtext \'95 }Producer has been removed from the distribution. osgViewer is supposed to replace it. The Mac OS X backend is currently Carbon based.\
{\listtext \'95 }GDAL has been removed as it is no longer a dependency.\
{\listtext \'95 }osgviewerCocoa (previously osgsimpleviewerCocoa in CVS) is an example program demonstrating tight integration between OpenSceneGraph and Cocoa. It demonstrates many of the things you should consider in building a first-class OS X application that uses OSG.\
{\listtext \'95 }Dwarf debugging format\
{\listtext \'95 }osgsimpleviewerSDL\
\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\cf0 OSG has changed its versioning number scheme. 2.0 is the stable release following 1.2.\
\
Producer has been removed from the distribution with osgViewer as its intended replacement.\
\
@@ -54,18 +183,20 @@ With Leopard on the horizon, the need to deal with 64-bit readiness and deprecat
\
\
\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\f0\b Notes for 1.2 release:\
\b \cf0 Notes for 1.2 release:\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\f1\b0 1.2 was originally intended as a bug fix release for 1.1 (going for 1.1.1), but OSG broke ABI again so the number was bumped to 1.2. There are no significant changes to the Xcode projects or significant OS X specific changes.\
\b0 \cf0 1.2 was originally intended as a bug fix release for 1.1 (going for 1.1.1), but OSG broke ABI again so the number was bumped to 1.2. There are no significant changes to the Xcode projects or significant OS X specific changes.\
\
Since the 1.1 release, we have learned of serious problems (freezing of the window manager) on the (Intel) MacBook Pros using osgText. We believe the problem is with a serious driver bug for ATI in OS X 10.4.7. We believe the bug affects the ATI Radeon X1600. (You can get this string by calling glGetString(GL_RENDERER) when you have a valid OpenGL Context. The string returned to us on affected MacBook Pros is "ATI Radeon X1600 OpenGL Engine".)\
\
Robert Osfield says:\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\li720\ri0\ql\qnatural\pardirnatural
\f2\i \cf0 osgText subloads small glyphs one by one rather than the whole image, so I'd suspect it is this that is broken. There is a path way in osgText::Font for uploading the whole image at once, which original was specifically implement as a work around for an Octane driver bug, but for 1.1 I enabled this pathway to be selectable via an env var to see if OSX users could work around the OSX driver bug.
\f1\i0 \
\i \cf0 osgText subloads small glyphs one by one rather than the whole image, so I'd suspect it is this that is broken. There is a path way in osgText::Font for uploading the whole image at once, which original was specifically implement as a work around for an Octane driver bug, but for 1.1 I enabled this pathway to be selectable via an env var to see if OSX users could work around the OSX driver bug.
\i0 \
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ri0\ql\qnatural\pardirnatural
\cf0 \
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
@@ -84,10 +215,10 @@ James Hopper suggests another solution that doesn't require you to launch throug
\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx9360\li720\ri0\ql\qnatural\pardirnatural
\f2\i \cf0 you can set environement variables that work with applications by creating a file ~/.MacOSX/.environment.plist and put them in there. easiest way is to use the preference pane called RCEnvironment at\
\i \cf0 you can set environement variables that work with applications by creating a file ~/.MacOSX/.environment.plist and put them in there. easiest way is to use the preference pane called RCEnvironment at\
\
{\field{\*\fldinst{HYPERLINK "http://www.rubicode.com/Software/RCEnvironment/"}}{\fldrslt http://www.rubicode.com/Software/RCEnvironment/}}
\f1\i0 \
\i0 \
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\cf0 \
\
@@ -125,14 +256,15 @@ If you are affected by this, please file a bug report at {\field{\*\fldinst{HYPE
\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\f2\i \cf0 (Note: We believe this has been fixed in 10.4.8)
\f1\i0 \
\i \cf0 (Note: We believe this has been fixed in 10.4.8)
\i0 \
\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\f0\b \cf0 Notes for 1.1 release:\
\b \cf0 Notes for 1.1 release:\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\f1\b0 We are now distributing Universal Binaries. These binaries were built using Xcode 2.3 and gcc 4.0.1.\
\b0 \cf0 We are now distributing Universal Binaries. These binaries were built using Xcode 2.3 and gcc 4.0.1.\
The Xcode projects are also set to build as Universal Binaries for both Development and Deployment\
targets. If you do not need this and want to save build time, you should change the architecture option\
to your desired setting (most likely to $(NATIVE_ARCH)). It is overridden in the top-level "OpenSceneGraph" project in the Group & Files panel. Don't forget to change OpenThreads \
@@ -153,9 +285,10 @@ PlugIns, the file size shrunk from about 1GB to about 100MB.\
We have stopped maintaining the Xcode 1.5/2.0 projects.\
\
\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\f0\b Notes for 1.0 release:
\f1\b0 \
\b \cf0 Notes for 1.0 release:
\b0 \
These projects were primarily developed with gcc 4.0.1 under Tiger 10.4.3 using Xcode 2.2. Starting with gcc 4.0, Apple no longer statically links in the C++ runtime. Apple has made available the g++ 4.0 dynamic runtime for Panther under the 10.3.9 release. To run under Panther, your system must have this update (or you must recompile the binaries for your system).\
\
With gcc 4.0, serious bugs have been fixed from gcc 3.3 and new features are available to us so we have experimented with more aggressive optimizations. For these binaries we have enabled -O3 optimization and -mtune=G5. We have also enabled autovectorization. We also enabled -fvisibility-inlines-hidden which is expected to shrink the binary sizes, but noticed very little difference. (There may be something wrong.) We have not done the proper benchmarking with these options, so feedback is welcome.\
@@ -167,8 +300,8 @@ With Apple's announcement of the Intel transition, Xcode 2.1 was released to hel
\
\
\f0\b Acknowledgments:
\f1\b0 \
\b Acknowledgments:
\b0 \
\
Many thanks should be given to the people that have helped make these projects possible and for their contributions to make OSG run well on OS X through the multiyear run-up to 1.0. I unfortunately don't have a comprehensive list as many contributions have been submitted directly to OpenSceneGraph, but I wanted to give mention to these specific people I've had the pleasure of working with in trying to make this corner of the universe work.\
\
@@ -176,14 +309,14 @@ James Hopper (work on Xcode templates, GDAL frameworks)\
David Guthrie (various patches, testing, Xcode project compiler options refinement)\
Jeremy Bell (original comprehensive discussion on OS X frameworks, patches)\
Stephen Travis Pope (provider of the OSG on OS X website)\
Markus St\'9abe (web site design, documentation reviewer and formatter)\
Markus St\'f6be (web site design, documentation reviewer and formatter)\
(And for the curious) Eric Wing (Xcode projects and frameworks, patches, documentation)\
\
\
\
\f0\b Installation:
\f1\b0 \
\b Installation:
\b0 \
\
To "Install" the Frameworks, copy the Frameworks inside the \
frameworks folder to a standard location.\
@@ -220,8 +353,8 @@ Also be aware that if using the 10.4 Universal SDK, you may have to explicitly s
\
\
\f0\b Running the examples:
\f1\b0 \
\b Running the examples:
\b0 \
\
Now that osgViewer supports a native Window manager, we have attempted to provide double clickable .app bundles. We cheat a little to keep the download size smaller by symbolically linking the Frameworks, PlugIns, and Resources directories for each .app bundle instead of giving each its own copy. This allows the apps to find their resources when trying to run directly from the .dmg without having to copy anything to your computer. \
\
@@ -253,14 +386,15 @@ Also remember that OSG will still respond to standard OSG environmental variable
\
\
\f0\b Prebinding Addresses:\
\b Prebinding Addresses:\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\f1\b0 \
\b0 \cf0 \
These are now obsolete. Prebinding is now disabled. The old addresses were:\
\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\f3 \cf0 OpenThreads -seg1addr 0x1FF00000\
\f1 \cf0 OpenThreads -seg1addr 0x1FF00000\
osg -seg1addr 0x1FF10000\
osgUtil -seg1addr 0x20230000\
osgDB -seg1addr 0x20380000\
@@ -273,13 +407,13 @@ osgFX -seg1addr 0x20690000\
osgViweer -seg1addr 0x20700000\
gdal -seg1addr 0x207d0000\
osgTerrain -seg1addr 0x20c40000
\f1 \
\f0 \
\
\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\f0\b \cf0 Xcode Projects:
\f1\b0 \
\b \cf0 Xcode Projects:
\b0 \
\
The Xcode Projects are now included as part of the official OpenSceneGraph distribution.\
\
@@ -288,20 +422,38 @@ Xcode 2.0 and below have the extension .xcode (no longer maintained)\
\
\
\f0\b Xcode Templates:\
\b Xcode Templates:\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural
\f1\b0 \cf0 \
\b0 \cf0 \
We have included a "New Project" template for OpenSceneGraph projects. We recommend you place the "OSG Application" folder into either:\
\
Xcode 2.4 and before:\
/Library/Application Support/Apple/Developer Tools/Project Templates/Appllcation (for system-wide)
\f0\b \
\b \
\f1\b0 ~/Library/Application Support/Apple/Developer Tools/Project Templates/Appllcation (for per-user)
\f0\b \
\b0 ~/Library/Application Support/Apple/Developer Tools/Project Templates/Appllcation (for per-user)
\b \
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\f1\b0 \cf0 \
\b0 \cf0 \
Xcode 2.5/3.0:\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural
\cf0 System-wide:\
/Library/Application Support/Developer/Shared/Xcode/Project Templates/Application (both 2.5 and 3.0)\
/Library/Application Support/Developer/3.0/Xcode/Project Templates/Application (3.0 only)\
/Library/Application Support/Developer/2.5/Xcode/Project Templates/Application (2.5 only)\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\cf0 \
Per-user\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural
\cf0 ~/Library/Application Support/Developer/Shared/Xcode/Project Templates/Application (both 2.5 and 3.0)\
~/Library/Application Support/Developer/3.0/Xcode/Project Templates/Application (3.0 only)\
~/Library/Application Support/Developer/2.5/Xcode/Project Templates/Application (2.5 only)\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\cf0 \
\
\
After doing this, when doing a File->New Project, you will see "OSG Application" under the Application category. Selecting this will create a simple OSG project with some sample source code already in place which currently renders 2 colored tetrahedrons.\
\
All the OSG related frameworks are listed already, though gdal and osgTerrain are not checked by default. To link against them, you must check their checkboxes to enable them. Feel free to uncheck or remove frameworks you don't need.\
@@ -322,8 +474,8 @@ Finally, there may still be issues with Zerolink. If you have problems seeing th
\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\f0\b \cf0 Compatibility:
\f1\b0 \
\b \cf0 Compatibility:
\b0 \
\
The binaries are built using gcc 4.0.1 under Tiger 10.4.7. These binaries also will run under Panther 10.3.9 (which has the needed C++ runtime library). \
\
@@ -333,38 +485,39 @@ Also keep in mind that the prebinding addresses are finicky. Changing the compil
\
If you are compiling under Xcode 1.5 and are using our Xcode 1.5/2.0 projects, there have been reports of problems I have been unable to reproduce. If you do encounter these problems, please try the following. \
\pard\tx220\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\li720\fi-720\ql\qnatural\pardirnatural
\ls2\ilvl0\cf0 {\listtext \'a5 }I have more rigorously tested the Deployment build style than the Development build style so use the Deployment build style. Make sure you are compiling using -Os or -O0 optimization. -O3 is known to have problems under gcc 3.3. \
{\listtext \'a5 }The -mtune=G4 is has been tested more under Xcode 1.5 than -mtune=G5. \
{\listtext \'a5 }I noticed that for some reason, Xcode has problems compiling the Carbon header with the OpenThreads framework when autovectorization and precompiled headers were enabled. You might try disabling precompiled headers if it is not already. If the problem persists, you may also need to delete the entry that enables autovectorization. In the Groups and Files panel (left side panel), open the Info inspector for the project (top item) and click on the Build tab. Scroll down to the bottom, and remove the autovectorization option. \
\ls3\ilvl0\cf0 {\listtext \'95 }I have more rigorously tested the Deployment build style than the Development build style so use the Deployment build style. Make sure you are compiling using -Os or -O0 optimization. -O3 is known to have problems under gcc 3.3. \
{\listtext \'95 }The -mtune=G4 is has been tested more under Xcode 1.5 than -mtune=G5. \
{\listtext \'95 }I noticed that for some reason, Xcode has problems compiling the Carbon header with the OpenThreads framework when autovectorization and precompiled headers were enabled. You might try disabling precompiled headers if it is not already. If the problem persists, you may also need to delete the entry that enables autovectorization. In the Groups and Files panel (left side panel), open the Info inspector for the project (top item) and click on the Build tab. Scroll down to the bottom, and remove the autovectorization option. \
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\cf0 \
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\f0\b Universal Binaries:
\f1\b0 \
\b \cf0 Universal Binaries:
\b0 \
\
Be aware, when building you're own Universal Binaries and you use the 10.4 SDK, you must explicitly\
list the search path to the frameworks in the project options. It seems that using any SDK will cause\
the standard places like /Library/Frameworks to not be searched.\
\
\f0\b Known Issues:
\f1\b0 \
\b Known Issues:
\b0 \
\
There is one known serious bug that appears sometimes. With Xcode 2.0 and 2.1, in some cases when you build OpenThreads/OSG from scratch, when you run the examples, they will crash on load. The workaround seems to be to delete just the OpenThreads framework after everything is built. Then rebuild just the OpenThreads framework. Bug reports have been filed with Apple, but the root cause remains to be a mystery. (We have some guesses, but nothing substantial.) I have not yet seen this issue emerge with Xcode 2.2, so maybe the problem is fixed.\
\
The osgdb_geo plugin is not big endian safe. The Makefile system does not build it for OS X. We have added it for the Xcode projects, but you probably shouldn't use it unless you're on Intel.\
\
Do not use the
\f4\fs22 -fvisibility=hidden
\f1\fs24 flag unless you know what you're doing. In some cases, Xcode 2.2 seems to enable this by default in the project settings. You should verify your project settings and make sure this is disabled. Among other things, this flag will hide RTTI information causing dynamic_cast<> operations to fail. Since parts of OSG are dependent on RTTI, this option should remain off. The flag
\f4\fs22 -fvisibility-inlines-hidden
\f1\fs24 may be safe to use. (This is actually enabled in our Xcode projects. If there are problems, please let us know.)\
\f2\fs22 -fvisibility=hidden
\f0\fs24 flag unless you know what you're doing. In some cases, Xcode 2.2 seems to enable this by default in the project settings. You should verify your project settings and make sure this is disabled. Among other things, this flag will hide RTTI information causing dynamic_cast<> operations to fail. Since parts of OSG are dependent on RTTI, this option should remain off. The flag
\f2\fs22 -fvisibility-inlines-hidden
\f0\fs24 may be safe to use. (This is actually enabled in our Xcode projects. If there are problems, please let us know.)\
\
Finally, there may still be issues with Zerolink. In the Project Template, we defer to the default for this option and in current Xcode versions, the default is on. The OSG Xcode projects themselves have explicitly disabled Zerolink. In the worst cases, scenes will not render correctly or the application may crash. The worst thing about this is that the problems are so strange, you may not realize Zerolink is the problem. To see this for yourself (we tried in Xcode 2.2), you might try comparing the osgdelaunay example with and without Zerolink, toggling through all values of 'n'. With Zerolink certain objects do not even appear and it crashes. So you are probably should disable this to be safe. However, for the daring, Zerolink does seem to work for some projects though we do not fully understand the criteria for this. Furthermore, Apple constantly works on improving this feature so maybe one day it will all just work right.\
\
\f0\b Misc:
\f1\b0 \
\b Misc:
\b0 \
\
Included with the OSG Xcode projects are some of the little scripts I used to help put everything together. The build script might be of interest to those who wish to produce their own automated nightly builds.\
\
@@ -380,7 +533,7 @@ On the topic of feature requests, another potentially useful thing to have is a
\
\
-Eric Wing\
ewing 2121 - at - yahoo (in the commercial domain)\
ewing . public - at - gmail (in the commercial domain)\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
{\field{\*\fldinst{HYPERLINK "http://www.create.ucsb.edu/OSG/"}}{\fldrslt \cf0 http://www.create.ucsb.edu/OSG/}}\
}

File diff suppressed because it is too large Load Diff

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>org.OpenSceneGraph.os</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -19,6 +19,6 @@
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -19,6 +19,6 @@
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -19,6 +19,6 @@
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -19,6 +19,6 @@
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -19,6 +19,6 @@
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>2.0.0d1</string>
<string>2.2.0d1</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>org.OpenSceneGraph.osgGLUTkeyboardmouse</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>org.OpenSceneGraph.osgGLUTsimple</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -19,6 +19,6 @@
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -19,6 +19,6 @@
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -19,6 +19,6 @@
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -19,6 +19,6 @@
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -19,6 +19,6 @@
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -19,6 +19,6 @@
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -19,6 +19,6 @@
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -19,6 +19,6 @@
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osganimate</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany. osgarchive</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osgautotransform</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osgbillboard</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osgblendequation</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osgcallback</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>org.OpenSceneGraph.osgcamera</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osgcameragroup</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osgcatch</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osgclip</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osgcluster</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>org.OpenSceneGraph.osgcompositeviewer</string>
<key>CFBundleVersion</key>
<string>1.9.7</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osgconv</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com. OpenSceneGraph.osgcopy</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osgcubemap</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -21,7 +21,7 @@
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>2.0.0d1</string>
<string>2.2.0d1</string>
<key>CSResourcesFileMapped</key>
<string>yes</string>
</dict>

View File

@@ -21,7 +21,7 @@
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>2.0.0d1</string>
<string>2.2.0d1</string>
<key>CSResourcesFileMapped</key>
<string>yes</string>
</dict>

View File

@@ -21,7 +21,7 @@
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>2.0.0d1</string>
<string>2.2.0d1</string>
<key>CSResourcesFileMapped</key>
<string>yes</string>
</dict>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>org.OpenSceneGraph.osgdelaunay</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>org.OpenSceneGraph.osgdepthpartition</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osgdepthshadow</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osgdistortion</string>
<key>CFBundleVersion</key>
<string>2.0.0d</string>
<string>2.2.0d</string>
</dict>
</plist>

View File

@@ -15,6 +15,6 @@
<key>CFBundleShortVersionString</key>
<string></string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osgforest</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osgfxbrowser</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osggeometry</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osghangglide</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osghud</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osgimposter</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>org.OpenSceneGraph.osgintrospection</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osgkeyboard</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osgkeyboardmouse</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osglauncher</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osglightpoint</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osglight</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osglogicop</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osglogo</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osgmanipulator</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osgmotionblur</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.osgmovie</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

View File

@@ -7,6 +7,6 @@
<key>CFBundleIdentifier</key>
<string>com.MySoftwareCompany.multitexture</string>
<key>CFBundleVersion</key>
<string>2.0.0</string>
<string>2.2.0</string>
</dict>
</plist>

Some files were not shown because too many files have changed in this diff Show More