Commit Graph

10248 Commits

Author SHA1 Message Date
Robert Osfield
fccda08491 Added corner dirty options to TerrainTechnique, added experimental code paths in GeometryTechnique for accounting for neighbouring corner tiles - optionally compiled out in this check-in.
Changed the normal computation in GeometryTechnique so that it doesn't include diagonals, thus avoid normal jumps at corners.
2010-04-09 08:52:40 +00:00
Robert Osfield
d992f6e018 Updated wrappers 2010-04-03 16:26:32 +00:00
Robert Osfield
c6c26d5d44 Change Terrain so that it subclassed from CoordinateSystemNode.
Implemented new update scheme of GeometryTechnique to avoid potential threading issues.

Added Terrain support to .ive.
2010-04-03 16:21:34 +00:00
Robert Osfield
656efbf03f Removed getNeighbours() method to avoid problems with introspection wrappers 2010-04-01 21:18:39 +00:00
Robert Osfield
47cdee3611 Removed TerrainNeightbours class from wrapping to avoid associated build errors 2010-04-01 21:15:17 +00:00
Robert Osfield
a8bbf0a809 Added support for boundary equalization to GeometryTechnique 2010-04-01 21:06:56 +00:00
Robert Osfield
15afc29018 Added window size event handler 2010-04-01 21:04:36 +00:00
Robert Osfield
31e526f253 Added TerainHandler event handler to provide 'v'/'V' and 'r'/'R' key controls for change vertical scale and sample ratio respectively. 2010-03-29 08:49:20 +00:00
Robert Osfield
8547536387 From Jean-Sebastien Guay, "When the StatsHandler tries to find a context to add itself to, it will first look for a GraphicsWindow, and if none is found it will look for a GraphicsContext. This enables apps that do all their rendering to offscreen contexts (pbuffer) to still use the StatsHandler." 2010-03-26 11:09:10 +00:00
Robert Osfield
7fd81fdd06 Updated wrappers 2010-03-26 11:07:43 +00:00
Robert Osfield
3f39a66035 From Jim Brooks, fix for FreeBSD build where FIND_LIBRARY(DL_LIBRARY..) return NOT_FOUND. 2010-03-26 09:01:49 +00:00
Cedric Pinson
d218032448 Fix compile issue t = fmod(t, (float)_duration); 2010-03-25 20:20:10 +00:00
Cedric Pinson
35fa541350 Change time type from float to double in osgAnimation 2010-03-25 17:50:29 +00:00
Robert Osfield
fe5527f332 From Mathias Froehlich, "I added some features to the vrml plugin.
The plugin can now handle embeded PixelTexture fields in addition to the
already implemented ImageTexture fields.

Fixed a bug with texture repeat being applied to the wrong texture dimension.

