Fixed Open Inventor Bugs

Issue API Product Release

The file produced by SoOffscreendRenderer::writeToRGB is not valid for some image file readers.

Core Open Inventor 9.0

NURBS surface with linear trimming profiles is now tessellated correctly.

Core Open Inventor 9.3

Java - SoError class - To improve application debugging, the SoError class and its inherited classes are exposed.

Java Open Inventor 9.3

In MultiThread mode, sometimes the automatic redraw did not happen.

Core Open Inventor 9.2.1

Textured VRMLElevationGrid was not lit properly.

Core Open Inventor 9.0

SoSelection failed in selecting lines when zooming in on very small area with an orthographic camera.

Core Open Inventor 9.2

SoOffscreenRenderer: Crashed when the application was using remote rendering.

Core Open Inventor 9.0
Improved mouse binding. Now if you bind a new event to the third mouse button it works properly. 
For further details, see the demo src\Inventor\examples\Features\SetKeyBinding.
Cpp Open Inventor 9.3

Switching transparency mode from SCREEN_DOOR to SORTED_LAYERS_BLEND_TRANSPARENCY made opaque objects appear as in SCREEN_DOOR mode.

Core Open Inventor 9.0

Alpha Blending couldn't be enabled without adding a material node having a non-null transparency.

The fragment shader allowed to set transparency value but the shaderProgram node didn't enable blending.

Core Open Inventor 9.0

In a scene graph, the transparency of one object was applied also to another object.

A cone below a separator and an SoFaceSet with transparency in the orderedRGBA... The first frame was fine, but subsequent frames shown the cone as transparent and it should not...

Core Open Inventor 9.0

DialogViz file filter fails when the filter contains more than one file extension.

Core DialogViz 9.2

In some cases transparent objects disappeared when setSceneGraph was called several times.

Core Open Inventor 9.0

In some cases 3D text disappeared when displayed in two viewers and one viewer was deleted.

Core Open Inventor 8.6.1

PoTimeAxis crashed when PoDateFormatMapping::format contains Y

Core MeshViz 9.2

IvTuneViewer started with Shift-F12 prevented from exiting normally some programs.

The IvTuneViewer window had to be closed before closing the program otherwise the program crashed.

Core Open Inventor 9.0

SoExtrusion: In some cases rendering with a closed spine was incorrect at the beginning and end of the spine.

Core Open Inventor 8.6

IvTuneViewer display was broken if SORTED_OBJECT_TRIANGLES_BLEND was enabled and the headlight was disabled

Core Open Inventor 9.1

SoToVRML2Action: Crashed when applied to an SoTexture2 defined outside a separator containing an SoTexture2Transform

Core Open Inventor 8.6

SoTimeCounter: Didn't update the fields of SoVRMLTransform nodes.

Core Open Inventor 8.6.1

Polygons weren't drawn when defining a winding rule and the last index in list wasn't -1.

Core Open Inventor 8.6

SoToVRML2Action: Applying the action to a scene crashed when converting SoVertexProperty nodes.

Core Open Inventor 8.6

If we connect a field and if the ignored flag was changed immediatly, then the first value of the connection is not set.

Core Open Inventor 9.0

Stereo was not supported on Mac. It is now available with the port to Mac 64.

Core Open Inventor 9.0

ShaderBrowser example program rendered some scenes incorrectly on an ATI FireGL 7350 board.

Core Open Inventor 8.6

Problem with SoNodeSensor and multiple notification on SoTexture2 nodes.

In some cases modifying a field, e.g. filename in SoTexture2, indirectly modifies another field (image in this case) and Open Inventor should notify twice.

Core Open Inventor 8.6.1

SoGetPrimitiveCountAction: Returned incorrect number of triangles when applied to to a shape node instanced multiple times under a Separator.

Core Open Inventor 8.6

In some cases objects could disappear if the transparency field of SoMaterial was repetitively switched between transparent and opaque.

Core Open Inventor 9.0

Geometry with an indexed texture applied were transparent with most transparency types, but opaque with SCREENDOOR and SORTED_LAYERS_BLEND.

Core Open Inventor 9.0

In some cases, semi-transparent objects coulddissapear and never came back.

Core Open Inventor 9.2

In Multi thread mode, in some cases the application could crash

Core Open Inventor 9.2.1

The volume was not rendered when using DELAYED_SORTED_LAYERS_BLEND transparency mode.

Core VolumeViz 9.0

The Multichannel example was incorrectly rendered when transparency type= DELAYED_SORTED_LAYERS_BLEND.

Core VolumeViz 9.0

The ruberband lasso and rectangle were not displayed with SoExtSelection  (in the extSelection demo)

Java Open Inventor 9.0

In paging mode, calling getMinMax corrupted the display of volumes.

Core VolumeViz 9.0

In paging mode obliqueSlice doesn't cover the whole face of the volume

Core VolumeViz 9.0

