<div>hi robert,</div><div>  For example,i know a opengl engine,named C4 engine current URL is:</div><div>  http://www.terathon.com/</div><div>  This engine from it's birthday,many years before,i always test their demos,and from the first days,found it's shadow use opengl shaders,so judged this engine will encounter many many problems,even the source code is correct and clean also very cheap.<br>  The openscenegraph's demos haven't many opengl shaders in the first day,infact many people like the light and smart program used less or no shaders.</div><div>  zhuwan</div><div>  06,12,2015</div><span>
      
    </span><br>在2015-6-12 20:33:22,"Robert Osfield" <robert.osfield@gmail.com> 写道:
<blockquote id="isReplyContent" style="padding-left:1ex; margin: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">-----原始邮件-----<br>
<b>发件人:</b> "Robert Osfield" <robert.osfield@gmail.com><br>
<b>发送时间:</b> 2015-6-12 20:33:22<br>
<b>收件人:</b> "OpenSceneGraph Users" <osg-users@lists.openscenegraph.org><br>

<b>主题:</b> [osg-users] OpenSceneGraph-3.3.8 dev release tagged<br><br><div dir="ltr">Hi All,<br><br>I have just tagged the OpenSceneGraph-3.3.8 developer release.  Focus for this dev release has been a whole series of bug and build fixes.  <br><p><strong>source package :</strong> <a href="http://www.openscenegraph.org/downloads/developer_releases/OpenSceneGraph-3.3.8.zip">OpenSceneGraph-3.3.8.zip</a></p>
<p><strong>svn tag:</strong> svn co <a href="http://svn.openscenegraph.org/osg/OpenSceneGraph/tags/OpenSceneGraph-3.3.8">http://svn.openscenegraph.org/osg/OpenSceneGraph/tags/OpenSceneGraph-3.3.8</a> OpenSceneGraph</p><p>Feature wise I'm pretty happy with where the dev series is at, so am now focused on readying OSG svn/trunk for the OSG-3.4 stable release, this dev release is another step in this process.  Please test on as many platform combinations as you can and against your own applications.  </p><p>If there are problems with this dev release just post them here so we can can discuss how best to resolve them.</p><p>If everything looks like a stable then I'll create the OSG-3.4 branch next week and start the OSG-3.4 release candidate series.</p><p>Thanks to all who have contributed,</p><p>Robert.</p><p>-- ChangeLog since 3.3.7</p><p>2015-06-12 08:04  robert</p><p><br></p><p><span class="" style="white-space:pre"> </span>* src/osgText/TextBase.cpp: From Farshid Lashkari, "I've modified</p><p><span class="" style="white-space:pre"> </span>  some setter methods of TextBase to avoid unnecessary calls to</p><p><span class="" style="white-space:pre">   </span>  computeGlyphRepresentation() if the value has not changed."</p><p><br></p><p>2015-06-11 08:44  robert</p><p><br></p><p><span class="" style="white-space:pre">      </span>* include/osg/GLDefines: Reverted the typdef GLfloat GLdouble for</p><p><span class="" style="white-space:pre">      </span>  Andoid as this was causing conflicts.</p><p><br></p><p>2015-06-10 18:22  robert</p><p><br></p><p><span class="" style="white-space:pre"> </span>* AUTHORS.txt, ChangeLog: Updated ChangeLog and AUTHORS file for</p><p><span class="" style="white-space:pre">       </span>  3.3.8 dev release</p><p><br></p><p>2015-06-10 16:48  robert</p><p><br></p><p><span class="" style="white-space:pre">     </span>* CMakeModules/FindOpenEXR.cmake: From Laurens Voerman, "attached</p><p><span class="" style="white-space:pre"> </span>  is a zip with the files:</p><p><span class="" style="white-space:pre">        </span>  </p><p><span class="" style="white-space:pre">        </span>  OpenSceneGraph\CMakeModules\FindOpenEXR.cmake</p><p><span class="" style="white-space:pre">   </span>  </p><p><span class="" style="white-space:pre">        </span>  I introduced a bug in the previous submission pointed out by</p><p><span class="" style="white-space:pre">    </span>  Dmitry Marakasov:</p><p><span class="" style="white-space:pre">       </span>  looking for IlmIlf instead of IlmImf (as the previous version did</p><p><span class="" style="white-space:pre">       </span>  - but using variable OPENEXR_IlmIlf_LIBRARY)</p><p><span class="" style="white-space:pre">    </span>  </p><p><span class="" style="white-space:pre">        </span>  For some reason google decided his message was spam, so I just</p><p><span class="" style="white-space:pre">  </span>  noticed it, and I reply to confirm his remarks and attach a full</p><p><span class="" style="white-space:pre">        </span>  file.</p><p><span class="" style="white-space:pre">   </span>  </p><p><span class="" style="white-space:pre">        </span>  "</p><p><br></p><p>2015-06-10 16:47  robert</p><p><br></p><p><span class="" style="white-space:pre">        </span>* src/osg/GLExtensions.cpp, src/osg/Texture.cpp: From Colin</p><p><span class="" style="white-space:pre">    </span>  McDonald, "An earlier fix in OSG 3.2 has been inadvertently lost</p><p><span class="" style="white-space:pre">   </span>  in 3.3.x. The glGenerateMipMap function is part of the</p><p><span class="" style="white-space:pre">  </span>  GL_EXT_framebuffer_object extension. Just checking if the</p><p><span class="" style="white-space:pre">       </span>  function is present before using it for texture mipmaps is not</p><p><span class="" style="white-space:pre">  </span>  sufficient, as on remote X-windows displays the client side</p><p><span class="" style="white-space:pre">     </span>  capability may be different from the display server. This can</p><p><span class="" style="white-space:pre">   </span>  lead to mipmapped textures failing to render. I've restored a fbo</p><p><span class="" style="white-space:pre">       </span>  extension check. I've also tided up the GL version checking a</p><p><span class="" style="white-space:pre">   </span>  little."</p><p><br></p><p>2015-06-10 10:00  robert</p><p><br></p><p><span class="" style="white-space:pre"> </span>* src/osgGA/NodeTrackerManipulator.cpp: From Philippe Renon, "Fixed</p><p><span class="" style="white-space:pre">       </span>  potential divide by zero in NodeTrackerManipulator : The divide</p><p><span class="" style="white-space:pre"> </span>  by zero happens when throwing a NodeTrackerManipulator.</p><p><span class="" style="white-space:pre"> </span>  The infinite result trickles down and later causes NaN in</p><p><span class="" style="white-space:pre">       </span>  culling.</p><p><span class="" style="white-space:pre">        </span>  </p><p><span class="" style="white-space:pre">        </span>  The fix was to use getThrowScale() as done everywhere else."</p><p><br></p><p>2015-06-09 16:49  robert</p><p><br></p><p><span class="" style="white-space:pre">     </span>* CMakeLists.txt, include/osgDB/Serializer,</p><p><span class="" style="white-space:pre">    </span>  src/osgWrappers/serializers/osg/Camera.cpp: Added supoort for</p><p><span class="" style="white-space:pre">   </span>  osg::CullSettings/Camera::InheritanceMaskActionOnAttributeSetting</p><p><span class="" style="white-space:pre">       </span>  and InheritanceMask properties.</p><p><br></p><p>2015-06-09 12:51  robert</p><p><br></p><p><span class="" style="white-space:pre">       </span>* include/osg/GLDefines: Added namespace around typedef to avoid</p><p><span class="" style="white-space:pre">       </span>  conflict issues</p><p><br></p><p>2015-06-09 10:49  robert</p><p><br></p><p><span class="" style="white-space:pre">       </span>* include/osg/Node, include/osg/NodeVisitor, include/osg/Object,</p><p><span class="" style="white-space:pre">       </span>  include/osg/StateAttribute, include/osg/Uniform,</p><p><span class="" style="white-space:pre">        </span>  src/osg/Callback.cpp: Introduce osg::Object::asNode(),</p><p><span class="" style="white-space:pre">  </span>  asNodeVisitor(), asStateAttribute() and asUniform() to replace</p><p><span class="" style="white-space:pre">  </span>  dynamic_cast<> usage in Callback.cpp.</p><p><br></p><p>2015-06-09 09:44  robert</p><p><br></p><p><span class="" style="white-space:pre">   </span>* examples/osghud/osghud.cpp: Added output of HUD scene graph to</p><p><span class="" style="white-space:pre">       </span>  hud.osgt and hud.osgb for testing purposes.</p><p><br></p><p>2015-06-08 11:33  robert</p><p><br></p><p><span class="" style="white-space:pre">   </span>* AUTHORS.txt, ChangeLog: Updated AUTHORS and ChangeLog for dev</p><p><span class="" style="white-space:pre">        </span>  release</p><p><br></p><p>2015-06-08 11:18  robert</p><p><br></p><p><span class="" style="white-space:pre">       </span>* include/osgDB/Options, src/osgDB/DatabasePager.cpp,</p><p><span class="" style="white-space:pre">  </span>  src/osgDB/Options.cpp: From Mike Connell, "Give ReadFileCallback</p><p><span class="" style="white-space:pre">   </span>  access to parent location : These small changes to the database</p><p><span class="" style="white-space:pre"> </span>  pager allow user code in the ReadFileCallback to safely determine</p><p><span class="" style="white-space:pre">       </span>  where the file being loaded is destined to be inserted into the</p><p><span class="" style="white-space:pre"> </span>  scenegraph.</p><p><span class="" style="white-space:pre">     </span>  "</p><p><br></p><p>2015-06-08 10:20  robert</p><p><br></p><p><span class="" style="white-space:pre">        </span>* src/osgUtil/SceneView.cpp: Addressed race condition where</p><p><span class="" style="white-space:pre">    </span>  SceneView::setLightingMode() was setting a shread Master Camera's</p><p><span class="" style="white-space:pre">       </span>  StateSet.</p><p><br></p><p>2015-06-07 11:13  robert</p><p><br></p><p><span class="" style="white-space:pre">     </span>* src/osgViewer/CompositeViewer.cpp, src/osgViewer/Viewer.cpp:</p><p><span class="" style="white-space:pre"> </span>  Fixed setReferenceTime() bug where a * eather than the correct /</p><p><span class="" style="white-space:pre">        </span>  was being used. Bug and fix suggested Benjamin Richter.</p><p><br></p><p>2015-06-04 09:35  robert</p><p><br></p><p><span class="" style="white-space:pre">       </span>* AUTHORS.txt, ChangeLog, applications/osgversion/Contributors.cpp:</p><p><span class="" style="white-space:pre">    </span>  Updated AUTHORS for dev release</p><p><br></p><p>2015-06-04 09:13  robert</p><p><br></p><p><span class="" style="white-space:pre">       </span>* src/osg/Transform.cpp: From Jannik Heller,</p><p><span class="" style="white-space:pre">   </span>  Transform::computeBound() optimization.</p><p><br></p><p>2015-06-04 09:05  robert</p><p><br></p><p><span class="" style="white-space:pre">       </span>* include/osgViewer/ViewerEventHandlers: From Jannik Heller,</p><p><span class="" style="white-space:pre">   </span>  Removed unused StatsHandler::_keyEventToggleVsync</p><p><br></p><p>2015-06-04 09:00  robert</p><p><br></p><p><span class="" style="white-space:pre">     </span>* include/osgAnimation/UpdateUniform: From Jannik Heller, "In the</p><p><span class="" style="white-space:pre"> </span>  attachment you will find a build fix for the latest trunk.</p><p><span class="" style="white-space:pre">      </span>  osgAnimation failed to compile when using</p><p><span class="" style="white-space:pre">       </span>  OSG_USE_REF_PTR_IMPLICIT_OUTPUT_CONVERSION=OFF ."</p><p><br></p><p>2015-06-03 10:28  robert</p><p><br></p><p><span class="" style="white-space:pre">        </span>* include/osgAnimation/UpdateUniform: Removed export that was</p><p><span class="" style="white-space:pre">  </span>  breaking windows build</p><p><br></p><p>2015-06-03 09:14  robert</p><p><br></p><p><span class="" style="white-space:pre">        </span>* include/osgAnimation/UpdateUniform,</p><p><span class="" style="white-space:pre">  </span>  src/osgAnimation/CMakeLists.txt,</p><p><span class="" style="white-space:pre">        </span>  src/osgWrappers/serializers/osgAnimation/LibraryWrapper.cpp,</p><p><span class="" style="white-space:pre">    </span>  src/osgWrappers/serializers/osgAnimation/UpdateFloatUniform.cpp,</p><p><span class="" style="white-space:pre">        </span>  src/osgWrappers/serializers/osgAnimation/UpdateMatrixfUniform.cpp,</p><p><span class="" style="white-space:pre">      </span>  src/osgWrappers/serializers/osgAnimation/UpdateVec3fUniform.cpp:</p><p><span class="" style="white-space:pre">        </span>  From KOS, "New classes for osgAnimation presented:</p><p><span class="" style="white-space:pre"> </span>  UpdateFloatUniform, UpdateVec3fUniform and UpdateMatrixfUniform</p><p><span class="" style="white-space:pre"> </span>  (based on UpdateUniform template)</p><p><span class="" style="white-space:pre">       </span>  </p><p><span class="" style="white-space:pre">        </span>  </p><p><span class="" style="white-space:pre">        </span>  Classes operate like osgAnimation::UpdateMaterial for Material's</p><p><span class="" style="white-space:pre">        </span>  diffuse component, but change Uniform."</p><p><br></p><p>2015-06-03 09:07  robert</p><p><br></p><p><span class="" style="white-space:pre">  </span>* examples/osggeometryshaders/osggeometryshaders.cpp,</p><p><span class="" style="white-space:pre">  </span>  examples/osgparametric/osgparametric.cpp,</p><p><span class="" style="white-space:pre">       </span>  examples/osgshaders/GL2Scene.cpp,</p><p><span class="" style="white-space:pre">       </span>  examples/osgsimpleshaders/osgsimpleshaders.cpp,</p><p><span class="" style="white-space:pre"> </span>  examples/osgtransformfeedback/osgtransformfeedback.cpp: From KOS,</p><p><span class="" style="white-space:pre">       </span>  build fix for osg::Uniform::Callback to osg::UniformCallback</p><p><span class="" style="white-space:pre">    </span>  change</p><p><br></p><p>2015-06-03 09:06  robert</p><p><br></p><p><span class="" style="white-space:pre">        </span>* include/osg/Uniform: Added doxygen comment for typedef</p><p><br></p><p>2015-06-03 08:38  robert</p><p><br></p><p><span class="" style="white-space:pre">     </span>* src/osgWrappers/serializers/osg/Uniform.cpp: Build fix for when</p><p><span class="" style="white-space:pre">      </span>  Uniform::Callback isn't defined</p><p><br></p><p>2015-06-02 10:25  robert</p><p><br></p><p><span class="" style="white-space:pre">       </span>* src/osgWrappers/serializers/osg/UniformCallback.cpp: From</p><p><span class="" style="white-space:pre">    </span>  Konstantin Matveyev, serializer support for UniformCallback</p><p><br></p><p>2015-06-02 09:33  robert</p><p><br></p><p><span class="" style="white-space:pre">   </span>* include/osg/Callback, include/osg/CopyOp, include/osg/Uniform,</p><p><span class="" style="white-space:pre">       </span>  src/osg/Callback.cpp, src/osg/CopyOp.cpp, src/osg/StateSet.cpp,</p><p><span class="" style="white-space:pre"> </span>  src/osg/Uniform.cpp,</p><p><span class="" style="white-space:pre">    </span>  src/osgWrappers/deprecated-dotosg/osg/Uniform.cpp,</p><p><span class="" style="white-space:pre">      </span>  src/osgWrappers/serializers/osg/LibraryWrapper.cpp: From</p><p><span class="" style="white-space:pre">        </span>  Konstantin Matveyev, "I've changed osg::Uniform::Callback to</p><p><span class="" style="white-space:pre">       </span>  osg::UniformCallback.</p><p><span class="" style="white-space:pre">   </span>  osg::UniformCallback inherits osg::Callback now.</p><p><span class="" style="white-space:pre">        </span>  </p><p><span class="" style="white-space:pre">        </span>  I don't really now if this class should be inside</p><p><span class="" style="white-space:pre">       </span>  osgWrappers/serializers</p><p><span class="" style="white-space:pre"> </span>  because StateAttributeCallback is not presented there, but i've</p><p><span class="" style="white-space:pre"> </span>  included it in the patch.</p><p><span class="" style="white-space:pre">       </span>  </p><p><span class="" style="white-space:pre">        </span>  </p><p><span class="" style="white-space:pre">        </span>  Please see archive in the attachment.</p><p><span class="" style="white-space:pre">   </span>  </p><p><span class="" style="white-space:pre">        </span>  </p><p><span class="" style="white-space:pre">        </span>  PS</p><p><span class="" style="white-space:pre">      </span>  DEEP_COPY_UNIFORMS works for me.</p><p><span class="" style="white-space:pre">        </span>  "</p><p><span class="" style="white-space:pre">  </span>  Note from Robert Osfield, added typedef UniformCallback Callback</p><p><span class="" style="white-space:pre">        </span>  for backwards compatibility.</p><p><br></p><p>2015-06-02 09:18  robert</p><p><br></p><p><span class="" style="white-space:pre">  </span>* examples/osguniformbuffer/osguniformbuffer.cpp: Changed name of</p><p><span class="" style="white-space:pre">      </span>  UniformCallback to UniformBufferCallback to avoid conflict with</p><p><span class="" style="white-space:pre"> </span>  changes to come to the osg::Uniform::Callback -></p><p><span class="" style="white-space:pre">     </span>  osg::UniformCallback.</p><p><br></p><p>2015-06-01 13:40  robert</p><p><br></p><p><span class="" style="white-space:pre"> </span>* include/OpenThreads/Thread, include/osg/BoundsChecking,</p><p><span class="" style="white-space:pre">      </span>  include/osg/Geometry, include/osg/Image, include/osg/ImageUtils,</p><p><span class="" style="white-space:pre">        </span>  include/osg/Object, include/osg/TransferFunction,</p><p><span class="" style="white-space:pre">       </span>  include/osg/observer_ptr, include/osg/ref_ptr,</p><p><span class="" style="white-space:pre">  </span>  include/osgDB/ClassInterface, include/osgDB/ExternalFileWriter,</p><p><span class="" style="white-space:pre"> </span>  include/osgDB/ReaderWriter, include/osgGA/GUIActionAdapter,</p><p><span class="" style="white-space:pre">     </span>  include/osgManipulator/Dragger,</p><p><span class="" style="white-space:pre"> </span>  include/osgParticle/ConnectedParticleSystem,</p><p><span class="" style="white-space:pre">    </span>  include/osgShadow/ViewDependentShadowTechnique,</p><p><span class="" style="white-space:pre"> </span>  include/osgTerrain/TerrainTile, include/osgText/Glyph,</p><p><span class="" style="white-space:pre">  </span>  include/osgUI/Widget, include/osgUtil/SceneGraphBuilder,</p><p><span class="" style="white-space:pre">        </span>  include/osgWidget/Widget,</p><p><span class="" style="white-space:pre">       </span>  src/OpenThreads/pthreads/PThreadBarrier.cpp,</p><p><span class="" style="white-space:pre">    </span>  src/OpenThreads/pthreads/PThreadMutex.cpp,</p><p><span class="" style="white-space:pre">      </span>  src/OpenThreads/win32/Win32Thread.cpp, src/osg/ImageUtils.cpp,</p><p><span class="" style="white-space:pre">  </span>  src/osg/Sequence.cpp, src/osg/ShadowVolumeOccluder.cpp,</p><p><span class="" style="white-space:pre"> </span>  src/osg/TexGen.cpp, src/osg/Texture1D.cpp, src/osg/Texture2D.cpp,</p><p><span class="" style="white-space:pre">       </span>  src/osg/Texture2DArray.cpp, src/osg/Texture3D.cpp,</p><p><span class="" style="white-space:pre">      </span>  src/osg/TextureCubeMap.cpp, src/osg/TextureRectangle.cpp,</p><p><span class="" style="white-space:pre">       </span>  src/osg/Uniform.cpp, src/osgAnimation/RigGeometry.cpp,</p><p><span class="" style="white-space:pre">  </span>  src/osgDB/DynamicLibrary.cpp, src/osgDB/FileNameUtils.cpp,</p><p><span class="" style="white-space:pre">      </span>  src/osgDB/FileUtils.cpp, src/osgDB/Registry.cpp,</p><p><span class="" style="white-space:pre">        </span>  src/osgDB/XmlParser.cpp, src/osgManipulator/Dragger.cpp,</p><p><span class="" style="white-space:pre">        </span>  src/osgPlugins/3ds/ReaderWriter3DS.cpp,</p><p><span class="" style="white-space:pre"> </span>  src/osgPlugins/Inventor/ConvertFromInventor.cpp,</p><p><span class="" style="white-space:pre">        </span>  src/osgPlugins/Inventor/ConvertToInventor.cpp,</p><p><span class="" style="white-space:pre">  </span>  src/osgPlugins/QTKit/OSXCoreVideoTexture.cpp,</p><p><span class="" style="white-space:pre">   </span>  src/osgPlugins/ac/ac3d.cpp,</p><p><span class="" style="white-space:pre">     </span>  src/osgPlugins/avfoundation/OSXAVFoundationCoreVideoTexture.cpp,</p><p><span class="" style="white-space:pre">        </span>  src/osgPlugins/cfg/VisualChooser.cpp,</p><p><span class="" style="white-space:pre">   </span>  src/osgPlugins/curl/ReaderWriterCURL.cpp,</p><p><span class="" style="white-space:pre">       </span>  src/osgPlugins/dae/ReaderWriterDAE.cpp,</p><p><span class="" style="white-space:pre"> </span>  src/osgPlugins/dae/daeRGeometry.cpp,</p><p><span class="" style="white-space:pre">    </span>  src/osgPlugins/dae/daeRMaterials.cpp,</p><p><span class="" style="white-space:pre">   </span>  src/osgPlugins/dae/daeReader.cpp,</p><p><span class="" style="white-space:pre">       </span>  src/osgPlugins/dds/ReaderWriterDDS.cpp,</p><p><span class="" style="white-space:pre"> </span>  src/osgPlugins/directshow/DirectShowTexture.cpp,</p><p><span class="" style="white-space:pre">        </span>  src/osgPlugins/dxf/DXFWriterNodeVisitor.cpp,</p><p><span class="" style="white-space:pre">    </span>  src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp,</p><p><span class="" style="white-space:pre">   </span>  src/osgPlugins/gif/ReaderWriterGIF.cpp,</p><p><span class="" style="white-space:pre"> </span>  src/osgPlugins/gles/ReaderWriterGLES.cpp,</p><p><span class="" style="white-space:pre">       </span>  src/osgPlugins/ive/Material.cpp,</p><p><span class="" style="white-space:pre">        </span>  src/osgPlugins/jpeg/EXIF_Orientation.cpp,</p><p><span class="" style="white-space:pre">       </span>  src/osgPlugins/ktx/ReaderWriterKTX.cpp,</p><p><span class="" style="white-space:pre"> </span>  src/osgPlugins/las/ReaderWriterLAS.cpp,</p><p><span class="" style="white-space:pre"> </span>  src/osgPlugins/logo/ReaderWriterLOGO.cpp,</p><p><span class="" style="white-space:pre">       </span>  src/osgPlugins/lwo/Object.cpp,</p><p><span class="" style="white-space:pre">  </span>  src/osgPlugins/lwo/ReaderWriterLWO.cpp,</p><p><span class="" style="white-space:pre"> </span>  src/osgPlugins/ply/plyfile.cpp,</p><p><span class="" style="white-space:pre"> </span>  src/osgPlugins/ply/vertexData.cpp,</p><p><span class="" style="white-space:pre">      </span>  src/osgPlugins/pov/POVWriterNodeVisitor.cpp,</p><p><span class="" style="white-space:pre">    </span>  src/osgPlugins/quicktime/ReaderWriterQT.cpp,</p><p><span class="" style="white-space:pre">    </span>  src/osgPlugins/tiff/ReaderWriterTIFF.cpp,</p><p><span class="" style="white-space:pre">       </span>  src/osgPlugins/trans/ReaderWriterTRANS.cpp,</p><p><span class="" style="white-space:pre">     </span>  src/osgPlugins/txf/TXFFont.cpp,</p><p><span class="" style="white-space:pre"> </span>  src/osgPlugins/txp/TXPPagedLOD.cpp,</p><p><span class="" style="white-space:pre">     </span>  src/osgPlugins/txp/TileMapper.cpp,</p><p><span class="" style="white-space:pre">      </span>  src/osgPlugins/txp/trpage_geom.cpp,</p><p><span class="" style="white-space:pre">     </span>  src/osgPlugins/txp/trpage_readbuf.cpp,</p><p><span class="" style="white-space:pre">  </span>  src/osgPlugins/txp/trpage_warchive.cpp,</p><p><span class="" style="white-space:pre"> </span>  src/osgPlugins/zip/unzip.cpp,</p><p><span class="" style="white-space:pre">   </span>  src/osgPresentation/KeyEventHandler.cpp,</p><p><span class="" style="white-space:pre">        </span>  src/osgPresentation/PickEventHandler.cpp,</p><p><span class="" style="white-space:pre">       </span>  src/osgPresentation/SlideEventHandler.cpp,</p><p><span class="" style="white-space:pre">      </span>  src/osgShadow/ConvexPolyhedron.cpp,</p><p><span class="" style="white-space:pre">     </span>  src/osgShadow/MinimalShadowMap.cpp, src/osgShadow/ShadowMap.cpp,</p><p><span class="" style="white-space:pre">        </span>  src/osgShadow/StandardShadowMap.cpp,</p><p><span class="" style="white-space:pre">    </span>  src/osgShadow/ViewDependentShadowMap.cpp,</p><p><span class="" style="white-space:pre">       </span>  src/osgSim/InsertImpostorsVisitor.cpp, src/osgSim/Sector.cpp,</p><p><span class="" style="white-space:pre">   </span>  src/osgText/GlyphGeometry.cpp, src/osgText/TextBase.cpp,</p><p><span class="" style="white-space:pre">        </span>  src/osgUtil/DelaunayTriangulator.cpp, src/osgUtil/Optimizer.cpp,</p><p><span class="" style="white-space:pre">        </span>  src/osgUtil/RenderStage.cpp, src/osgUtil/Simplifier.cpp,</p><p><span class="" style="white-space:pre">        </span>  src/osgViewer/CompositeViewer.cpp,</p><p><span class="" style="white-space:pre">      </span>  src/osgViewer/GraphicsWindowWin32.cpp,</p><p><span class="" style="white-space:pre">  </span>  src/osgViewer/GraphicsWindowX11.cpp, src/osgViewer/Viewer.cpp,</p><p><span class="" style="white-space:pre">  </span>  src/osgWidget/Box.cpp, src/osgWidget/StyleManager.cpp,</p><p><span class="" style="white-space:pre">  </span>  src/osgWidget/Window.cpp: From Albert Luaces, typo fixes.</p><p><br></p><p>2015-06-01 13:11  robert</p><p><br></p><p><span class="" style="white-space:pre">     </span>* CMakeModules/FindSDL2.cmake,</p><p><span class="" style="white-space:pre"> </span>  applications/present3D/present3D.cpp,</p><p><span class="" style="white-space:pre">   </span>  examples/osgcluster/osgcluster.cpp,</p><p><span class="" style="white-space:pre">     </span>  examples/osgdepthpeeling/DePee.h,</p><p><span class="" style="white-space:pre">       </span>  examples/osgmultitexturecontrol/osgmultitexturecontrol.cpp,</p><p><span class="" style="white-space:pre">     </span>  examples/osgparticleeffects/osgparticleeffects.cpp,</p><p><span class="" style="white-space:pre">     </span>  examples/osgscribe/osgscribe.cpp,</p><p><span class="" style="white-space:pre">       </span>  examples/osgtexture2D/osgtexture2D.cpp,</p><p><span class="" style="white-space:pre"> </span>  examples/osgunittests/UnitTestFramework.h,</p><p><span class="" style="white-space:pre">      </span>  examples/osgvolume/osgvolume.cpp, include/osg/GraphicsContext,</p><p><span class="" style="white-space:pre">  </span>  include/osg/StateAttribute, include/osg/Texture2DArray,</p><p><span class="" style="white-space:pre"> </span>  include/osg/Texture3D, include/osg/TextureCubeMap,</p><p><span class="" style="white-space:pre">      </span>  include/osg/Timer, include/osg/TransferFunction,</p><p><span class="" style="white-space:pre">        </span>  include/osg/Uniform, include/osgAnimation/RigTransformSoftware,</p><p><span class="" style="white-space:pre"> </span>  include/osgDB/DatabasePager, include/osgDB/ExternalFileWriter,</p><p><span class="" style="white-space:pre">  </span>  include/osgDB/Registry, include/osgSim/ScalarBar,</p><p><span class="" style="white-space:pre">       </span>  include/osgViewer/View, src/osg/BufferObject.cpp,</p><p><span class="" style="white-space:pre">       </span>  src/osg/GraphicsContext.cpp, src/osg/Notify.cpp,</p><p><span class="" style="white-space:pre">        </span>  src/osg/OperationThread.cpp, src/osg/Texture.cpp,</p><p><span class="" style="white-space:pre">       </span>  src/osg/dxtctool.h, src/osgDB/FileUtils.cpp,</p><p><span class="" style="white-space:pre">    </span>  src/osgDB/ImagePager.cpp, src/osgGA/StateSetManipulator.cpp,</p><p><span class="" style="white-space:pre">    </span>  src/osgPlugins/3ds/ReaderWriter3DS.cpp,</p><p><span class="" style="white-space:pre"> </span>  src/osgPlugins/ac/ac3d.cpp, src/osgPlugins/cfg/RenderSurface.h,</p><p><span class="" style="white-space:pre"> </span>  src/osgPlugins/zip/unzip.cpp, src/osgPresentation/Timeout.cpp,</p><p><span class="" style="white-space:pre">  </span>  src/osgUtil/CullVisitor.cpp, src/osgUtil/IntersectVisitor.cpp,</p><p><span class="" style="white-space:pre">  </span>  src/osgUtil/RenderBin.cpp, src/osgUtil/SceneView.cpp: From Jannik</p><p><span class="" style="white-space:pre">       </span>  Heller, typo fixes</p><p><br></p><p>2015-06-01 12:14  robert</p><p><br></p><p><span class="" style="white-space:pre">    </span>* src/osgParticle/ParticleProcessor.cpp: From Jannik Heller, "This</p><p><span class="" style="white-space:pre">        </span>  patch adds a missing initialization of</p><p><span class="" style="white-space:pre">  </span>  osgParticle::ParticleProcessor::_frameNumber in the copy</p><p><span class="" style="white-space:pre">        </span>  constructor.</p><p><span class="" style="white-space:pre">    </span>  I noticed this because valgrind was complaining about use of</p><p><span class="" style="white-space:pre">    </span>  uninitialized memory."</p><p><br></p><p>2015-06-01 12:07  robert</p><p><br></p><p><span class="" style="white-space:pre">   </span>* include/osgDB/ObjectWrapper, src/osgDB/ObjectWrapper.cpp: From</p><p><span class="" style="white-space:pre">       </span>  Frashud Lashkari, "I was getting "Unsupported wrapper class..."</p><p><span class="" style="white-space:pre">  </span>  error messages when attempting to load osgb models simultaneously</p><p><span class="" style="white-space:pre">       </span>  from multiple threads. I believe the problem is caused by</p><p><span class="" style="white-space:pre">       </span>  un-synchronized access to the global osgDB::ObjectWrapperManager</p><p><span class="" style="white-space:pre">        </span>  class. I've attached a change that adds a mutex to the class and</p><p><span class="" style="white-space:pre">        </span>  uses it when accessing the internal wrapper/compress maps. This</p><p><span class="" style="white-space:pre"> </span>  appears to fix the issues I was having."</p><p><br></p><p>2015-06-01 10:50  robert</p><p><br></p><p><span class="" style="white-space:pre"> </span>* include/osg/Texture, include/osg/Texture2D, src/osg/Texture.cpp,</p><p><span class="" style="white-space:pre">     </span>  src/osg/Texture1D.cpp, src/osg/Texture2D.cpp,</p><p><span class="" style="white-space:pre">   </span>  src/osg/Texture2DArray.cpp, src/osg/Texture2DMultisample.cpp,</p><p><span class="" style="white-space:pre">   </span>  src/osg/Texture3D.cpp, src/osg/TextureBuffer.cpp,</p><p><span class="" style="white-space:pre">       </span>  src/osg/TextureCubeMap.cpp, src/osg/TextureRectangle.cpp,</p><p><span class="" style="white-space:pre">       </span>  src/osgText/Glyph.cpp: From Jannik Heller, "I have added new</p><p><span class="" style="white-space:pre">       </span>  functions Texture::generateAndAssignTextureObject mirroring the</p><p><span class="" style="white-space:pre"> </span>  Texture::generateTextureObject functions.</p><p><span class="" style="white-space:pre">       </span>  </p><p><span class="" style="white-space:pre">        </span>  I have left the Texture::generateTextureObject functions intact</p><p><span class="" style="white-space:pre"> </span>  as I'm not sure if/how it's used outside the core OSG. If you</p><p><span class="" style="white-space:pre">   </span>  feel that compatibility isn't important in that area feel free to</p><p><span class="" style="white-space:pre">       </span>  drop it.</p><p><span class="" style="white-space:pre">        </span>  </p><p><span class="" style="white-space:pre">        </span>  While testing the build with</p><p><span class="" style="white-space:pre">    </span>  OSG_USE_REF_PTR_IMPLICIT_OUTPUT_CONVERSION=OFF I found a compile</p><p><span class="" style="white-space:pre">        </span>  error in GlyphGeometry.cpp that was entirely unrelated to the</p><p><span class="" style="white-space:pre">   </span>  changes I've made. The fix is included in the patch.</p><p><span class="" style="white-space:pre">    </span>  </p><p><span class="" style="white-space:pre">        </span>  There is one thing left to fix and that is</p><p><span class="" style="white-space:pre">      </span>  Texture2D::SubloadCallback:</p><p><span class="" style="white-space:pre">     </span>  </p><p><span class="" style="white-space:pre">        </span>  class OSG_EXPORT SubloadCallback : public Referenced</p><p><span class="" style="white-space:pre">    </span>  {</p><p><span class="" style="white-space:pre">       </span>  public:</p><p><span class="" style="white-space:pre"> </span>  ....</p><p><span class="" style="white-space:pre">    </span>  virtual TextureObject* generateTextureObject(const Texture2D&</p><p><span class="" style="white-space:pre">       </span>  texture, State& state) const</p><p><span class="" style="white-space:pre">        </span>  {</p><p><span class="" style="white-space:pre">       </span>  return osg::Texture::generateTextureObject(&texture,</p><p><span class="" style="white-space:pre">        </span>  state.getContextID(), GL_TEXTURE_2D);</p><p><span class="" style="white-space:pre">   </span>  }</p><p><span class="" style="white-space:pre">       </span>  ...</p><p><span class="" style="white-space:pre">     </span>  }"</p><p><span class="" style="white-space:pre"> </span>  </p><p><br></p><p>2015-06-01 10:41  robert</p><p><br></p><p><span class="" style="white-space:pre">      </span>* src/osgText/GlyphGeometry.cpp: From Jannik Heller, build fix</p><p><br></p><p>2015-05-29 07:52  robert</p><p><br></p><p><span class="" style="white-space:pre">       </span>* include/osg/BufferObject, src/osg/BufferObject.cpp: From Jannik</p><p><span class="" style="white-space:pre">      </span>  Heller, fix for race condition in orphanded BufferObject</p><p><span class="" style="white-space:pre">        </span>  handling.</p><p><br></p><p>2015-05-26 17:24  robert</p><p><br></p><p><span class="" style="white-space:pre">     </span>* src/osgUtil/MeshOptimizers.cpp: From Colin McDonald,</p><p><span class="" style="white-space:pre"> </span>  "rc/osgUtl/MeshOptimizers.cpp won't compile on some systems due</p><p><span class="" style="white-space:pre">    </span>  to a missing std:: namespace prefix."</p><p><br></p><p>2015-05-26 17:22  robert</p><p><br></p><p><span class="" style="white-space:pre">    </span>* src/osgUtil/SceneView.cpp: From Farshid Lashkari, "attached a</p><p><span class="" style="white-space:pre">   </span>  small change to osgUtil::SceneView that prevents unnecessary</p><p><span class="" style="white-space:pre">    </span>  calls to glClear when the split stereo separation is 0."</p><p><br></p><p>2015-05-26 17:17  robert</p><p><br></p><p><span class="" style="white-space:pre"> </span>* src/osgDB/ClassInterface.cpp: From Thomas Hogarth, "Little fix</p><p><span class="" style="white-space:pre">  </span>  for ClassInterface::getSupportedProperties, before if you set</p><p><span class="" style="white-space:pre">   </span>  searchAssociates to false then it would return the same</p><p><span class="" style="white-space:pre"> </span>  BaseSerialiser::Type for every entry in the PropertyMap as i was</p><p><span class="" style="white-space:pre">        </span>  not being incremented on line 539. Fix attached."</p><p><br></p><p>2015-05-26 17:12  robert</p><p><br></p><p><span class="" style="white-space:pre">        </span>* src/osgUtil/RenderStage.cpp: From We See, "I found a small bug in</p><p><span class="" style="white-space:pre">       </span>  osgUtil::RenderStage::draw() (osg 3.3.7), which crashes osg. The</p><p><span class="" style="white-space:pre">        </span>  problem was caused by an access to the object _camera without</p><p><span class="" style="white-space:pre">   </span>  checking whether the object is valid. So I changed the line:</p><p><span class="" style="white-space:pre">    </span>  </p><p><span class="" style="white-space:pre">        </span>  Code:</p><p><span class="" style="white-space:pre">   </span>  if (_cameraRequiresSetUp ||</p><p><span class="" style="white-space:pre">     </span>  (_cameraAttachmentMapModifiedCount!=_camera->getAttachmentMapModifiedCount()))</p><p><span class="" style="white-space:pre">       </span>  </p><p><span class="" style="white-space:pre">        </span>  to</p><p><span class="" style="white-space:pre">      </span>  </p><p><span class="" style="white-space:pre">        </span>  Code:</p><p><span class="" style="white-space:pre">   </span>  if (_cameraRequiresSetUp || (_camera.valid() &&</p><p><span class="" style="white-space:pre"> </span>  _cameraAttachmentMapModifiedCount!=_camera->getAttachmentMapModifiedCount()))</p><p><span class="" style="white-space:pre">        </span>  "</p><p><br></p><p>2015-05-26 17:09  robert</p><p><br></p><p><span class="" style="white-space:pre">        </span>* src/osgUtil/CullVisitor.cpp: From Farshid Lashkari and Robert</p><p><span class="" style="white-space:pre">        </span>  Osfield, "a small change to the CullVisitor class, which will use</p><p><span class="" style="white-space:pre">  </span>  cloneType() on the root render stage when creating children</p><p><span class="" style="white-space:pre">     </span>  render stages. This allows us to pass a custom RenderStage object</p><p><span class="" style="white-space:pre">       </span>  to the SceneView and have it used for all sub-stages."</p><p><br></p><p>2015-05-26 10:05  robert</p><p><br></p><p><span class="" style="white-space:pre">   </span>* examples/osgtext3D/TextNode.cpp,</p><p><span class="" style="white-space:pre">     </span>  examples/osgtext3D/osgtext3D.cpp, include/osgText/Style,</p><p><span class="" style="white-space:pre">        </span>  src/osgText/Glyph.cpp, src/osgText/GlyphGeometry.cpp,</p><p><span class="" style="white-space:pre">   </span>  src/osgText/GlyphGeometry.h, src/osgText/Style.cpp: Rewrote the</p><p><span class="" style="white-space:pre"> </span>  Text3D bevel implementation to automatically adjust bevel</p><p><span class="" style="white-space:pre">       </span>  thickness to avoid overalapping and erronous tesselation.</p><p><span class="" style="white-space:pre">       </span>  </p><p><span class="" style="white-space:pre">        </span>  Added osgText::Bevel::s/getRoundedConcaveJunctions(bool) to</p><p><span class="" style="white-space:pre">     </span>  control how the bevel should be tessellated around concave</p><p><span class="" style="white-space:pre">      </span>  junctions on the glyph boundary.</p><p><br></p><p>2015-05-26 08:48  robert</p><p><br></p><p><span class="" style="white-space:pre">      </span>* src/osgViewer/CompositeViewer.cpp, src/osgViewer/Viewer.cpp:</p><p><span class="" style="white-space:pre"> </span>  Added use of ref_ptr<></p><p><br></p><p>2015-05-25 12:39  robert</p><p><br></p><p><span class="" style="white-space:pre">  </span>* src/osgViewer/CompositeViewer.cpp, src/osgViewer/Viewer.cpp:</p><p><span class="" style="white-space:pre"> </span>  Changed the EventQueue::frame() event generation to use the</p><p><span class="" style="white-space:pre">     </span>  generatePointerData/reprojectPointerData() methods in the same</p><p><span class="" style="white-space:pre">  </span>  way that other events are handled.</p><p><br></p><p>2015-05-25 11:33  robert</p><p><br></p><p><span class="" style="white-space:pre">    </span>* include/osgGA/EventQueue, src/osgGA/EventQueue.cpp: Added</p><p><span class="" style="white-space:pre">    </span>  osgGA::GUIEventAdapter* returns from various EventQueue event</p><p><span class="" style="white-space:pre">   </span>  generation methods.</p><p><br></p><p>2015-05-21 14:11  robert</p><p><br></p><p><span class="" style="white-space:pre">   </span>* src/osgText/Text3D.cpp: Fixed memory error associated with</p><p><span class="" style="white-space:pre">   </span>  reading over the end of container due to an unbounded while loop.</p><p><br></p><p>2015-05-06 18:39  robert</p><p><br></p><p><span class="" style="white-space:pre">     </span>* AUTHORS.txt, ChangeLog, applications/osgversion/Contributors.cpp:</p><p><span class="" style="white-space:pre">    </span>  Update ChangeLog and AUTHORS file</p><p><br></p><p>2015-05-05 11:05  robert</p><p><br></p><p><span class="" style="white-space:pre">     </span>* CMakeLists.txt: Changed the CMP0020 check to > 2.8.10</p><p><span class="" style="white-space:pre">     </span>  Updated SO version number</p><p><br></p><p>2015-04-30 14:04  robert</p><p><br></p><p><span class="" style="white-space:pre">     </span>* include/osg/GLDefines: From Christian Kehl, changes for making</p><p><span class="" style="white-space:pre">       </span>  osgAndroid working with GLES1 enabled</p><p><br></p><p>2015-04-30 13:59  robert</p><p><br></p><p><span class="" style="white-space:pre"> </span>* src/osgViewer/GraphicsWindowWin32.cpp: From Dmitriy Ogalcev, fix</p><p><span class="" style="white-space:pre">     </span>  for crash when calling setCursor from a non GUI thread</p><p><br></p><p>2015-04-28 16:12  robert</p><p><br></p><p><span class="" style="white-space:pre">        </span>* include/osgShadow/MinimalShadowMap,</p><p><span class="" style="white-space:pre">  </span>  src/osgShadow/MinimalShadowMap.cpp: Replaced attempt at passing</p><p><span class="" style="white-space:pre"> </span>  NULL Matrix with two specialized methods.</p><p><br></p><p>2015-04-27 19:31  robert</p><p><br></p><p><span class="" style="white-space:pre">     </span>* include/osg/LineSegment, src/osg/LineSegment.cpp: Renamed</p><p><span class="" style="white-space:pre">    </span>  LineSegment::intersect(BoundingSphere/Box, double/float&,</p><p><span class="" style="white-space:pre">   </span>  double/float&) methods to</p><p><span class="" style="white-space:pre">   </span>  LineSegment::intersectAndComputeRations(..) to avoid confusion</p><p><span class="" style="white-space:pre">  </span>  with the change in convention for</p><p><span class="" style="white-space:pre">       </span>  the old intersect(BoundingBox&, float/double&, float/double&)</p><p><span class="" style="white-space:pre">       </span>  method as it was inconsitent with the rest of the OSG including</p><p><span class="" style="white-space:pre"> </span>  the intersect(BoundingSphere) method in how the ratio for the</p><p><span class="" style="white-space:pre">   </span>  second intersection was measure from - original from the end</p><p><span class="" style="white-space:pre">    </span>  point, but now made consistent with other places in the OSG so be</p><p><span class="" style="white-space:pre">       </span>  based on ration from start to end of segment.</p><p><br></p><p>2015-04-23 14:44  robert</p><p><br></p><p><span class="" style="white-space:pre"> </span>* src/osgText/GlyphGeometry.cpp: Refactoring GlyphGeometry Boundary</p><p><span class="" style="white-space:pre">    </span>  class to facilate better bevel overlap detection</p><p><br></p><p>2015-04-23 12:58  robert</p><p><br></p><p><span class="" style="white-space:pre">      </span>* examples/osgtext/osgtext.cpp: Comment out debug notification</p><p><br></p><p>2015-04-23 09:49  robert</p><p><br></p><p><span class="" style="white-space:pre">       </span>* src/osgText/GlyphGeometry.cpp: Removed unused method</p><p><br></p><p>2015-04-22 14:25  robert</p><p><br></p><p><span class="" style="white-space:pre">       </span>* src/osgPlugins/3ds/ReaderWriter3DS.cpp: From Giampaolo Vigano,</p><p><span class="" style="white-space:pre">       </span>  "please find attached a further fix for 3ds plugin: now</p><p><span class="" style="white-space:pre">    </span>  reflection map works also with transparent objects (I also</p><p><span class="" style="white-space:pre">      </span>  removed a redundant setting of BlendFunc)."</p><p><br></p><p>2015-04-21 17:29  robert</p><p><br></p><p><span class="" style="white-space:pre">      </span>* src/osgPlugins/3ds/ReaderWriter3DS.cpp,</p><p><span class="" style="white-space:pre">      </span>  src/osgPlugins/3ds/lib3ds/lib3ds_util.c: From Chris Denham, "I</p><p><span class="" style="white-space:pre">     </span>  found a couple of memory leaks in 3DS reader plugin and I have</p><p><span class="" style="white-space:pre">  </span>  attached corrected files. I have attached an example 3DS file I</p><p><span class="" style="white-space:pre"> </span>  used to test the leaks/fixes using osgviewer for trunk at rev</p><p><span class="" style="white-space:pre">   </span>  [14853] and the tagged version 3.2.1.</p><p><span class="" style="white-space:pre">   </span>  </p><p><span class="" style="white-space:pre">        </span>  The first leak is in the lib3ds module (yeah, I know that</p><p><span class="" style="white-space:pre">       </span>  probably should be corrected at <a href="http://code.google.com/p/lib3ds/">http://code.google.com/p/lib3ds/</a></p><p><span class="" style="white-space:pre">   </span>  but I'm assuming that as no commits have happened there since</p><p><span class="" style="white-space:pre">   </span>  2011 that it may be better to fix the copy we have in the OSG of</p><p><span class="" style="white-space:pre">        </span>  that project) The leak is caused by lib3d's use of realloc(ptr,</p><p><span class="" style="white-space:pre"> </span>  0) to free up memory allocations, but realloc, when ptr==NULL</p><p><span class="" style="white-space:pre">   </span>  returns malloc(0) rather than NULL and thus leaks a zero byte</p><p><span class="" style="white-space:pre">   </span>  allocation. The solution here was to adjust the</p><p><span class="" style="white-space:pre"> </span>  'lib3ds_util_reserve_array' function so that it realloc is not</p><p><span class="" style="white-space:pre">  </span>  used to release a NULL pointer.</p><p><span class="" style="white-space:pre"> </span>  </p><p><span class="" style="white-space:pre">        </span>  The second leak is in ReaderWriter3DS.cpp and arises when any of</p><p><span class="" style="white-space:pre">        </span>  the created StateSet objects added to the StateSetMap don't</p><p><span class="" style="white-space:pre">     </span>  subsequently get applied to a Node. The solution here was just to</p><p><span class="" style="white-space:pre">       </span>  simply use the osg::ref_ptr around the raw StateSet pointer that</p><p><span class="" style="white-space:pre">        </span>  was used in the locally defined StateSetInfo struct."</p><p><br></p><p>2015-04-20 10:41  robert</p><p><br></p><p><span class="" style="white-space:pre">    </span>* AUTHORS.txt, ChangeLog, applications/osgversion/Contributors.cpp:</p><p><span class="" style="white-space:pre">    </span>  Updated AUTHORS</p><p><br></p><p>2015-04-20 10:36  robert</p><p><br></p><p><span class="" style="white-space:pre">       </span>* examples/osgmanipulator/osgmanipulator.cpp: Build fix</p><p><br></p><p>2015-04-20 10:19  robert</p><p><br></p><p><span class="" style="white-space:pre">      </span>* src/osgPlugins/3ds/ReaderWriter3DS.cpp: Build fix</p><p><br></p><p>2015-04-20 09:39  robert</p><p><br></p><p><span class="" style="white-space:pre">  </span>* src/osg/State.cpp: Moved uniform substitution to infront of</p><p><span class="" style="white-space:pre">  </span>  vertex attribute substituion to make sure gl_Vertex usage is</p><p><span class="" style="white-space:pre">    </span>  replaced when required.</p><p><br></p><p>2015-04-20 09:08  robert</p><p><br></p><p><span class="" style="white-space:pre">       </span>* include/osgUtil/MeshOptimizers: From Tim Moore, "The</p><p><span class="" style="white-space:pre">    </span>  order_by_primitive_mode comparer was not providing a strict weak</p><p><span class="" style="white-space:pre">        </span>  ordering, which was causing a crash in the sort() call in</p><p><span class="" style="white-space:pre">       </span>  VertexAccessOrderVisitor::optimizeOrder (gcc 4.9, Fedora 21)."</p><p><br></p><p>2015-04-17 14:36  robert</p><p><br></p><p><span class="" style="white-space:pre">   </span>* CMakeLists.txt: Updated dev release number</p><p><br></p><p>2015-04-17 13:33  robert</p><p><br></p><p><span class="" style="white-space:pre"> </span>* include/osgManipulator/AntiSquish: Added implementations for the</p><p><span class="" style="white-space:pre">     </span>  libraryName and className for the AntiSquish node.</p><p><br></p><p>2015-04-17 13:24  robert</p><p><br></p><p><span class="" style="white-space:pre">    </span>* src/osg/Node.cpp: Fixed CollectParentPaths visitor so that it</p><p><span class="" style="white-space:pre">        </span>  sets the setNodeMaskOverride(0xffffffff) to make sure all parents</p><p><span class="" style="white-space:pre">       </span>  are traversed to find parents, even ones that have their NodeMask</p><p><span class="" style="white-space:pre">       </span>  set to 0x0.</p><p><br></p><p>2015-04-17 13:22  robert</p><p><br></p><p><span class="" style="white-space:pre">   </span>* examples/osgmanipulator/osgmanipulator.cpp: Added --test-NodeMask</p><p><span class="" style="white-space:pre">    </span>  option to test crash when a parent of osgmanipulator::AntiSquish</p><p><span class="" style="white-space:pre">        </span>  node has a NodeMask set to 0x0.</p><p><br></p><p>2015-04-16 11:19  robert</p><p><br></p><p><span class="" style="white-space:pre">       </span>* src/osgPlugins/osgjs/json_stream: Changed MSVC version test to <=</p><p><span class="" style="white-space:pre"> </span>  to enable fallback for VS2010.</p><p><br></p><p>2015-04-16 10:07  robert</p><p><br></p><p><span class="" style="white-space:pre">        </span>* src/osgManipulator/AntiSquish.cpp: Fixed crash when AntiSquish</p><p><span class="" style="white-space:pre">       </span>  node is the root of the scene graph.</p><p><br></p><p><br></p><p><br></p></div>
</blockquote>