Added handling for IndexedLineSet geometries."
2010-03-25 14:19:01 +00:00
Robert Osfield
ecf7a7e3e4 From Stephan Huber, "attached you'll find a small enhancement for GraphicsWindowCocoa. My
submision adds a getter for the pixel-format. I need this for some
custom software so I can integrate CoreVideo-playback with osg.
"
2010-03-25 14:14:46 +00:00
Robert Osfield
75d1de3d15 Fixed warning 2010-03-25 14:12:28 +00:00
Robert Osfield
304214e0df Introduced the use of linear interpolation of evelvations when sampling 2010-03-25 11:11:35 +00:00
Robert Osfield
9d35ec1631 Added a compile test for pthread_setaffinity_np to workaround problem with the FreeBSD pthread lib containing the function but the pthread.h header not containing it. 2010-03-24 17:12:05 +00:00
Robert Osfield
1319e270f6 Refactored the way that the RequestQueue's are pruned and highest prioty items taken from them so the operation is
now O(n) rather than O(nlogn) where n is the number of requests.  The refactoring also cleans up the access of the
request lists so that the code is more readable/maintainable.
2010-03-24 14:27:00 +00:00
Robert Osfield
627a4b78c9 Updated wrappers 2010-03-23 12:41:02 +00:00
Robert Osfield
99b6b268bc From Michael Platings, "the attached files fix the DAE importer for animations that don't contain channels for all X, Y and Z components, as exported by SoftImage." 2010-03-22 17:55:14 +00:00
Robert Osfield
d969034f44 Changed private: to protected: to fix build issue under OSX 2010-03-22 14:32:19 +00:00
Robert Osfield
8a39ece376 From Chuck Seberino, "have a fix for the reading code in trunk/src/osgPlugins/gz/ReaderWriterGZ.cpp. It seems that the std::istream::readsome method on windows is a no-op (for files. After much head scratching and research I was able to figure out what was going on. I am submitting a fix to replace readsome with read() and gcount(). This change is for all platforms. The previous implementation works fine under linux and OSX, so if you would rather keep things the way they are you can just #ifdef for non-WIN32.
I also added openmode flags to the ifstream constructor, since they were needed to get proper reading as well as a typo fix."
2010-03-22 13:13:22 +00:00
Robert Osfield
8b66d5348e From Farshid Lashkari, "I noticed that osg::notify does not output to stderr when using either FATAL or WARN severity levels. There is code in osg::StandardNotifyHandler::notify that will use stderr based on the severity level, but it is disabled by an #if 0. I'm assuming this was a mistake and have re-enabled the code.
Many IDEs will capture the output of processes and highlight stderr messages in red. After upgrading from OSG 1.2, I was noticing that none of the error messages were being highlighted, which I find quite useful."
2010-03-22 12:50:27 +00:00
Stephan Maximilian HUBER
7e6ddb8588 From Stephan Huber: updated xcode-project 2010-03-22 10:43:45 +00:00
Robert Osfield
994e7ece43 From Ulrich Hertlein, changed init() call to _init(). 2010-03-20 09:45:59 +00:00
Michael PLATINGS
03d5b81a6f Workaround for files exported from SoftImage that don't tag skeleton nodes correctly. 2010-03-19 20:12:19 +00:00
Michael PLATINGS
f053c6c567 From Paul Martz: This is a fix to get the FBX plugin to compile on OS X 2010-03-19 18:28:20 +00:00
Robert Osfield
5612a4640f Added a minimum tiles size of 16 to prevent down sampling from being overly aggressive. 2010-03-19 17:09:30 +00:00
Robert Osfield
04e4fa74cc Added new osgterrain example that is simplified to just basic setup and control osgTerrain nodes, leaving the osgthreadedterrain as the more complex example. 2010-03-19 16:31:48 +00:00
Robert Osfield
e9cd6b140f Renamed source file 2010-03-19 16:30:56 +00:00
Robert Osfield
515e421e1e Renamed osgterrain to osgthreadedterrain to better reflect it's functionality. 2010-03-19 14:55:35 +00:00
Michael PLATINGS
328c19dad9 Fixed an infinite loop when loading a malformed file. 2010-03-19 10:19:41 +00:00
Michael PLATINGS
660cb74877 Workaround for models with inverted transparency 2010-03-18 19:02:12 +00:00
Robert Osfield
c3b7a04cf1 Added StateSet event handler to osgfont and osgtext to aid with debugging 2010-03-18 17:10:48 +00:00
Robert Osfield
1590f6be3b Added in a test of using the utility classes in include/osgUtil/MeshOptimizers to see if they could improve peformance.
Tests shown poorer performance with the code enabled so for now the code is #if 0 #endif'd out, and just left in place for future testing.
2010-03-18 15:04:27 +00:00
Robert Osfield
0c1503275b Removed the sizeAdjustment code as it was leading to incorrect tex coord generation and clipping of the left handside
of the text glyphs.
2010-03-18 14:41:33 +00:00
Robert Osfield
031aaf23d0 From J.P. Delport, "attached an updated FindGDAL that finds 1.6.0 version in Debian unstable. Could also be added to VPB.
Also some misc spelling fixes in CMakeLists.txt"
2010-03-17 14:36:16 +00:00
Robert Osfield
28105bacc1 From Glenn Waldron, "The PLY plugin only works for a file that includes both vertices and faces. This patch adds support for PLY files that include only vertices (a point cloud)." 2010-03-17 14:32:32 +00:00
Robert Osfield
0661901016 disabled timing debug info 2010-03-17 11:35:52 +00:00
Stephan Maximilian HUBER
3dcb5d8de1 From Stephan Huber: updated XCode project 2010-03-17 10:33:48 +00:00
Robert Osfield
afd2c05f6d Updated wrappers 2010-03-16 18:53:42 +00:00
Robert Osfield
d5aea9c0f2 Updated various serialization support for .osg, .osgt/b/x and .ive. 2010-03-16 18:44:27 +00:00
Robert Osfield
c4e82f0221 Added BlendingPolicy support into osgTerrain::Terrain. 2010-03-16 18:43:59 +00:00
Robert Osfield
1537af6235 Added osgTerrain::TerrainTile::set/getBlendingPolicy(BlendingPolicy) to enable control over whether the tile should have blending enabled on it. 2010-03-16 12:05:41 +00:00
Robert Osfield
d10ce23e62 Fixed recursive call due to missing _ 2010-03-15 20:09:23 +00:00
Robert Osfield
ec56528d58 From Jean-Sebastien Guay, "This small one-line change allows us to load a geometry shader with the extension .geom with osgDB::readShaderFile() which will return an osg::Shader* with the type already set to GEOMETRY. Very convenient. :-)
This was already possible for .frag and .vert so there's no reason why it shouldn't be possible for .geom.

I also changed the alignment of some extension aliases so the file looks a bit better now, but it's up to you if you want to merge that or not.
"
2010-03-15 15:10:50 +00:00
Robert Osfield
2b7fb78c75 From Farshid Lashkari, "I noticed that CMake forces a high stack size by default for all MSVC projects. This can cause problems for applications that use a lot of threads. I've added a new option MSVC_USE_DEFAULT_STACK_SIZE that will remove the explicit stack size and use the default MSVC size. Apparently this was only necessary for very old versions of MSVC but it's still around. I would argue that this option should be on by default, but I've left it off for now.
"
2010-03-15 15:01:21 +00:00
Robert Osfield
1b6adccdc4 From Wang Rui,
"Here is a small fix in the eventTraversal() function of both viewer
and composite viewer class.

if (getCameraWithFocus())
{
   if (getCameraWithFocus()!=getCamera())  // Newly added
   {
       osg::Viewport* viewport = getCameraWithFocus()->getViewport();
       osg::Matrix localCameraVPW =
getCameraWithFocus()->getViewMatrix() *
getCameraWithFocus()->getProjectionMatrix();
       if (viewport) localCameraVPW *= viewport->computeWindowMatrix();

       osg::Matrix matrix( osg::Matrix::inverse(localCameraVPW) *
masterCameraVPW );

       osg::Vec3d new_coord = osg::Vec3d(x,y,0.0) * matrix;

       x = new_coord.x();
       y = new_coord.y();
   }
   ...
}

I put an additional conditional statement here to ensure that
_cameraWithCamera and _camera are different, otherwise it's no need to
calculate the transition matrix from main camera to focus camera. The
excess calculations of 'matrix' and 'new_coord' may cause
floating-point error and return a slightly wrong result other than an
identity matrix. It seems OK in most cases but will be still pain when
there is little difference between two mouse moving events. "
2010-03-15 14:47:22 +00:00
Robert Osfield
b40c1b355c Updated wrappers 2010-03-15 10:32:29 +00:00