SoDataRange was ignored in paging mode

Core VolumeViz 9.0

Using Windows and MFC, animation using SoTimeCounter was almost stopped when moving the mouse in the viewer.

Cpp Open Inventor 9.0

Objects containing indexed texture was not rendered properly when the transparency mode is set to SORTED_LAYER_BLEND

Core Open Inventor 9.0

Picking a line over a VolumeViz slice produced a crash.

Core Open Inventor 9.0

SoExtrusion: Badly distorted extrusion in some cases.

Core Open Inventor 8.6

Some method of the MeshViz XLM mesh interface are not pure virtual but have a default implementation that throws an exception. This is a trick to prevent application to have to implement too many methods. However, the message displayed by the exception handler is not visible in the console.

Cpp MeshVizXLM 9.2

SoSelection: Removing a selected node from the scene graph didn't call the deselection callback.

Core Open Inventor 9.0

SoLDMWriter::initialize crashed in some cases with the following error message:

System.NullReferenceException: Object reference not set to an instance of an object.

.NET VolumeViz 9.0

The display modes "low res move", edge2d, earlyZ, ... prevented from getting valid transparent multi volumes display

Core VolumeViz 9.1

IvTune: The Open Inventor application process didn't stop if the window was closed while running IvTune (Shift-F12).

Core Open Inventor 9.0

Invalid color were displayed when a shader was added to a scene after a colormap node.

Core Open Inventor 9.0

On the fly LDM conversion was reading many times the same slice.

A custom reader had its getSubSlice function called many times with the same slice id and same subslice, sometimes subsequently.  Redundant reads are significantly reduced in 9.1, but note that it is normal for each slice to be read several times.

Core VolumeViz 9.1

Clipping was incorrect when several geometries are under the SoVolumeClippingGroup.

SoVolumeclippingGroup supports only closed geometry. The new SoCSGShape node should be used to create a closed geometry from open shapes by applying a CSG operation.

Core VolumeViz 8.6

The methods used for setting and getting the antialiasing fron the SoOffscreenRenderer and in Open Inventor viewers have different parameters making it very difficult to get the value from one of them and set it into the other one.

Now the SoOffscreenRenderer::setFullSceneAntialiasing is overloaded with the same parameter as the setFullSceneAntialiasing method in the viewers.

Core Open Inventor 9.0

When doing regular resize of an SoTexture2 node attached to a SoRenderToTextureProperty node, the render froze for a while before continuing.

Core Open Inventor 9.2.4

MoMeshCellShape did not hide internal edges generated by the tessellator

Core MeshVizXLM 9.1

SoSelection: After deleting a selected node, box highlight remained on screen.

Core Open Inventor 8.6

When enabling IvTune on scene containing a SoSelection some error messages could appear in the console.

Typical error message:
Inventor error in SoOIVViewer::isViewing()():
unable to retrieve SoGuiViewer

Core IvTune 9.0

SoRayPickAction did not pick any triangle when triangle culling and 3D ray were used.

Core Open Inventor 9.0.1

In the Turbine demo, when increasing the skin transparency then decreasing it back to 0, the skin coloring was different from the beginning.

Core MeshVizXLM 9.0

Huge performance slow down when enabling SoVolumeTriangleStripSet::useVBO in some cases.

Core VolumeViz 9.0

For very large scenes covering a large area, VARIANCE_SHADOW_MAP failed whereas other techniques worked

Core Open Inventor 9.2.2

SoDevice.GetTotalMemory() and SoDevice.GetAvailableMemory() were not available in .NET

.NET Open Inventor 9.0

OpenCL computing framework was not available in .NET

.NET Open Inventor 9.1

When building the lower resolutions immediately with SoLDMWriter::writeSubVolume, erroneous intermediate resolution tiles were displayed.

Core VolumeViz 9.0

SoRayPickAction::setRay failed to select lines when it was able to select faces in some configurations.

Core Open Inventor 9.0

MeshViz XLM: In some cases, the mesh representation was not updated when the mesh topology or geometry changed.

Core MeshVizXLM 9.0

If a transparent object was removed from the scene graph, then added back in, in some cases it would disappear permanently.

Core Open Inventor 9.0

Exporting a scene to PostScript produced Inventor errors in context manager.

Core HardCopy 8.6

Cubic interpolation broke SoVolumeMasks volume rendering.

Cpp VolumeViz 9.0

VolumeRender min composition was not working when rendering off-screen. Move low-res and early-z were not working.

Cpp VolumeViz 9.0

SoOrthoSliceDetail: The getValue() method (and other get methods) are now const to be consistent with the const pointer returned by getDetail().

Cpp VolumeViz 8.6

When the scene graph contains an SoShadowGroup node with method set to VARIANCE_SHADOW_MAP, the color of line highlighting (SoLineHighlightRenderAction) was wrong. Color was correct with method SHADOW_MAP.

Core Open Inventor 9.0

