diff --git a/AUTHORS.txt b/AUTHORS.txt index 36a63e7c5..18b3b1a24 100644 --- a/AUTHORS.txt +++ b/AUTHORS.txt @@ -1,6 +1,6 @@ -OpenSceneGraph Library 3.1.8 +OpenSceneGraph Library 3.1.9 -504 Contributors: +510 Contributors: Firstname Surname ----------------- @@ -10,14 +10,14 @@ Stephan Huber Paul Martz Mathias Fröhlich Marco Jez -Jean-Sébastien Guay Farshid Lashkari -Mike Weiblen +Jean-Sébastien Guay Wang Rui +Mike Weiblen Ulrich Hertlein Eric Wing -Cedric Pinson Sukender +Cedric Pinson Brede Johansen Bob Kuehne Michael Platings @@ -32,10 +32,10 @@ Martin Lavery Tree Luigi Calori Mike Wittman +Laurens Voerman Chris Hanson Roland Smeenk Roger James -Laurens Voerman Jeremy Moles Jason Beverage Jan Peciva @@ -45,11 +45,11 @@ Magnus Kessler David Fries Andy Skinner Paul Melis +Alberto Luaces +Luc Frauciel Tom Jolley Pavel Moloshtan -Luc Frauciel Brad Christiansen -Alberto Luaces Olaf Flebbe Jason Daly Art Tevs @@ -63,12 +63,12 @@ Chris Denham Alberto Farre Sherman Wilcox Robert Michael +Mourad Boufarguine +Lionel Lagarde André Garneau Adrian Egli Ruben Lopez Randall Hopper -Mourad Boufarguine -Lionel Lagarde Jan Ciger Glenn Waldron Gideon May @@ -81,6 +81,7 @@ Joakim Simonsson David Spilling Daniel Sjölie Bryan Thrall +Aurelien Albert Torben Dannhauer Fabien Lavignotte Mike Connell @@ -99,7 +100,6 @@ Csaba Halasz Cory Riddell Chuck Seberino Boris Bralo -Aurelien Albert Yefei He Thomas Hogarth Sondra Iverson @@ -141,6 +141,7 @@ Mihai Radu Michael Hartman Martins Innus Maciej Krol +Lilin Xiong Leandro Motta Barros Jordi Torres Johan Nouvel @@ -155,9 +156,9 @@ Sebastien Grignard Ryan Kawicki Rudolf Wiedemann Romano Magacho +Pjotr Svetachov Mikhail Izmestev Maria Ten -Lilin Xiong Liang Aibin Katharina Plugge John Vidar Larring @@ -180,11 +181,11 @@ Tugkan Calapoglu Tim Daoust Sohey Yamamoto Sergey Leontyev +Sebastian Messerschmidt Santosh Gaikwad Ryan Pavlik Robert Milharcic Rene Molenaar -Pjotr Svetachov Piotr Domagalski Phil Atkin Nathan Monteleone @@ -196,6 +197,7 @@ Lee Butler Konstantin Sinitsyn Ken Sewell Julian Ortiz +John Kaniarz Jim Vaughan Jeremy Bell Jaromir Vitek @@ -209,6 +211,7 @@ Doug McCorkle Donald Cipperly Don Leich Dietmar Funck +Christian Buchner Charles Cole Blake Williams Antoine Hue @@ -231,7 +234,6 @@ Stephane Simon Stephan Eilemann Stanislav Blinov Sergey Polischuk -Sebastian Messerschmidt Raymond de Vries Ralf Kern Piotr Gwiazdowski @@ -263,7 +265,6 @@ Kevin Moiule Keith Steffen Julen Garcia Joseph Winston -John Kaniarz John Aughey Joachim Pouderoux Jean-Christophe Lombardo @@ -277,6 +278,7 @@ Guy Volckaert Gustavo Wagner Guillaume Taze Guillaume Chouvenc +Gill Peacegood Gerrick Bivins George Tarantilis Ferdi Smit @@ -291,7 +293,6 @@ Daniel Trstenjak Craig Bosma Claus Scheiblauer Christophe Loustaunau -Christian Buchner Brad Anderegg Aric Aumann Andrew Sampson @@ -370,6 +371,7 @@ Oren Fromberg Oliver Neumann Ole-Morten Duesund Nicolas Brodu +Nick Black Mojtaba Fathi Mirko Viviani Mikkel Gjøl @@ -398,6 +400,7 @@ Marius Kintel Mario Guimaraes Marco Sciabica Marco Lehmann +Marcel Pursche Maik Keller Lukas Diduch Louis Hamilton @@ -405,6 +408,7 @@ Lewis Harmon Leigh Stivers Laurence Muller Laura Cerritelli +Lars Nillson Kyle Centers Kristopher Bixler Konstantin Matveyev @@ -443,12 +447,12 @@ Hartmut Seichter Gunter Huber Gregory Jaegy Graeme Harkness -Gill Peacegood Gian Lorenzetto George Papagiannakis Galen Faidley Frida Schlaug Frederic Smith +Frederic Morin Frank Warmerdam Frank Midgley Frank Lindeman @@ -477,6 +481,8 @@ Clay Fowler Chuck Sembroski Christopher Blaesius Christophe Herreman +Christian Ruzicka +Christian Noon Christian Kaser Christian Ehrlicher Chris McGlone diff --git a/ChangeLog b/ChangeLog index cac668387..916cc3ee0 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,884 @@ +2013-07-01 10:22 robert + + * include/osg/Array: Removed BIND_INSTANCE_DIVISOR as they don't + yet have any implementation backend to support them. + +2013-07-01 09:12 robert + + * CMakeModules/FindFBX.cmake: From David Callu, "Here a fix for + FindFBX.cmake + + under linux, library name to look for must be fbxsdk instead of + libfbxsdk." + +2013-07-01 09:10 robert + + * CMakeLists.txt: From David Callu, "Here a CMakeLists.txt modified + with OSG_AGGRESSIVE_WARNING_FLAGS defined when Clang compilator + is used" + +2013-07-01 09:09 robert + + * src/osg/glu/libutil/mipmap.cpp: Fixed debug build compile problem + +2013-07-01 08:21 robert + + * include/OpenThreads/Exports, include/osg/Export, + src/OpenThreads/pthreads/PThread.cpp, src/osg/PrimitiveSet.cpp, + src/osg/Referenced.cpp, src/osgDB/ConvertUTF.cpp, + src/osgShadow/ConvexPolyhedron.cpp, + src/osgShadow/DebugShadowMap.cpp, src/osgWidget/Input.cpp, + src/osgWidget/Lua.cpp, src/osgWidget/Python.cpp: Reverted the + usage of OSG_UNUSED and OT_UNUSED as in hindsight these should + never have been merged. Adding code to quieten + inappropriate warnings is a bad programming practice and does not + desrve a place in the OSG code base. + +2013-06-28 15:44 robert + + * src/osgPlugins/png/ReaderWriterPNG.cpp: From John Kaniarz, "This + patch modifies ReaderWriterPNG.cpp to + 1. Check the bit depth of the passed Image and return an error if + not 8 or 16. (not fully featured, but still an improvement over + hard coded 8bit for everything) + 2. Endian swap 16bit image data when on a little endian + architecture. + " + +2013-06-28 14:47 robert + + * applications/osgviewer/osgviewer.cpp: From Alberto Luaces, + "Documentation for -p and --speed options in osgviewer" + +2013-06-28 14:38 robert + + * src/osg/ImageUtils.cpp: From Marcel Pursche, fixed checking of + destination dimensions in osg::copyImage. + +2013-06-28 14:32 robert + + * src/osgPlugins/ive/IveVersion.h, + src/osgPlugins/ive/ProxyNode.cpp: From Lilin Xiong, "When writing + proxyNode to ive file, we forget "LoadingExternalReferenceMode ". + Add some code to fix this. + + if (out->getVersion() >= VERSION_0045) + { + out->writeInt(getLoadingExternalReferenceMode()); + } + + if (in->getVersion() >= VERSION_0045) + { + setLoadExternalReferenceFiles( + (osg::ProxyNode::LoadingExternalReferenceMode)in->readInt() ); + } + " + +2013-06-28 14:21 robert + + * include/osgUtil/DelaunayTriangulator, + src/osgUtil/DelaunayTriangulator.cpp: From Gill Peacegood, "fix + for a memory leak in the DelaunayConstraint class" + +2013-06-28 14:08 robert + + * include/osg/BufferObject: From Laurens Voerman, "the current + version of BufferObject causes a huge amount of warnings in + Visual Studio 2012 like: + + OpenSceneGraph/include\osg/BufferObject(701): warning C4138: '*/' + found outside of comment + (E:\osg\osgSvn\OpenSceneGraph\src\osg\Array.cpp) + + adding a space before /* fixes the problem + void removeClient(osg::Object * /*client*/) { --_numClients; } + " + +2013-06-28 14:07 robert + + * src/osg/GraphicsContext.cpp: Fixed handling of + DISPLAY=127.0.0.1:2 usage. + +2013-06-28 13:43 robert + + * include/osg/PrimitiveRestartIndex, include/osg/StateAttribute, + src/osg/CMakeLists.txt, src/osg/PrimitiveRestartIndex.cpp, + src/osgWrappers/serializers/osg/PrimitiveRestartIndex.cpp: From + Aurelien Albert, Added support for glPrimitiveRestartIndex. + + "The idea of this new OpenGL feature is : + + - set RestartIndex = "n" + - draw elements strip + -> when the index is "n", the strip is "stopped" and restarted + + It's very usefull for drawing tiles with a single strip and a + "restart" at the end of each row. + + The idea a an OSG StateAttribute is : + + Usually we use to build geometry from code, because software + modelers rarely support it (and 3d file formats doesn't support + it) : + + -RootNode <= "PrimitiveRestartIndex=0" // So now, we know that + our restart index is 0 for all drawables under this node + | + - Drawable 1 : triangles => as usual + | + - Drawable 2 : triangles strip => as usual + | + - Drawable 3 : triangles strip + "GL_PRIMITIVE_RESTART" mode = ON + => use the restart index + | + - Drawable 4 : triangles strip + "GL_PRIMITIVE_RESTART" mode = ON + => use the restart index + | + - Drawable 5 : triangles strip => as usual + + + With a StateAttribute, it's easy for the developper to say "0 + will be my restart index for all this object" and then activate + the mode only on some nodes. + + The main problem is if you set and restart index value which is + not included in the vertex array (for exemple set restart index = + 100 but you have only 50 vertex). There is no problem with + OpenGL, but some OSG algorithms will try to access the + vertex[100] and will segfault. + + To solve this, I think there is two ways : + + 1/ add restart index in osg::PrimitiveSet and use this value in + all algorithms. It's a lot of work, maybe dangerous, and it + concern only a few situations : developpers who use this + extension should be aware of advanced OpenGL (and OSG) data + management + + 2/ use a StateAttribute, and choose a "correct" restart index. In + my applications, I always use "0" as a restart index and + duplicate the first vertex (vertex[0] = vertex[1]). So there is + no difference for OpenGL and all OSG algorithms works properly. + " + +2013-06-28 12:45 robert + + * src/osg/ShapeDrawable.cpp: Added handling of an odd number rows + in the capsule rendering and primitive calculation. + +2013-06-28 12:00 robert + + * include/OpenThreads/Exports, include/osg/BufferObject, + include/osg/Export, include/osg/ImageStream, + include/osg/TextureBuffer, include/osg/ValueObject, + include/osgAnimation/Action, + include/osgAnimation/AnimationUpdateCallback, + include/osgAnimation/MorphGeometry, + include/osgDB/DatabaseRevisions, include/osgGA/GUIEventAdapter, + include/osgManipulator/Constraint, + include/osgParticle/DomainOperator, + include/osgQt/QFontImplementation, include/osgSim/ShapeAttribute, + include/osgText/Font, include/osgVolume/Locator, + src/OpenThreads/pthreads/PThread.cpp, src/osg/BufferObject.cpp, + src/osg/GraphicsCostEstimator.cpp, src/osg/KdTree.cpp, + src/osg/Notify.cpp, src/osg/PrimitiveSet.cpp, + src/osg/Referenced.cpp, src/osg/Shader.cpp, + src/osg/ShaderAttribute.cpp, src/osg/Texture.cpp, + src/osg/glu/libtess/dict.cpp, src/osg/glu/libtess/memalloc.cpp, + src/osg/glu/libutil/mipmap.cpp, + src/osgAnimation/AnimationManagerBase.cpp, + src/osgAnimation/Skeleton.cpp, + src/osgAnimation/StackedMatrixElement.cpp, + src/osgAnimation/StackedQuaternionElement.cpp, + src/osgAnimation/StackedRotateAxisElement.cpp, + src/osgAnimation/StackedScaleElement.cpp, + src/osgAnimation/StackedTransform.cpp, + src/osgAnimation/StackedTranslateElement.cpp, + src/osgAnimation/StatsHandler.cpp, src/osgDB/ConvertUTF.cpp, + src/osgDB/DatabasePager.cpp, src/osgDB/DatabaseRevisions.cpp, + src/osgDB/ImagePager.cpp, src/osgDB/Registry.cpp, + src/osgDB/XmlParser.cpp, src/osgGA/CameraManipulator.cpp, + src/osgGA/Device.cpp, src/osgGA/FirstPersonManipulator.cpp, + src/osgGA/FlightManipulator.cpp, + src/osgGA/MultiTouchTrackballManipulator.cpp, + src/osgGA/NodeTrackerManipulator.cpp, + src/osgGA/OrbitManipulator.cpp, + src/osgGA/StandardManipulator.cpp, + src/osgGA/TerrainManipulator.cpp, + src/osgGA/TrackballManipulator.cpp, + src/osgParticle/SinkOperator.cpp, + src/osgPlugins/osg/AsciiStreamOperator.h, + src/osgPlugins/osg/BinaryStreamOperator.h, + src/osgPlugins/osg/XmlStreamOperator.h, + src/osgPresentation/KeyEventHandler.cpp, + src/osgPresentation/PropertyManager.cpp, + src/osgPresentation/SlideEventHandler.cpp, + src/osgPresentation/SlideShowConstructor.cpp, + src/osgQt/GraphicsWindowQt.cpp, + src/osgQt/QFontImplementation.cpp, src/osgQt/QWidgetImage.cpp, + src/osgShadow/ConvexPolyhedron.cpp, + src/osgShadow/DebugShadowMap.cpp, + src/osgShadow/MinimalShadowMap.cpp, + src/osgShadow/ViewDependentShadowMap.cpp, + src/osgTerrain/Layer.cpp, src/osgTerrain/TerrainTechnique.cpp, + src/osgText/DefaultFont.h, src/osgText/Style.cpp, + src/osgUtil/CullVisitor.cpp, + src/osgUtil/DelaunayTriangulator.cpp, + src/osgUtil/PolytopeIntersector.cpp, + src/osgUtil/SceneGraphBuilder.cpp, + src/osgUtil/SmoothingVisitor.cpp, src/osgUtil/Tessellator.cpp, + src/osgViewer/CompositeViewer.cpp, src/osgViewer/Keystone.cpp, + src/osgViewer/PixelBufferX11.cpp, src/osgViewer/Renderer.cpp, + src/osgViewer/ScreenCaptureHandler.cpp, src/osgViewer/Viewer.cpp, + src/osgVolume/FixedFunctionTechnique.cpp, + src/osgVolume/Layer.cpp, src/osgVolume/Locator.cpp, + src/osgVolume/RayTracedTechnique.cpp, src/osgWidget/Browser.cpp, + src/osgWidget/Canvas.cpp, src/osgWidget/Frame.cpp, + src/osgWidget/Input.cpp, src/osgWidget/Lua.cpp, + src/osgWidget/Python.cpp, src/osgWidget/StyleManager.cpp, + src/osgWidget/ViewerEventHandlers.cpp, src/osgWidget/Window.cpp, + src/osgWidget/WindowManager.cpp: From David Callu, warning fixes + and removal of spaces at end of lines. + +2013-06-28 10:59 robert + + * include/osgViewer/config/WoWVxDisplay: From David Callu, "in + osgViewer::WoWVxDisplay::WoWVxDisplay(unsigned int type=20, + unsigned int screenNum=0) + screenNum is unused. + + fix attached. + " + +2013-06-28 10:51 robert + + * include/osg/State, src/osg/Geometry.cpp, src/osg/State.cpp: From + David Callu, added support for glVertexAttribLPointer and + glVertexAttribIPointer, utilized via + osg::Array::setPreserveDataType(true); + +2013-06-28 08:57 robert + + * include/osgDB/DataTypes, include/osgDB/InputStream, + include/osgDB/OutputStream, include/osgDB/Serializer, + src/osgDB/InputStream.cpp, src/osgDB/ObjectWrapper.cpp, + src/osgDB/OutputStream.cpp: From David Callu, serializer support + for new Vec* and Vec*Array classes + +2013-06-28 08:11 robert + + * src/osg/Geometry.cpp: + +2013-06-27 17:37 robert + + * include/osg/Array, include/osg/Vec2ub, include/osg/Vec2us, + include/osg/Vec3ub, include/osg/Vec3us, include/osg/Vec4us, + src/osg/CMakeLists.txt: From David Callu, "Added Vec3ub, Vec3us, + Vec4us, Vec2ub and Vec2us classes" + +2013-06-27 16:44 robert + + * include/osg/BufferObject, src/osg/BufferObject.cpp, + src/osg/Texture.cpp, src/osg/Texture1D.cpp, + src/osg/Texture2D.cpp, src/osg/Texture2DArray.cpp, + src/osg/Texture3D.cpp, src/osg/TextureBuffer.cpp, + src/osg/TextureCubeMap.cpp, src/osg/TextureRectangle.cpp: From + Lionel Lagarde, "Support for paging and shared PBO" + + "The attached file contains: + - a per-context read counter in GLBufferObject::BufferEntry + - a global client counter in BufferData + - the glue between Texture* and Image client counter + " + +2013-06-27 15:18 robert + + * include/osg/State, src/osg/GLBeginEndAdapter.cpp, + src/osg/Geometry.cpp, src/osg/State.cpp: From Aurelien Albert, + added passing on of the gl array normalize to OpenGL when uses + vertex attribute aliasing. + +2013-06-27 14:46 robert + + * include/osg/Array, include/osg/Geometry, src/osg/Geometry.cpp, + src/osgPlugins/OpenFlight/GeometryRecords.cpp, + src/osgPlugins/OpenFlight/VertexPaletteManager.cpp, + src/osgPlugins/OpenFlight/expGeometryRecords.cpp, + src/osgPlugins/dae/daeRGeometry.cpp, + src/osgPlugins/dae/daeWGeometry.cpp, + src/osgPlugins/dxf/DXFWriterNodeVisitor.cpp, + src/osgPlugins/normals/Normals.cpp, + src/osgPlugins/normals/Normals.h, + src/osgPlugins/obj/OBJWriterNodeVisitor.cpp, + src/osgPlugins/vrml/ConvertToVRML.cpp, + src/osgWrappers/serializers/osg/Geometry.cpp: Replaced + deprecatated osg::Geometry::get*Binding() calls. + +2013-06-27 13:37 robert + + * src/osgDB/Input.cpp: Added Geometry::containsDeprecatedData() / + fixDeprecatedData() + +2013-06-27 10:58 robert + + * src/osgUtil/MeshOptimizers.cpp, src/osgUtil/Optimizer.cpp, + src/osgUtil/Simplifier.cpp, src/osgUtil/SmoothingVisitor.cpp, + src/osgUtil/TangentSpaceGenerator.cpp, + src/osgUtil/Tessellator.cpp, src/osgUtil/TriStripVisitor.cpp: + Removed deprecated usage of osg::Geometry::get*Binding() + +2013-06-27 09:59 robert + + * examples/osganimationeasemotion/osganimationeasemotion.cpp, + examples/osganimationskinning/osganimationskinning.cpp, + examples/osganimationsolid/osganimationsolid.cpp, + examples/osganimationviewer/AnimtkViewer.cpp, + examples/osgphotoalbum/ImageReaderWriter.cpp, + examples/osgphotoalbum/osgphotoalbum.cpp: Replaced deprecated + osg::Geometry::set*Binding() usage. + +2013-06-27 09:54 robert + + * applications/osgconv/osgconv.cpp: Replaced deprecated + osg::Geometry::set*Binding() usage + +2013-06-27 09:54 robert + + * examples/osganimate/osganimate.cpp, + examples/osganimationnode/osganimationnode.cpp, + examples/osgautotransform/osgautotransform.cpp, + examples/osgbillboard/osgbillboard.cpp, + examples/osgdelaunay/osgdelaunay.cpp, + examples/osgdepthpartition/osgdepthpartition.cpp, + examples/osgdepthpeeling/DePee.cpp, + examples/osgdepthpeeling/Utility.cpp, + examples/osgdistortion/osgdistortion.cpp, + examples/osgforest/osgforest.cpp, + examples/osgfxbrowser/Frame.cpp, + examples/osggameoflife/GameOfLifePass.cpp, + examples/osggameoflife/osggameoflife.cpp, + examples/osggeometry/osggeometry.cpp, + examples/osggeometryshaders/osggeometryshaders.cpp, + examples/osggpx/osggpx.cpp, examples/osghangglide/base.cpp, + examples/osghangglide/sky.cpp, examples/osghangglide/terrain.cpp, + examples/osghangglide/trees.cpp, examples/osghud/osghud.cpp, + examples/osglight/osglight.cpp, examples/osglogo/osglogo.cpp, + examples/osgmultiplemovies/osgmultiplemovies.cpp, + examples/osgmultiplerendertargets/osgmultiplerendertargets.cpp, + examples/osgoccluder/osgoccluder.cpp, + examples/osgoit/DepthPeeling.cpp, examples/osgoit/HeatMap.cpp, + examples/osgoscdevice/osgoscdevice.cpp, + examples/osgpick/osgpick.cpp, examples/osgplanets/osgplanets.cpp, + examples/osgpointsprite/osgpointsprite.cpp, + examples/osgprerender/osgprerender.cpp, + examples/osgreflect/osgreflect.cpp, + examples/osgshaderterrain/osgshaderterrain.cpp, + examples/osgshadow/IslandScene.cpp, + examples/osgshadow/osgshadow.cpp, + examples/osgsharedarray/osgsharedarray.cpp, + examples/osgspacewarp/osgspacewarp.cpp, + examples/osgspheresegment/osgspheresegment.cpp, + examples/osgstereoimage/osgstereoimage.cpp, + examples/osgstereomatch/StereoMultipass.cpp, + examples/osgstereomatch/osgstereomatch.cpp, + examples/osgtessellate/osgtessellate.cpp, + examples/osgtexture2D/osgtexture2D.cpp, + examples/osgtexture3D/osgtexture3D.cpp, + examples/osgtexturerectangle/osgtexturerectangle.cpp, + examples/osgthirdpersonview/osgthirdpersonview.cpp, + examples/osgvertexattributes/osgvertexattributes.cpp: Replaced + deprecated osg::Geometry::set*Binding() usage. + +2013-06-27 08:44 robert + + * src/osgPlugins/OpenFlight/GeometryRecords.cpp, + src/osgPlugins/mdl/VTXReader.cpp, + src/osgPlugins/obj/ReaderWriterOBJ.cpp, + src/osgPlugins/shp/ESRIShapeParser.cpp, + src/osgPlugins/txp/TXPParser.cpp: Replaced deprecated + osg::Geometry::set*Binding() usage + +2013-06-27 08:30 robert + + * src/osgPlugins/3ds/ReaderWriter3DS.cpp, + src/osgPlugins/ac/ac3d.cpp, src/osgPlugins/bsp/VBSPGeometry.cpp, + src/osgPlugins/lwo/ReaderWriterLWO.cpp, + src/osgPlugins/lwo/Surface.cpp, src/osgPlugins/lwo/old_Lwo2.cpp, + src/osgPlugins/ply/vertexData.cpp, + src/osgPlugins/trk/ReaderWriterTRK.cpp: Replaced deprecated + Geometry::set*Binding() + +2013-06-26 18:06 robert + + * src/osgSim/ScalarBar.cpp, + src/osgVolume/FixedFunctionTechnique.cpp, + src/osgVolume/RayTracedTechnique.cpp, src/osgWidget/Widget.cpp: + Replaced deprecated Geometry::set*Binding() usage + +2013-06-26 17:58 robert + + * src/osgAnimation/RigGeometry.cpp, src/osgViewer/Keystone.cpp, + src/osgViewer/StatsHandler.cpp, + src/osgViewer/config/PanoramicSphericalDisplay.cpp, + src/osgViewer/config/SphericalDisplay.cpp: Removed deprecated + Geometry::set*Binding() usage + +2013-06-26 17:54 robert + + * include/osg/Array: Added osg::getBinding(osg::Array* array) + convinience function that returns the Array::getBinding() is the + array is not NULL, otherwise returns BIND_OFF. + +2013-06-26 17:45 robert + + * src/osgTerrain/GeometryTechnique.cpp, + src/osgText/GlyphGeometry.cpp, src/osgUtil/SmoothingVisitor.cpp: + Replaced deprecated osg::Geometry::set*Binding() usage + +2013-06-26 17:44 robert + + * src/osgPlugins/3dc/ReaderWriter3DC.cpp, + src/osgPlugins/dw/ReaderWriterDW.cpp, src/osgPlugins/dxf/scene.h, + src/osgPlugins/lwo/Converter.cpp, + src/osgPlugins/normals/Normals.cpp, + src/osgPlugins/stl/ReaderWriterSTL.cpp, + src/osgPlugins/vrml/Primitives.cpp, + src/osgPlugins/x/ReaderWriterDirectX.cpp: Replaced deprecated + osg::Geometry::set*Binding() calls. + +2013-06-26 16:16 robert + + * src/osg/Geometry.cpp, src/osg/Image.cpp, + src/osg/OcclusionQueryNode.cpp, + src/osgAnimation/RigTransformSoftware.cpp, + src/osgAnimation/StatsHandler.cpp, + src/osgManipulator/RotateCylinderDragger.cpp, + src/osgManipulator/TabPlaneDragger.cpp, + src/osgManipulator/TrackballDragger.cpp, + src/osgManipulator/TranslatePlaneDragger.cpp, + src/osgPlugins/OpenFlight/GeometryRecords.cpp, + src/osgShadow/ConvexPolyhedron.cpp, src/osgSim/OverlayNode.cpp, + src/osgUtil/SceneGraphBuilder.cpp: From Sebastian Messerschmidt, + "I've taken some time and refactored some places where the old + set*Binding were used." + +2013-06-26 13:00 robert + + * include/osg/State, src/osg/State.cpp: From Aurelien Albert, "This + submission allow the user to specify how to setup + VertexAttributeAliasing. + + I think this is necessary on OpenGL 3.2+ since this is no more + "default" locations in the OpenGL specs. + + The default behaviour stay the same. + + There is a few new methods on osg::State : + + - resetVertexAttributeAlias : reset all vertex alias to osg's + default ones + - set**Alias : set a vertex attribute alias configuration + - setAttributeBindingList : set the attribute binding list (allow + to specify an empty list if you're using "layout" qualifier in + glsl code to specify the bindings. This save some CPU + operations)" + +2013-06-26 12:59 robert + + * include/osg/ArrayDispatchers: Removed unused methods + +2013-06-26 12:33 robert + + * src/osg/ArrayDispatchers.cpp: Removed spaces from end of line + +2013-06-26 12:33 robert + + * src/osg/ArrayDispatchers.cpp: Fixed bug in + TemplateTargetAttributeDispatch that was causing a crash with the + osgsimplegl3 example + +2013-06-26 09:04 robert + + * src/osgUtil/MeshOptimizers.cpp: From Pjotr Svetachov and Robert + Osfield, "the index mesh and vertex pre-transform optimizers can + rearrange or change the size of arrays assigned to a geometry. + This leads to crashes or corrupt geometry when using shared + arrays. + + Attached a fix that duplicates shared geometry arrays." + +2013-06-26 08:53 robert + + * src/osgPlugins/fbx/WriterNodeVisitor.cpp: Removed + Geometry::fixDeprecatedData() as it won't work on const Geometry + +2013-06-26 07:08 robert + + * src/osgSim/ScalarBar.cpp: From Mathias Froehlich, "The attached + file replaces the deprecated geometry use in osgSim. + The per primitive use is changed to full per vertex arrays." + +2013-06-25 16:19 robert + + * include/osg/Geometry: Removed #include as it's + nolonger required in the header + +2013-06-25 16:10 robert + + * CMakeLists.txt, examples/osgdelaunay/osgdelaunay.cpp, + examples/osgimpostor/osgimpostor.cpp, + examples/osgocclusionquery/osgocclusionquery.cpp, + include/osg/Geometry, src/osg/Config.in, src/osg/Geometry.cpp, + src/osgPlugins/Inventor/ConvertFromInventor.cpp, + src/osgPlugins/Inventor/ConvertFromInventor.h, + src/osgPlugins/Inventor/ConvertToInventor.cpp, + src/osgPlugins/Inventor/ConvertToInventor.h, + src/osgPlugins/dae/daeWGeometry.cpp, + src/osgPlugins/fbx/WriterNodeVisitor.cpp, + src/osgPlugins/ive/DataInputStream.cpp, + src/osgPlugins/ive/DataInputStream.h, + src/osgPlugins/ive/DataOutputStream.cpp, + src/osgPlugins/ive/DataOutputStream.h, + src/osgPlugins/ive/Geometry.cpp, src/osgPlugins/ive/Geometry.h, + src/osgPlugins/md2/ReaderWriterMD2.cpp, + src/osgPlugins/pfb/ConvertFromPerformer.cpp, + src/osgPlugins/pfb/ConvertFromPerformer.h, + src/osgPlugins/vrml/IndexedFaceSet.cpp, + src/osgPlugins/vrml/Primitives.cpp, src/osgSim/ScalarBar.cpp, + src/osgWrappers/deprecated-dotosg/osg/Geometry.cpp: With + assistance from Sukender, moved the depreacted osg::Geometry + vertex indices and AttributeBinding definitions out into a + separated namespace/class so to use + deprecated features you should now use deprecated_osg::Geometry + in place of osg::Geometry. + +2013-06-25 11:13 robert + + * examples/osgoit/CMakeLists.txt, examples/osgoit/DepthPeeling.cpp, + examples/osgoit/DepthPeeling.h, examples/osgoit/HeatMap.cpp, + examples/osgoit/HeatMap.h, examples/osgoit/osgoit.cpp: From + Christian Buchner, "Here is a strongly overhauled version of the + original osgoit ("order independent transparency") by Mathias + Fröhlich. I called this version myosgoit. It looks very nice, + just build and run it! + + This version adds: + + - an encapsulation of the entire Depth Peeling procedure into a + class (not currently a scene graph node) for easier integration + in other projects. + + - compositing with opaque (solid) geometry is possible and the + opaque model is only rendered once. This needs to performs some + depth buffer blitting between FBOs. + + - mix and match with GLSL shaders in the transparent objects is + possible, as demonstrated with a 3D heat map intersecting an + opaque truck model. + + + Some Drawbacks: + + - the display framebuffer does not receive any depth information + from the compositing camera. This could be fixed by compositing + with a GLSL shader and writing to FragDepth." + + From Robert Osfield, ported the code to work under Linux and + without the automatic ref_ptr to C* conversion. + +2013-06-25 09:52 robert + + * doc/Doxyfiles/all_Doxyfile, doc/Doxyfiles/auto_Doxyfile, + doc/Doxyfiles/auto_Mainpage, doc/Doxyfiles/core_Doxyfile, + doc/Doxyfiles/doxyfile.cmake, + doc/Doxyfiles/openthreads.doxyfile.cmake: From Alberto Luacas, + "current Doxygen warns against the use of obsolete fields: + DETAILS_AT_TOP, SHOW_DIRECTORIES, HTML_ALIGN_MEMBERS. + + I have removed those in the configuration files." + +2013-06-24 12:51 robert + + * src/osgPlugins/lws/SceneLoader.cpp, + src/osgPlugins/lws/SceneLoader.h: From Cedric Pinson, "I fixed a + little issue with the lightwave scene loader. On the version 5 + there are id on the command LoadObjectLayer in the scene file and + of this version the current code use this field as a part of the + filename, and it fails because the file is not found. + I just added a field version_ to read it at the beginning and + added extra code to check it and read the extra field if needed + and read the good filename" + +2013-06-24 12:31 robert + + * src/osgViewer/GraphicsWindowIOS.mm: From Christian Ruzicka, "when + MSAA is activated on iOS, the stencil attachment is not added + (Stencil buffer is not working at all). Attached are the needed + changes to make MSAA + stencil working on iOS. + + Tested with OSG 3.1.7 and iOS SDK 6.1." + +2013-06-24 12:30 robert + + * CMakeLists.txt, include/osg/Version: Updatd SO_VERSION to reflect + changes in ABI from merging submissions. + +2013-06-24 12:27 robert + + * include/osg/Geometry: From Sukender, "I recently pulled from the + GIT mirror and found that + "OSG_USE_DEPRECATED_GEOMETRY_METHODS=OFF" hides a little mistake: + there is a "#include " inside the "osg" namespace, in + inlude/osg/Geometry. + " + +2013-06-24 11:40 robert + + * src/osgPlugins/ply/ReaderWriterPLY.cpp: From Mourad Boufarguine, + "Attached is a fix for the ply reader to use the output of + osgDB::findDataFile. + + " + +2013-06-24 11:39 robert + + * src/osgPlugins/dxf/DXFWriterNodeVisitor.cpp: From Luc Frauciel, + "You'll find attached a modification of DXWriter to support + Material color: + If a material is present, the diffuse color is affected to + current layer." + +2013-06-24 11:14 robert + + * include/osgUtil/IncrementalCompileOperation, + src/osgUtil/IncrementalCompileOperation.cpp: From Lars Nillson, + "The change in this submission is to take care of the setting + given by a call to + setMaximumNumOfObjectsToCompilePerFrame(…). + + + Sometimes if you give a low number, more than the expected number + of objects are compiled." + +2013-06-24 11:03 robert + + * src/osgAnimation/LinkVisitor.cpp, + src/osgDB/SharedStateManager.cpp, + src/osgUtil/GLObjectsVisitor.cpp, + src/osgUtil/IncrementalCompileOperation.cpp, + src/osgUtil/Optimizer.cpp: Convert usage to use const versions of + containers + +2013-06-24 09:59 robert + + * CMakeLists.txt: From Frederic Morin, "Current behaviour uses + SDKSettings.plist to determine osx version but + this file is only available when XCode is installed. + + This version works also when Command Line Tools for XCode are + installed (minimum build env for osx without XCode) + + See https://github.com/openscenegraph/osg/pull/8 for patch + details + Patch: https://github.com/openscenegraph/osg/pull/8/files" + +2013-06-24 09:51 robert + + * include/osg/FrameBufferObject, include/osg/Image, + src/osg/Image.cpp: From Farshid Lashkari, "I've attached a small + patch that extends the Image::readImageFromCurrentTexture method + to support more depth texture pixel formats (16, 24, 32, 32F). In + order to compile, I moved some depth pixel format definitions + from FrameBufferObject to Image. + " + +2013-06-24 09:31 robert + + * include/osgDB/Registry: From Christian Noon, "Got a simple patch + for correcting a problem with the USE_COMPRESSOR_WRAPPER() macro + in the osgDB::Registry. The problem is that the wrapper + declaration doesn't match the one defined in the + REGISTER_COMPRESSOR() method in the osgDB::ObjectWrapper method. + This patch fixes the wrapper declaration so they both match + properly. I ran into this problem using compressed files in an + iOS application where all the libraries and plugins need to be + built statically." + +2013-06-24 09:12 robert + + * src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp: From Nick Black, + "Hey there! avcodec_open() has been deprecated for some time, and + indeed has + been removed in the most recent versions of libavcodec/ffmpeg. + You're + already using avcodec_open2() elsewhere, but one appears to have + been + missed. The change is trivial: + + [skynet](0) $ svn diff + Index: src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp + =================================================================== + --- src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp (revision 13355) + +++ src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp (working copy) + @@ -109,7 +109,7 @@ + // m_context->flags |= CODEC_FLAG_TRUNCATED; + + // Open codec + - if (avcodec_open(m_context, p_codec) < 0) + + if (avcodec_open2(m_context, p_codec, NULL) < 0) + throw std::runtime_error("avcodec_open() failed"); + } + + [skynet](0) $ + + I've applied similar changes this year to many other packages, + including + cheese, blender, linphone, ad nauseam. It's been tested by + verifying that + with my patch, OSG builds against the newest libavcodec and + ffmpeg, whereas + otherwise it does not. + + The modified src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp is + attached. It + originates in svn trunk revision 13355. Thanks!" + +2013-06-24 09:02 robert + + * include/osgDB/InputStream, include/osgDB/OutputStream, + src/osgDB/InputStream.cpp, src/osgDB/OutputStream.cpp: Introduced + typedef's to make the code more readble and maintanable + +2013-06-24 08:48 robert + + * include/osgDB/InputStream, include/osgDB/ObjectWrapper, + include/osgDB/OutputStream, include/osgDB/StreamOperator, + src/osgDB/InputStream.cpp, src/osgDB/ObjectWrapper.cpp, + src/osgDB/OutputStream.cpp, + src/osgPlugins/osg/BinaryStreamOperator.h: From Wang Rui, "The + file attached includes two new features for the serialization IO + functionality. First, custom serializer version control should + work now, just by defining a new REGISTER_CUSTOM_OBJECT_WRAPPER + macro. For example: + + // A custom class + namespace CustomDomain { + + class MyGroup : public osg::Group + { + public: + META_Node( CustomDomain, MyGroup ); + + void setMyName( const std::string& n ); + const std::string& getMyName() const; + + void setMyID( int id ); + int getMyID() const; + + ... + }; + + } + + // The serialization wrapper using a custom domain name + REGISTER_CUSTOM_OBJECT_WRAPPER( MyDomain, + CustomDomain_MyGroup, + new CustomDomain::MyGroup, + CustomDomain::MyGroup, + "osg::Object osg::Node osg::Group CustomDomain::MyGroup" ) + { + ADD_STRING_SERIALIZER( MyName, std::string() ); + { + UPDATE_TO_VERSION_SCOPED( 1 ); // Updated for a new domain + version + ADD_INT_SERIALIZER( MyID, 0 ); + } + } + + Save the class instance as follows: + osgDB::writeNodeFile( *myGroup, "serializer_test.osgt", new + osgDB::Options("CustomDomains=MyDomain:1") ); + + The output file will include the domain version definition and + all the class data, and can be read back. We can also force + setting the domain version by the CustomDomains option while + reading the saved files. If we save the class instance without + any options, MyID will be ignored because the default domain + version is 0. + + This may help third-party libraries like osgEarth to maintain + their own serializers without regarding to the OSG soversion + changes. + + Another feature added is a more robust binary format, which in + fact adds a size-offset at each block's beginning. When there are + problems or unsupported data types while reading, we can now + directly jump to the block end indicated by the offset value. So + a .osgb file will automatically ignore bad data and read remains + as normal (at present it will fail at all). This feature will not + break the backward compatibility, and can be disabled by setting + "RobustBinaryFormat=false" while writing out. + + Hope these changes can work smoothly with present and future + community projects. Maybe we should also consider have an + osgserializer example to test and demonstrate all things we can + do now." + +2013-06-24 08:22 robert + + * src/osgWrappers/serializers/osg/Geometry.cpp: From Wang Rui, + "Sorry for my very slow response because of some personal issues. + I found that new Geometry serializers can't work with old .osgb + files. The modified FastPathHint serializer doesn't correctly + read from the stream and thus jumbles following inputs. The file + attached can be placed in osgWrappers/serializers/osg to fix that + problem. + + " + +2013-06-24 08:19 robert + + * src/osgPlugins/ffmpeg/CMakeLists.txt: From Wang Rui, "The + osgdb_ffmpeg plugin may not work with latest ffmpeg windows sdk + and will say "The procedure entry point xxx could not be located + in xxx.dll" instead. The following link describes the reason + (maybe a certain optimization problem of the VS compiler): + http://forum.videolan.org/viewtopic.php?f=32&t=98097 + + After adding the /OPT:NOREF, the problem has gone. + + " + +2013-06-24 08:18 robert + + * src/osgUtil/TangentSpaceGenerator.cpp: From Farshid Lashkari, "In + many game engines it is common to set the W component of the + tangent vector to -1 if the UVs are mirrored and 1 if not. I've + updated the osgUtil::TangentSpaceGenerator class to do the same." + +2013-06-21 19:35 robert + + * CMakeLists.txt, include/osg/Version: Updated version number after + dev release + +2013-06-21 19:35 robert + + * CMakeLists.txt: Removed spaces from end of lines + +2013-06-21 14:37 robert + + * src/osgUtil/tristripper/src/tri_stripper.cpp: Fixed author name + error introduced by xxdiff + +2013-06-21 14:30 robert + + * AUTHORS.txt: Reapplied AUTHORS changes + +2013-06-21 14:29 robert + + * AUTHORS.txt, ChangeLog, applications/osgversion/Contributors.cpp: + Update ChangeLog and AUTHORS.txt for release + 2013-06-21 14:17 robert * src/osgPlugins/dae/daeWGeometry.cpp: Removed unneccessary diff --git a/applications/osgversion/Contributors.cpp b/applications/osgversion/Contributors.cpp index b8b9bfd90..874f9de62 100644 --- a/applications/osgversion/Contributors.cpp +++ b/applications/osgversion/Contributors.cpp @@ -253,7 +253,8 @@ const char* invalidNames[] = "SlideEventHandler", "GraphicsContext*", "Apple", - "GeometryNew" + "GeometryNew", + "FrameBufferObject" };