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
a8bbf0a809
Added support for boundary equalization to GeometryTechnique
2010-04-01 21:06:56 +00:00
Robert Osfield
5cd4faf05b
From Jason Beverage, "I posted a question on osg users about resources not being properly released when using osgTerrain databases and multiple viewers are used a few weeks ago and I've found that at least part of the problem comes down to the fact that the nodes that are traversed by the GeometryTechnique are never actually added to the scene graph, and thus don't have releaseGLObjects called on them. I'm submitting a few changes that takes care of this by allowing the TerrainTechnique to provide a releaseGLObjects implementation. I've applied these changes in osgEarth and this example program no longer crashes on the second run, although I get corrupt geometry (see attached shot) which could be down to a driver issue. If I increment the context ID for the second viewer, I no longer get the corrupt geometry.
...
The attached changes are against OpenSceneGraph 2.8.2.
//Sample program. Run against an osgEarth or VPB database based on osgTerrain.
#include <osgDB/ReadFile>
#include <osgViewer/Viewer>
int main(int argc, char** argv)
{
osg::ArgumentParser arguments(&argc,argv);
osgViewer::Viewer* viewer = new osgViewer::Viewer();
viewer->setUpViewInWindow(100,
100,500,500);
osg::ref_ptr<osg::Node> loadedModel = osgDB::readNodeFiles(arguments);
viewer->setSceneData( loadedModel.get() );
viewer->run();
delete viewer;
viewer = new osgViewer::Viewer();
viewer->setUpViewInWindow(100,100,500,500);
loadedModel = osgDB::readNodeFiles(arguments);
viewer->setSceneData( loadedModel.get() );
viewer->run();
delete viewer;
}"
2009-11-20 11:08:40 +00:00
Robert Osfield
4d60d73eca
Reorginized the TerrainTile/TerrainTechnique dirty mechanism so that TerrainTile
...
now holds the dirty flag and enables/disables event traversal in response dirty
being set/unset. This allows terrain to be automatically updated in response
to Terrain scale and sample ratio changes.
2008-05-27 15:30:20 +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
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
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
1c6193ba78
Renamed osgTerrain::TerrainNode to osgTerrain::Terrain and introduced basic
...
.osg read support for osgTerrain::Terrain.
2007-08-07 19:53:57 +00:00
Robert Osfield
b97d8c0fe0
Added TerrainNode::init() and s/getTreatBoundariesToValidDataAsDefaultValue flag.
2007-05-13 09:54:51 +00:00
Robert Osfield
4688d5ae8e
Rearranged the traversal and initialization of TerrainTechnique
2007-03-27 16:01:01 +00:00
Robert Osfield
541c3f13e9
Added GeometryTechinque to osgTerrain. Added usage of GeometryTechnique into osgterrain example
...
Added --width and --height command line options to osgdistortion to allow users
to control the window size.
2007-03-21 16:34:04 +00:00
Robert Osfield
c489b0af2c
Renamed HeightFieldNode and HeightFieldRenderer to TerrainNode and TerrainTechnique respectively
2007-03-14 11:24:04 +00:00