SoShadowGroup changed the color of the shadowed geometry (to the color of some shadow casting geometry) when
  - method was VARIANCE_SHADOW_MAP
  - shadowed geometry had LightModel = BASE_COLOR, and
  - shadowed geometry was traversed after main model

Core Open Inventor 9.0

SoUniformGridClipping: did not always clip properly.

Core VolumeViz 8.6

IvTune: HPGL, EMF and CGM export from IvTune were actually creating PostScript files.

Core HardCopy 8.6

NET - The class OIV.LDM.Converters.SoBaseLDMConverter.Progress(numTilesGenerated, numTilesToGenerate) is now exposed. This class helps manage the LDM  conversion process.

.NET Open Inventor 9.3

The QtViewer demo is supposed to be and example integrating OIV rendering inside a QGLWidget without using the SoQtWidgets. However, it did not display animations.

Cpp Open Inventor 9.0

Transparent indexedTriangleStripSet were erroneously displayed when using SoBoxHighlightRenderAction with slices.

Core Open Inventor 9.0

When passing a valid path and filename to SoConverterParameters.SetInputFileName, the method SoConverter.Convert(SoConverterParameters) returned CVT_INPUT_PARAMS_PROBLEM=-1.

.NET Open Inventor 8.6.2

Memory leak while viewers were deleted and recreated

Java Open Inventor 9.1

Memory leak when creating/deleting any class derived from SoGuiComponent.

Cpp Open Inventor 9.0

SoDepthOffset: When the camera entered the scene bbox, the depth offset increased significantly and suddenly.

Core Open Inventor 8.6

Wrong blending with SORTED_LAYER_BLEND in some cases.

Core Open Inventor 9.2

Performance problems and memory leaks when using SoBufferRegions.

The classes SoBufferRegion and SoGLRenderAction had two issues related to the usage of the SoBufferRegion and the bug introduced by this OpenGL extension:

1) SoGLRenderAction was creating and destroying the buffer region object at each frame.
2) SoBufferRegion did not call the function wglDeleteBufferRegionARB to free the memory.

Core Open Inventor 8.6

On Linux, when the DISPLAY=:0.0 does not exist, an error message was displayed.

Core Open Inventor 9.0

So<XX>GLWidget: Even if setGraphicConfigTemplate appeared to succeed without errors, attempting to query the graphic config or pixel format after this call produced a crash.

Core Open Inventor 9.0

RayPick fails when there is no GL Context.

Core Open Inventor 9.0

At least for certain camera orientations, when nearDistance is very small, e.g. 0.001 or 0.0001, panning left and right in the viewer caused the camera to "shake" up and down while moving. 

Default algorithm relied on inverted matrices and was causing precision issues when changing  OIV_CLIPPING_TOLERANCE to small values (such as 0.00001). We now only compute a world scale Ox vector that is next transformed given camera orientation. The camera is then translated given this vector.

Core Open Inventor 9.0

The .NET installer created C:\OpenInventor\OIV.NET8.1.0\src\Inventor\examples\Mentor\CSharp\_17_2_GLCallback which contains mixed C++ and .NET code, and couldn't compile.

.NET Open Inventor 9.1

LDM Converter: Converting an LDM file to an LDM file with a different data format did not correctly set the XML tag <NumSignificantBits>

Core VolumeViz 9.0

Volume geometry: Incorrect lighting when using a negative scale factor.

Core VolumeViz 9.0

Volume geometry: In some cases lost texture when adding a directionalLight to the scene.

Core VolumeViz 8.6

SoNurbsSurface did not support NURBS profile coordinates outside the control points domain.

Core Open Inventor 9.2.3

SoExtrusion: failed to render in some cases

Core Open Inventor 8.6

Volume geometry: in some cases was not correctly clipped where it intersected the volume.

Core VolumeViz 9.0

SoQt viewers handled QCloseEvent and did not propagate it to the parent widget.

Core Open Inventor 8.6.1

IvTune viewer no longer displays an error message when the F3 (find next) button is used.

Core IvTune 9.3

SoGLWindow::createInstance checks extension on display :0.0 even if the current display is different.

Core Open Inventor 9.0

IvTune: In some cases performance problems occured in viewer window after closing IvTune.

Core Open Inventor 9.0

When deleting display lists, a bad context error message was displayed on Mac.

Cpp Open Inventor 9.1

SoHeightFieldGeometry: Setting the undefinedValue field programmatically did not work. The value taken from the LDM file header was always used.

Core VolumeViz 9.0

MoMeshIsosurface and MoMeshPlaneSlice was crashing or procuced a wrong display when adding a MoTessellator on linear mesh

Core MeshVizXLM 9.0.1

SoVolumeRender: Activating lighting on the SoVolumeRender node broke the rendering on demo GPUDataCompose.

NOTE: The lighting field of SoVolumeRender is deprecated and should not be used!

Core VolumeViz 8.6