…andle cases where no texture or image is attached
…age setup from osgviewer example into osg::ArgumentParser and osgViewer::Viewer to make them more universally available.
… by refactoring texture load into it's own method. * use new method from step 1 to load 'map_opacity' textures from .mtl files"
…s a SVG file as an osg::Image using cairo and rsvg.
… OpenFlight exporter. It might seem odd that the change actually removes the stub apply(Billboard&) method, but it turns out Billboards are easily supported in subordinate routines of the existing apply(Geode&) method with s dynamic_cast, so there's no need for a separate apply(Billboard&)."
3DC: Output now uses osg::notify. JPEG: Now returns correct error code for empty input file. FreeType: Prevent possible crash if Options is NULL."
…er to avoid threading issues associated with compile running in a parallel with update/cull on the first frame. Also added automatic recompile when a new SceneData is applied to a View.
…karound for OpenGL driver bug that incorrectly reports a warning when value is 0.
… JPEG would all crash if attempting to read an empty file, and FLT would go into an infinite loop. All are fixed with this change. I also fixed some return values for a couple of these, changing FILE_NOT_HANDLED to ERROR_IN_READING_FILE where appropriate."
…e Inventor plugin, where one node (SoTextureCoordinate3) was assumed to be available in all versions of Inventor but is actually only available in Coin. The use of the node is now protected by #ifdef __COIN__ constructs. The attachment is based on OSG 2.4, not SVN."
…casionally I get an excess Tab key report when switching back to an OSG application (usually FlightGear :-). Although KDE has consumed the Tab, it's sometimes still in the XKeymapEvent's key_vector, and followed by a Tab KeyRelease event. Avoid this artifact by - asking for a "fresh" keymap (via XQueryKeymap()), rather than using the unreliable(?) XKeymapEvent's key_vector, and by - flushing all key events on focus-in (to avoid the KeyRelease) After Super-press, Tab-press, Super-release, Tab-release (note the wrong release order!) I still get an extra Tab event. But this is not surprising and not exactly wrong either. Also it's hard to avoid, as we can't see what happened to the keyboard before we regained focus. Files changed: src/osgViewer/GraphicsWindowX11.cpp include/osgViewer/api/X11/GraphicsWindowX11"
…hp-plugin. I've spotted huge memory leaks int ShapeParser and fixed them. Also, there was a missing destructor (PolygonM) and a missing member initialization (PolygonZ) Would be nice if someone could test the changes. To release the memory just if no reading error happened (and therefore the arrays would be valid) I've added an macro to release and reset the pointers at once. I'm not using macros myself very often as I don't like them, but I think it doesn't hurt in this code. "
…s allocated. Fortunately, until now it tested another variable (_particleSizeUniform, which is, at that moment, not allocated as well) and everything went ok. So it does not fix a crash or so, it is a matter of correct code. Line 353 is changed from if (!_particleSizeUniform) to if (!_particleColorUniform) "
…xport geometry backend was using some old turn-on code, originally written just to enable other development but not intended for actual release. Sadly, my OSG training commitments prevented me from fixing this prior to 2.4. In essence, the FLT exporter was emitting a full set of Mesh records each time it encountered a PrimitiveSet. Attached is a fix. The code now emits the Mesh set up records, then iterates over all PrimitiveSets and emits a Mesh Primitive record per PrimitiveSet. It also loops over PrimitiveSets twice, first writing Face records according to the mode, the writing Mesh records (again according to the mode). The final change included here is support for GL_POINTS as single-vertex Face records. Billboards are still to come."
…xt which adds an automated test for OSG_GLU_TESS_CALLBACK_TRIPLEDOT. This should help ease initial configuration on OS X systems."
…da DOM 2.x