HOOPS Visualize 3DF Release Notes
NOTE: The release notes do not include bug fixes. For a list of bug fixes, see this page.
Service Pack 20.58
Library compatibility information
Library name | Version | Windows | Linux | OS X | Notes |
DGN Direct |
3.8.1 |
yes |
no |
no |
|
DWF Toolkit |
7.7 |
yes |
no |
no |
|
HOOPS Exchange |
2016 SP2 U2 |
yes |
yes |
no |
|
HOOPS Publish |
2016 SP2 U2 |
yes |
yes |
no |
|
.NET Framework |
4.0 |
yes |
no |
no |
v4.5 required for wpf_image
v4.5 required for WPF over Remote Desktop |
Parasolid |
23.0 |
yes |
no |
no |
|
Qt |
4.4.1 |
yes |
yes |
yes |
OS X requires Qt 5 |
RealDWG |
2013, 2014, 2015 |
yes |
no |
no |
2013 and 2014 use vc10 2015 uses vc11 |
SketchUp |
2015 |
yes |
no |
no |
|
HOOPS Visualize 20.58 is a bug-fix release only.
Service Pack 20.57
Library compatibility information
Library name | Version | Windows | Linux | OS X | Notes |
DGN Direct |
3.8.1 |
yes |
no |
no |
|
DWF Toolkit |
7.7 |
yes |
no |
no |
|
HOOPS Exchange |
2016 SP2 U2 |
yes |
yes |
no |
|
HOOPS Publish |
2016 SP2 U2 |
yes |
yes |
no |
|
.NET Framework |
4.0 |
yes |
no |
no |
v4.5 required for wpf_image
v4.5 required for WPF over Remote Desktop |
Parasolid |
23.0 |
yes |
no |
no |
|
Qt |
4.4.1 |
yes |
yes |
yes |
OS X requires Qt 5 |
RealDWG |
2013, 2014, 2015 |
yes |
no |
no |
2013 and 2014 use vc10 2015 uses vc11 |
SketchUp |
2015 |
yes |
no |
no |
|
HOOPS Visualize 20.57 is a bug-fix release only.
Service Pack 20.56
Library compatibility information
Library name | Version | Windows | Linux | OS X | Notes |
DGN Direct |
3.8.1 |
yes |
no |
no |
|
DWF Toolkit |
7.7 |
yes |
no |
no |
|
HOOPS Exchange |
2016 SP2 |
yes |
yes |
no |
|
HOOPS Publish |
2016 SP2 |
yes |
yes |
no |
|
.NET Framework |
4.0 |
yes |
no |
no |
v4.5 required for wpf_image
v4.5 required for WPF over Remote Desktop |
Parasolid |
23.0 |
yes |
no |
no |
|
Qt |
4.4.1 |
yes |
yes |
yes |
OS X requires Qt 5 |
RealDWG |
2013, 2014, 2015 |
yes |
no |
no |
2013 and 2014 use vc10 2015 uses vc11 |
SketchUp |
2015 |
yes |
no |
no |
|
HOOPS Visualize 20.56 updates HOOPS Exchange and HOOPS Publish to version 2016 SP2. Various bug fixes are also included.
Service Pack 20.55
Library compatibility information
Library name | Version | Windows | Linux | OS X | Notes |
DGN Direct |
3.8.1 |
yes |
no |
no |
|
DWF Toolkit |
7.7 |
yes |
no |
no |
|
HOOPS Exchange |
2016 SP1 |
yes |
yes |
no |
|
HOOPS Publish |
2016 SP1 |
yes |
yes |
no |
|
.NET Framework |
4.0 |
yes |
no |
no |
v4.5 required for wpf_image
v4.5 required for WPF over Remote Desktop |
Parasolid |
23.0 |
yes |
no |
no |
|
Qt |
4.4.1 |
yes |
yes |
yes |
OS X requires Qt 5 |
RealDWG |
2013, 2014, 2015 |
yes |
no |
no |
2013 and 2014 use vc10 2015 uses vc11 |
SketchUp |
2015 |
yes |
no |
no |
|
HOOPS Visualize 20.55 updates HOOPS Exchange and HOOPS Publish to version 2016 SP1. Various bug fixes are also included.
Service Pack 20.54
Library compatibility information
Library name | Version | Windows | Linux | OS X | Notes |
DGN Direct |
3.8.1 |
yes |
no |
no |
|
DWF Toolkit |
7.7 |
yes |
no |
no |
|
HOOPS Exchange |
2015 SP2 |
yes |
yes |
no |
|
HOOPS Publish |
2015 SP2 |
yes |
yes |
no |
|
.NET Framework |
4.0 |
yes |
no |
no |
v4.5 required for wpf_image
v4.5 required for WPF over Remote Desktop |
Parasolid |
23.0 |
yes |
no |
no |
|
Qt |
4.4.1 |
yes |
yes |
yes |
OS X requires Qt 5 |
RealDWG |
2013, 2014, 2015 |
yes |
no |
no |
2013 and 2014 use vc10 2015 uses vc11 |
SketchUp |
2015 |
yes |
no |
no |
|
HOOPS Visualize 20.54 is a bug-fix release only.
Service Pack 20.53
Library compatibility information
Library name | Version | Windows | Linux | OS X | Notes |
DGN Direct |
3.8.1 |
yes |
no |
no |
|
DWF Toolkit |
7.7 |
yes |
no |
no |
|
HOOPS Exchange |
2015 Update 1 |
yes |
yes |
no |
|
HOOPS Publish |
2015 Update 1 |
yes |
yes |
no |
|
.NET Framework |
4.0 |
yes |
no |
no |
v4.5 required for wpf_image
v4.5 required for WPF over Remote Desktop |
Parasolid |
23.0 |
yes |
no |
no |
|
Qt |
4.4.1 |
yes |
yes |
yes |
|
RealDWG |
2013, 2014, 2015 |
yes |
no |
no |
2013 and 2014 use vc10 2015 uses vc11 |
SketchUp |
2015 |
yes |
no |
no |
|
HOOPS Visualize 20.53 is a bug-fix release only.
Service Pack 20.52
Library compatibility information
Library name | Version | Windows | Linux | OS X | Notes |
DGN Direct |
3.8.1 |
yes |
no |
no |
|
DWF Toolkit |
7.7 |
yes |
no |
no |
|
HOOPS Exchange |
2015 Update 1 |
yes |
yes |
no |
|
HOOPS Publish |
2015 Update 1 |
yes |
yes |
no |
|
.NET Framework |
4.0 |
yes |
no |
no |
v4.5 required for wpf_image
v4.5 required for WPF over Remote Desktop |
Parasolid |
23.0 |
yes |
no |
no |
|
Qt |
4.4.1 |
yes |
yes |
yes |
|
RealDWG |
2013, 2014, 2015 |
yes |
no |
no |
2013 and 2014 use vc10 2015 uses vc11 |
SketchUp |
2015 |
yes |
no |
no |
|
HOOPS Visualize 20.52 is a bug-fix release only.
Service Pack 20.51
Library compatibility information
Library name | Version | Windows | Linux | OS X | Notes |
DGN Direct |
3.8.1 |
yes |
no |
no |
|
DWF Toolkit |
7.7 |
yes |
no |
no |
|
HOOPS Exchange |
2015 Update 1 |
yes |
yes |
no |
|
HOOPS Publish |
2015 Update 1 |
yes |
yes |
no |
|
.NET Framework |
4.0 |
yes |
no |
no |
v4.5 required for wpf_image
v4.5 required for WPF over Remote Desktop |
Parasolid |
23.0 |
yes |
no |
no |
|
Qt |
4.4.1 |
yes |
yes |
yes |
|
RealDWG |
2013, 2014, 2015 |
yes |
no |
no |
2013 and 2014 use vc10 2015 uses vc11 |
SketchUp |
2015 |
yes |
no |
no |
|
HOOPS Visualize 20.51 is a bug-fix release only.
Service Pack 20.50
Library compatibility information
Library name | Version | Windows | Linux | OS X | Notes |
DGN Direct |
3.8.1 |
yes |
no |
no |
|
DWF Toolkit |
7.7 |
yes |
no |
no |
|
HOOPS Exchange |
2015 Update 1 |
yes |
yes |
no |
|
HOOPS Publish |
2015 Update 1 |
yes |
yes |
no |
|
.NET Framework |
4.0 |
yes |
no |
no |
v4.5 required for wpf_image
v4.5 required for WPF over Remote Desktop |
Parasolid |
23.0 |
yes |
no |
no |
|
Qt |
4.4.1 |
yes |
yes |
yes |
|
RealDWG |
2013, 2014, 2015 |
yes |
no |
no |
2013 and 2014 use vc10 2015 uses vc11 |
SketchUp |
2015 |
yes |
no |
no |
|
HOOPS Visualize 20.50 is a bug-fix release only.
Service Pack 20.43
Library compatibility information
Library name | Version | Windows | Linux | OS X | Notes |
DGN Direct |
3.8.1 |
yes |
no |
no |
|
DWF Toolkit |
7.7 |
yes |
no |
no |
|
HOOPS Exchange |
2015 Update 1 |
yes |
yes |
no |
|
HOOPS Publish |
2015 Update 1 |
yes |
yes |
no |
|
.NET Framework |
4.0 |
yes |
no |
no |
v4.5 required for wpf_image
v4.5 required for WPF over Remote Desktop |
Parasolid |
23.0 |
yes |
no |
no |
|
Qt |
4.4.1 |
yes |
yes |
yes |
|
RealDWG |
2013, 2014, 2015 |
yes |
no |
no |
2013 and 2014 use vc10 2015 uses vc11 |
SketchUp |
SDK v7 |
yes |
no |
no |
|
Functional changes
- The HOOPS 3D Stream Control is no longer guaranteed to be hosted by Tech Soft 3D. If you are using the control in your end-user application, you should host it in your location.
Service Pack 20.42
Library compatibility information
Library name | Version | Windows | Linux | OS X | Notes |
DGN Direct |
3.8.1 |
yes |
no |
no |
|
DWF Toolkit |
7.7 |
yes |
no |
no |
|
HOOPS Exchange |
2015 Update 1 |
yes |
yes |
no |
|
HOOPS Publish |
2015 Update 1 |
yes |
yes |
no |
|
.NET Framework |
4.0 |
yes |
no |
no |
v4.5 required for wpf_image
v4.5 required for WPF over Remote Desktop |
Parasolid |
23.0 |
yes |
no |
no |
|
Qt |
4.4.1 |
yes |
yes |
yes |
|
RealDWG |
2013, 2014, 2015 |
yes |
no |
no |
2013 and 2014 use vc10 2015 uses vc11 |
SketchUp |
SDK v7 |
yes |
no |
no |
|
Functional changes
- HOOPS Visualize 20.42 is a bug-fix release only.
Service Pack 20.41
Library compatibility information
Library name | Version | Windows | Linux | OS X | Notes |
DGN Direct |
3.8.1 |
yes |
no |
no |
|
DWF Toolkit |
7.7 |
yes |
no |
no |
|
HOOPS Exchange |
2015 Update 1 |
yes |
yes |
no |
|
HOOPS Publish |
2015 Update 1 |
yes |
yes |
no |
|
.NET Framework |
4.0 |
yes |
no |
no |
v4.5 required for wpf_image
v4.5 required for WPF over Remote Desktop |
Parasolid |
23.0 |
yes |
no |
no |
|
Qt |
4.4.1 |
yes |
yes |
yes |
|
RealDWG |
2013, 2014, 2015 |
yes |
no |
no |
2013 and 2014 use vc10 2015 uses vc11 |
SketchUp |
SDK v7 |
yes |
no |
no |
|
Functional changes
- HOOPS Visualize 20.41 is a bug-fix release only.
Service Pack 20.4
Library compatibility information
Library name | Version | Windows | Linux | OS X | Notes |
DGN Direct |
3.8.1 |
yes |
no |
no |
|
DWF Toolkit |
7.7 |
yes |
no |
no |
|
HOOPS Exchange |
2015 Update 1 |
yes |
yes |
no |
|
HOOPS Publish |
2015 Update 1 |
yes |
yes |
no |
|
.NET Framework |
4.0 |
yes |
no |
no |
v4.5 required for wpf_image
v4.5 required for WPF over Remote Desktop |
Parasolid |
23.0 |
yes |
no |
no |
|
Qt |
4.4.1 |
yes |
yes |
yes |
|
RealDWG |
2013, 2014, 2015 |
yes |
no |
no |
2013 and 2014 use vc10 2015 uses vc11 |
SketchUp |
2015 |
yes |
no |
no |
|
Functional changes
- A new field called HInputHandlerOptions::m_bDwgSkipUnreferencedBlocks hs been added to the DWG importer. This field contols whether geometry which is not referenced anywhere in the drawing will be imported.
- The HOOPS Publish interface is now supported on Linux.
Deprecated fields pertaining to the legacy DWG importer
The following fields were used with the old DWG importer. That importer no longer exists, so these fields have been deprecated.
HInputHandlerOptions::m_bInputViaHSF
The old importer had two separate import modes: One that read the DWG file into the database, and one that read it into a stream file, which would then be read into the database.
The current DWG importer only has one import mode: the one that reads the file straight into the database, like every other HIO module, therefore this option is no longer needed.
- HInputHandlerOptions::m_Deviation
This is the maximum tessellation deviation used when DWG tessellates geometry.
In the current DWG importer, this value is set 0.5, which is what AutoCAD uses.
- HInputHandlerOptions::m_bImportMetadata
Whether to import metadata.
The current importer always imports metadata.
- HInputHandlerOptions::m_listEntityType
A list of names of the types of entities the user wants to import. For example, if the list contains AcDbBlockReference, only entities of this type will be imported.
The current importer imports all entities, always.
- HInputHandlerOptions::m_bImportWireframeForBrep
If true, only the wireframe representation of solids will be imported.
The current importer imports solids when it finds them. Once the import is complete the user can switch to wireframe mode to obtain the same result.
- HInputHandlerOptions::m_numIsolines
Same as m_Deviation, but used for lines instead of solids.
The current DWG importer sets this value to 10. The value in AutoCAD is actually much lower by default, which in many files results in arcs looking like line segments.
- HInputHandlerOptions::m_bForceReimport
In the old importer, if ran with m_bInputViaHSF set to true, would load the generated HSF instead of reloading the DWG file, when the same DWG file was loaded multiple times.
This behavior could be override by setting m_bForceReimport to true, which forces the importer to ignore the HSF file and go back to the DWG file. The current importer does not load DWG files into Stream, so this option is useless.
- HInputHandlerOptions::m_bDisableDWGDrawOrder
Ignores the draw order.
The current importer always respect the draw order if one is set in the DWG file.
- HInputHandlerOptions::m_listDWGLayouts
List of layouts name to be imported.
The current importer always imports all layouts.
- HInputHandlerOptions::m_bIgnoreOffEntities
If true, ignores entities whose visibility is off.
The current importer imports all entities. If an entity has visibility set to off, it will be imported but will be made invisible.
- HInputHandlerOptions::m_bAttachDWGHandles
If true, DWG handles are imported.
In the current importer, DWG handles are always imported.
- HInputHandlerOptions::m_bImportAllLayouts
If true, all layouts are imported.
In the current importer, all layouts are always imported.
- HInputHandlerOptions::m_bDWGInsertMeshesAsShells
If true, all meshes are converted to shells.
In the current importer, meshes are inserted as meshes, shells are inserted as shells.
- HInputHandlerOptions::m_eDWGViewVector
A view vector used to determine how view dependent entities are imported.
In the current importer, the view vector is determined from the DWG file directly.
- HInputHandlerOptions::m_sDwgContrastColorRgb
The color to use as a contrast color when a color is specified BYBLOCK.
- HInputHandlerOptions::m_bLegacyOptimize
Performs an optimization on the final scene graph.
The current importer does not perform an optimization.
- HInputHandlerOptions::m_bDwgDepthRangeDrawOrder
Determines how 2D geometry is displayed. If it is true, depth range will be used. If it is false, offsets along the z-axis will be used.
The current importer uses the coordinates calculated by RealDWG, without applying a depth range.
- HInputHandlerOptions::m_listRegAppNames
Used to limit the number of applications from which metadata is reported.
The current DWG importer imports all metadata available.
Service Pack 20.32
Library compatibility information
Library name | Version | Windows | Linux | OS X | Notes |
DGN Direct |
3.8.1 |
yes |
no |
no |
|
DWF Toolkit |
7.7 |
yes |
no |
no |
|
HOOPS Exchange |
7.2 |
yes |
yes |
no |
|
HOOPS Publish |
7.2 |
yes |
no |
no |
|
.NET Framework |
4.0 |
yes |
no |
no |
v4.5 required for wpf_image
v4.5 required for WPF over Remote Desktop |
Parasolid |
23.0 |
yes |
no |
no |
|
Qt |
4.4.1 |
yes |
yes |
yes |
|
RealDWG |
2013, 2014, 2015 |
yes |
no |
no |
2013 and 2014 use vc10 2015 uses vc11 |
SketchUp |
SDK v7 |
yes |
no |
no |
|
New features and enhancements
- Performance of view-dependent vertex markers (splat-rendering using filled circles and filled squares) has been improved in the DirectX 11 driver. See section 2.8.2.1 of the Programming Guide for details about vertex markers.
Service Pack 20.31
Library compatibility information
Library name | Version | Windows | Linux | OS X | Notes |
DGN Direct |
3.8.1 |
yes |
no |
no |
|
DWF Toolkit |
7.7 |
yes |
no |
no |
|
HOOPS Exchange |
7.2 |
yes |
yes |
no |
|
HOOPS Publish |
7.2 |
yes |
no |
no |
|
.NET Framework |
4.0 |
yes |
no |
no |
v4.5 required for wpf_image
v4.5 required for WPF over Remote Desktop |
Parasolid |
23.0 |
yes |
no |
no |
|
Qt |
4.4.1 |
yes |
yes |
yes |
|
RealDWG |
2013, 2014, 2015 |
yes |
no |
no |
2013 and 2014 use vc10 2015 uses vc11 |
SketchUp |
SDK v7 |
yes |
no |
no |
|
New features
- Nested selections are now supported, which enhance performance during collision detections in scenes with multiple moving objects.
- On 3D PDF export, there are two new fields on HOutputHandlerOptions that allow the developer to specify user data which can be used to name entities in PRC when the PRC is built from a scene graph.
Functional changes
- When exporting 3D PDFs via HOOPS Publish, you must now specify the absolute path of the HOOPS Publish 'resource' directory. Not specifying this path when exporting to pdf via HPublishPDFExporter::Export or similar methods will result in a return value of HFileIOResult::HIO_Fail.
Service Pack 20.3
Library compatibility information
Library name | Version | Windows | Linux | OS X | Notes |
DGN Direct |
3.8.1 |
yes |
no |
no |
|
DWF Toolkit |
7.7 |
yes |
no |
no |
|
HOOPS Exchange |
7.2 |
yes |
yes |
no |
|
HOOPS Publish |
7.2 |
yes |
no |
no |
|
.NET Framework |
4.0 |
yes |
no |
no |
v4.5 required for wpf_image
v4.5 required for WPF over Remote Desktop |
Parasolid |
23.0 |
yes |
no |
no |
|
Qt |
4.4.1 |
yes |
yes |
yes |
|
RealDWG |
2013, 2014, 2015 |
yes |
no |
no |
2013 and 2014 use vc10 2015 uses vc11 |
SketchUp |
SDK v7 |
yes |
no |
no |
|
New features
- Eye-dome lighting is now available.
- The 3D PDF exporter can now handle per-face visibility and color information during export
- HIC_Show_Current_Near_Limit and HIC_Show_Camera_Near_Limit have been added in order to show the near limit in immediate mode
Functional changes
Service Pack 20.21
Library compatibility information
Library name | Version | Windows | Linux | OS X | Notes |
DGN Direct |
3.8.1 |
yes |
no |
no |
|
DWF Toolkit |
7.7 |
yes |
no |
no |
|
HOOPS Exchange |
7.2 |
yes |
yes |
no |
|
HOOPS Publish |
7.2 |
yes |
no |
no |
|
.NET Framework |
4.0 |
yes |
no |
no |
v4.5 required for wpf_image
v4.5 required for WPF over Remote Desktop |
Parasolid |
23.0 |
yes |
no |
no |
|
Qt |
4.4.1 |
yes |
yes |
yes |
|
RealDWG |
2013, 2014, 2015 |
yes |
no |
no |
2013 and 2014 use vc10 2015 uses vc11 |
SketchUp |
SDK v7 |
yes |
no |
no |
|
Service Pack 20.20
Library compatibility information
Library name | Version | Windows | Linux | OS X | Notes |
DGN Direct |
3.8.1 |
yes |
no |
no |
|
DWF Toolkit |
7.7 |
yes |
no |
no |
|
HOOPS Exchange |
7.2 |
yes |
yes |
no |
|
HOOPS Publish |
7.2 |
yes |
no |
no |
|
.NET Framework |
2.0 |
yes |
no |
no |
v2.0 required for core functionality
v3.5 required for WPF GUI
v4.5 required for WPF over Remote Desktop |
Parasolid |
23.0 |
yes |
no |
no |
|
Qt |
4.4.1 |
yes |
yes |
yes |
|
RealDWG |
2013, 2014, 2015 |
yes |
no |
no |
2013 and 2014 use vc10 2015 uses vc11 |
SketchUp |
SDK v7 |
yes |
no |
no |
|
New features
- A new point cloud API is available for the HOOPS/OOC module. See OOC Programming Guide and Reference Manual.
- New operators HOpSelectAreaOOC and HOpSelectPolygonOOC are available for operating on OOC data
- A new vc11 project for HIO DWG2 has been created based on RealDWG 2015
- All 3D PDF exports are now subject to a new field called HOutputHandlerOptions::m_lineFuseThreshold. This option is meant to increase performance in 3D PDF models with a large number of line segments. See the HOOPS Publish Programming Guide for details.
- All 3D PDF exports are now subject to a new field called HOutputHandlerOptions::m_lineFuseThreshold. This option is meant to increase performance in 3D PDF models with a large number of line segments. See the HOOPS Publish Programming Guide for details.
- "pixel" and "buffer" depth peeling algorithms are now supported on the OpenGL2 driver
- The selection heuristic related selection limit has a new special function when it is set to -1. It will cause the selection algorithm to return the first match it finds, even if there is a possible better match that could be found if it searched more extensively.
Functional changes
- The SketchUp importer project, .hio file, and related environment variable have had '2013' removed from their names.
Service Pack 20.11
Library compatibility information
Library name | Version | Windows | Linux | OS X | Notes |
DGN Direct |
3.8.1 |
yes |
no |
no |
|
DWF Toolkit |
7.7 |
yes |
no |
no |
|
HOOPS Exchange |
7.1 |
yes |
yes |
no |
|
HOOPS Publish |
7.1 |
yes |
no |
no |
|
.NET Framework |
2.0 |
yes |
no |
no |
v2.0 required for core functionality
v3.5 required for WPF GUI
v4.5 required for WPF over Remote Desktop |
Parasolid |
23.0 |
yes |
no |
no |
|
Qt |
4.4.1 |
yes |
yes |
yes |
|
RealDWG |
2013 and 2014 |
yes |
no |
no |
|
SketchUp |
SDK v7 |
yes |
no |
no |
|
Functional changes
- Visual Studio 2013 projects now require Update 1
- Visual Studio 2012 projects now require Update 4
Service Pack 20.1
Library compatibility information
Library name | Version | Windows | Linux | OS X | Notes |
DGN Direct |
3.8.1 |
yes |
no |
no |
|
DWF Toolkit |
7.7 |
yes |
no |
no |
|
HOOPS Exchange |
7.1 |
yes |
yes |
no |
|
HOOPS Publish |
7.1 |
yes |
no |
no |
|
.NET Framework |
2.0 |
yes |
no |
no |
v2.0 required for core functionality
v3.5 required for WPF GUI
v4.5 required for WPF over Remote Desktop |
Parasolid |
23.0 |
yes |
no |
no |
|
Qt |
4.4.1 |
yes |
yes |
yes |
|
RealDWG |
2013 and 2014 |
yes |
no |
no |
|
SketchUp |
2013 |
yes |
no |
no |
|
New Features and enhancements
- 3DGS - A new option "follow references" has been added to Begin_Contents_Search"
- 3DGS - In Set_Rendering_Options, new depth peeling algorithm options "buffer" and "pixel" have been added
- HIO - Text from a Visualize scene graph can now be exported to PDF
- HIO - An importer for SketchUp is now available for Windows platforms
Functional changes
- MVO - For Linux platforms, the MVO library is now delivered as a .so file instead of a .a file
Major Release 20.00
Library compatibility information
Library name | Version | Windows | Linux | OS X |
DGN Direct |
3.8.1 |
yes |
no |
no |
DWF Toolkit |
7.7 |
yes |
no |
no |
HOOPS Exchange |
6.1 |
yes |
yes |
no |
HOOPS Publish |
6.1 |
yes |
no |
no |
.NET Framework |
2.0 |
yes |
no |
no |
Qt |
4.4.1 |
yes |
yes |
yes |
RealDWG |
2013 and 2014 |
yes |
no |
no |
New features and enhancements
3DGS
- A new DirectX11 driver is now available - "dx11" - This is a shader-based 3D driver for Windows Vista, Windows 7, and Windows 8. Usage of the DX11 driver can result in up to 35% memory reduction vs the DX9 driver, with the same 3D model and graphics card. Agnostic drivers, covered below, help address the issue of HOOPS automatically leveraging DX11 if the graphics hardware supports it.
- Agnostic driver aliases are now available. An agnostic driver will allow 3DGS to automatically choose the most appropriate 2D/3D API driver, as well as a specific API version, based on the capabilities of the execution environment.
Double-precision function variants now supported.
Prior to v20, 3DGS simply supported storage of double-precision graphical primitive information. The double-precision information would be cast to single-precision, potentially producing incorrect rendering results for arbitrary double-precision data. 3DGS now provides full graphical support of double-precision information by maintaining the double-precision information within the rendering pipeline (through camera/object transforms), which ensures accurate rendering of the double-precision graphical information. Refer to Section 2.1.2 of the Programming Guide for usage information.
- A new 'view volume' culling option in Set_Heuristics is available. This allows one to specify a view volume to use for culling.
- A new 'maximum distance' culling option in Set_Heuristics is available. This will cull anything that lies beyond the specified distance.
- A new 'remove duplicate lines' hidden line removal option sub-option in Set_Rendering_Options is available. This is used in the presence of patterned lines only, and prevents inconsistent patterning.
- The performance and visual fidelity for point-clouds loaded via the OOC module has been significantly improved. Point cloud data will generally load and unload much more quickly, and the overall visual result will be smoother, with much better priority given to point-data within the current camera view.
- Generation of capping/cutting geometry between cutting planes and polyhedra has been optimized and is up to 3x faster.
- Collision-detection related APIs, including Compute_Selection_By_Shell() and Compute_Selection_Distance_By_Shell(), have been significantly optimized and operate up to 10x faster.
- Segment-tree-level or segment-level capping geometry will now be correctly generated and drawn when the 'static' model Heuristic is set. (Previously, capping geometry had a limtation where it was not fully supported when 'static' model was being used.)
- Minor performance improvements have been made to a wide variety of internal algorithms and scene-graph traversal logic.
- The built-in memory manager has been improved to more optimally recycle unused allocations, resulting in lower memory for many scenarios.
- A variety of internal data structures, including segments and polyhedra primitives, have been restructured to be lighter weight.
- In the shader-based drivers, support for Set_Priority has been added for include links.
- HIO - The original RealDWG HIO component has been refactored into a more robust interface called HIO DWG2. The old component is considered deprecated. For more information, see the HOOPS RealDWG Integration Guide.
- Platforms - Support for Microsoft Visual Studio 2012 has been added. Prebuilt VS2012 libraries for 32 and 64-bit are provided. New 'vc11' projects have been added for each subcomponent, tutorial, and demo.
Debug libs and binaries are now provided in the standard packages.
The addition of debug libs/binaries can make it easier for developers to debug 3DF-based applications. (Previously, debugging 3DF-based applications typically required recompiling debug variants of the 3DF components.)
Project changes
- For the Windows and OSX platforms, top level workspaces which rebuild all of the 3DF components are no longer present. Instead, there are now top-level 'samples' workspaces which build the samples and tutorials. These are configured to build using the existing Release/Debug libs. (Previously, they had dependencies that would trigger re building of ALL the 3DF sub-components being used.) You should not have to rebuild any of the HOOPS/3DF sub-components unless you've customized the source code, or you are building on an unsupported platform/compiler configuration. Project/makefiles and source code for each 3DF sub-component are still provided in their respective /dev_tools sub-directories, with the exception of HOOPS/3DGS source. (For more information about HOOPS/3DGS source, see the section below on Obfuscated Source code.)
- There is a new DWG2 project for RealDWG 2014. The project is identical to the old DWG2 project, except that it links against RealDWG 2014 instead of RealDWG 2013. The project is only for Visual Studio 2010, since RealDWG does not support other platforms.
Functional changes
- 3DGS - Licensing behavior has changed (Refer to the Licensing section of the Getting Started Guide for full details.)
- You must now specify a valid Visualize license in your application code in order to use the product. (Previously, you could use the product without specifying a license, and a dialog would popup and display a license warning.)
- When setting a license via Define_System_Options, the license portion of the string must now be contained inside back-ticks, such as ::Define_System_Options("license = `my_license_string`")
- Setting a license via the HOOPS_SYSTEM_OPTIONS enviornment variable is no longer supported.
- 3DGS - The default 'maximum extent' and 'hard extent' culling behavior has changed when considering shell-vertices, where 'maximum extent' and 'hard extent' culling are now disabled by default in order to improve overall culling performance. This change can result in large-shell vertices being culled, even though they may exceed the culling value. If it is desirable to have shell-vertices still respond to the extent culling values, you must set a new culling Heuristic, called 'extent detail'.
- 3DGS - The cocoa_opengl driver has been renamed 'opengl'
- 3DGS - OSX Carbon support has been dropped in favor of OSX Cocoa. A cocoa_simple sample application is now provided.
- 3DGS - All PShow_net routines now return a bool value instead of void. true indicates the routine found the existence of the requested attribute.
- MVO - The SKP importer is no longer supported, as the SketchUp C++ SDK has been deprecated by Google. The source is left in the package for use as-is. We will be reviewing the new SDK that Trimble has recently begun to offer, and consider adding official SKP support in a future v20 Service Pack.
- Microsoft Visual Studio 2008 support is no longer provided.
- Windows XP support is no longer provided. For more information on product lifecycle information, see the Windows lifecycle fact sheet.
- Windows static libraries are no longer provided
- The MFC AppWizard and the Microsoft xbap_simple application are no longer provided.
- The datasets directory has been removed from the main Visualize package in order to reduce the package size, and are now available separately on the Visualize downloads page in the Developer Zone.
Solaris support is no longer provided.
Oracle's Solaris distribution is now primarily intended for use in back-end database/cloud-server hardware, rather than for CAD/CAM/CAE engineering workstations. Customers who wish to continue utilizing HOOPS/3DF on Solaris workstations can continue to use v19.X. Customers with Readable Source Code License agreements may compile HOOPS/3DF v20 libraries from source for use on Solaris, in order to maintain their own Solaris support.
Obfuscated 3DGS source is no longer provided.
3DGS source is no longer provided in obfuscated form. If you are interested in HOOPS/3DGS source code because you have a compelling reason to recompile the library, and do not already have a HOOPS/3DGS Readable Source Code License Agreement, please contact Tech Soft 3D and we will review your request. However, note that with the exception of trying to build on unsupported compiler/platform configurations, there is no need to rebuild, since Debug libraries are now provided. Additionally, the 3DGS component is now built from human-readable source, which means that readable call stacks are available during debugging. While call-stacks are not a substitute for a reproducible test-case when a Problem is encountered, they occasionally provide helpful clues for Problems that are difficult to reproduce.)
- QT - The HOOPS/QT widget is supported on Windows and Linux. Support for HOOPS/QT under OSX is still being developed.
Service Pack 19.35
Functional changes
- 3DS Max and Microstation plugins have been removed from the package and are now accessed on the Visualize downloads page on the Tech Soft Developer Zone.
- 3DGS - A new rendering option "randomize vertices" is available. When this option is enabled, vertices that are compiled into display lists will be inserted in random order. This is intended for a more uniform point distribution when applying vertex decimation to non-randomized data.
- ACIS Part Viewer has been removed.
Service Pack 19.34
Functional changes
- MVO - HOpObjectClash function is now virtual so it can be an override function when using C#
- MVO - The option m_bAVIShowCompressionDialog has been added to HOutputHandlerOptions. When set to false, the option disables the compression setting dialog when exporting an AVI file. Dialog appears if the option is set to true - this is the default behavior.
- HIO - HOOPS Visualize now uses HOOPS Exchange and HOOPS Publish version 6.0.
Service Pack 19.32
New features and enhancements
- 3DGS - New rendering option for simple shadow "fast bounding". If set, this will use an available segment bounding rather than calculating a more accurate but time-consuming bounding.
Service Pack 19.30
New features and enhancements
Deprecations
- MVO - VRML import support has been deprecated. The functionality is now provided as-is.
Service Pack 19.28
Functional changes
HIO - Visualize v19.28 requires the HOOPS Publish v5.30 libraries for export via Publish.
Service Pack 19.26
Functional changes
3DGS - iOS now supports hardware-accelerated simple shadows.
Service Pack 19.25
New features
- HIO - The HIO_DWG integration now includes an overhauled 'HIO_DWG2' implementation. Developers who are relying on the curent HIO_DWG should consider the HIO_DWG2 module as a BETA. (The goal is to finalize it in v20.) The new module is located in /dev_tools/hoops_hio/hio_dwg2. If you are interested in testing/using the module, you must manually rebuild it using the provided project files.
Functional changes
- For users of Visual Studio, Visualize now requires VS2008 SP1 or VS2010 SP1
- The previous iOS HOOPS viewer has been replaced by ios_simple
- 3DGS - The iOS libraries now support iOS v5.X+
- 3DGS - Set_Polygonal_Clip_Region now supports concave regions.
- MVO - Printing-to-scale is now supported. This is activated by setting a 'scaling factor' for the model. Using the scaling factor, HOOPS can determine that '1 unit in world space equals 1 cm', and the hardcopy result will physically match the specified scale. Refer to Section 4.3.2 of the HOOPS/MVO Programming Guide for more information.
- MVO - The HOutputHandlerOptions::m_bPrcCompressTessellation option has been added, which sets whether to compress tessellation data when exporting to PRC format. See the HIO_Publish programming guide for more info.
- MVO - The HOutputHandlerOptions::m_ePrcBrepCompression option has been added, which sets the compression level for any BRep data when exporting to the PRC format. See the HIO_Publish programming guide for more info.
Service Pack 19.23
Functional changes
3DGS - ORU and WSU Behavior - Before version 19.23, there was a bug which caused any attributes that handle 'size-units' to behave incorrectly. Specficialy, ORU units were behaving as WSU units, and vice versa. This bug was corrected in 19.23, and therefore developers who were working around it need to remove their workaround by reversing their usage of ORU and WSU wherever they are used.
Maintenance Release 19.17
Enhancements
- HIO - The HIO_Exchange module now imports non-PMI 2D text, and maps it to HOOPS/3DGS scene-graph 'text' primitives.
Language-specific changes
- For C# and Java, the HOOPS/MVO enums HFileInputResult and HFileOutputResult have both been changed to HFileIOResult. This enum is returned by methods such as HBaseModel::Read and HOutputHandler::FileOutputByKey.
Maintenance Release 19.16
New features and enhancements
- HIO - The HIO_Exchange module now imports CAD 'views' information from the original CAD file, and maps it to HOOPS/MVO MarkupManager information. HIOConnector support has also been added to provide a mapping between HOOPS/3DGS and PRC entitites. Refer to the HIO_Exchange documentation for more information.
Functional changes
- HIO - HIO_Exchange and HIO_Publish integration now supports HOOPS Exchange v5.0, and HOOPS Publish v5.0.
- HIO - HIO_DWF supports DWF Toolkit v7.7.
Maintenance Release 19.14
New features and enhancements
- HIO - We've introduced support for integration with HOOPS Publish via the HIO_Publish module. This integration with our sister product allows you to easily export your HOOPS/3DGS scene-graph information, a subset of MVO animation info, and MVO PMI info to 3D-PDF files. Please see the HIO_Publish documentation for more information.
Functional changes
Deprecations
- HIO - The HPDFOptions class has been removed since it longer applies when exporting a PDF. The only extra attributes it provided were related to exporting a 3D-PDF, and such functionality is now handled via the HIO_Publish integration.
Minor Release 19.10
New features and enhancements
MVO - The Material Library offers a way to import, maintain and manipulate our new collection of sophisticated materials via the HMaterialLibrary class.
MVO - There are new classes that help facilitate the insert of PMI information into the HOOPS 3DF database. Learn more about this feature in the programming guide discussion on PMI Classes.
MVO - HBaseOperator and HEventInfo now support multi-touch events. Refer to Section 12.7 of the HOOPS/MVO Programming Guide for more information.
HIO - Support for 64-bit HIO_DWF and HIO_DGN was added.
HIO - HIO_DWG and HIO_DGN modules produce more optimized HOOPS scene-graphs.
When DWG/DGN files are being loaded by the HIO modules, an 'optimize' step has always been performed in order to produce a more efficient scene graph. Despite the optimize step, DWG/DGN files could still end up with 1 segment per DWG/DGN 'entity' (i.e. 1 polyline per segment), which in turn could translate to an extremely large amount of HOOPS segments, thus requiring excessive memory and preventing reasonable rendering performance. We have enhanced the default HIO_DWG and HIO_DGN import behavior to now store user-data on a per-geometry basis rather than in segments. This allows the optimize setep to produce much more optimal HOOPS scene graphs, depending on the contents of the DWG/DGN file.
It is important to note that any application code which was relying on a '1 segment per entity' scene-graph (i.e. query/selection/highlighting code), that code may need to be restructured to work with the default HIO_DWG/HIO_DGN scene-graphs, as a result of there being many entities per segment.
While we strongly encourage you to rely on the new default scene-graph and make any necessary code changes, in the interests of backward compatibility the following option has been added to HInputHandler Options, to allow you to revert to the previous, suboptimal scene-graph creation logic for m_bLegacyOptimize:
- false (the new default behavior), then we perform an Optimize_Segment_Tree with the new options to localize/push user options onto each piece of geometry in a segment (Open_Geometry, Set_User_Options, Close_Geometry), thereby allowing for a more optimal scene graph.
- true (the legacy behavior), then we perform the existing Optimize_Segment_Tree which will leave user options in the segments representing DWG and DGN entities. This can result in extremely segment-heavy (suboptimal) scene-graphs.
3DGS - Support has been added for the iOS platform.
Support has been added for the iOS platform. All of the HOOPS/3DGS, HOOPS/MVO, and HOOPS/Stream APIs are available and behave in a platform-independent fashion, consistent with HOOPS' design as a platform-independent API. (A few rendering caveats related to the Beta status are covered in the OpenGL2 section of the Device Guide). Important HOOPS/3DGS-specific notes:
- iOS 4.X is supported on iPad, iPad2, and iPhone4 hardware, using the Xcode 4.0+ toolset from Apple.
- The 3DF libraries are provided via a single static library which contains HOOPS/3DGS, HOOPS/MVO and HOOPS/Stream, and located at [hoops]\dev_tools\hoops_ios\lib (both the native ARM library for the actual devices, as well as the x86 emulator library are provided)
- A sample HOOPS-based iOS application has been provided, and its source/project is located in [hoops]\demo\ios\IOSHoopsViewer. Please review the readme.txt file before creating your own HOOPS-based iOS prototype, or customizing the existing demo.
- OpenGL2 is the only supported driver for the iOS platform
Developers wishing to prototype HOOPS-based iOS applications should first become familiar with iOS development and the numerous platforms constraints, such as limited screen real estate, reduced CPU/GPU power compared to desktops/laptops, limited amount of flash-memory, lack of a harddrive, absense of a conventional file system, side-loading of files, GUI application development, and so on. Key points to consider when developing HOOPS-based applications for iOS (or any platform for that matter) include:
- Scene-graph organization: Ensuring that you have a well organized (optimized) scene graph will reduce memory usage, thereby allowing you to load larger models as well as boost performance. See Segment Organization for further details.
- Rendering settings: Using the appropriate rendering settings for items such as 'display lists', 'polygon handedness' and 'backplane culling' will help ensure maximum performance. See Rendering Performance for further details.
- Fixed framerate: We have been encouraging developers to prototype and incorporate this technique for a few releases now, and it will probably be particularly important to leverage under iOS. This technique allows you to set a specific framerate (along with very useful extent-culling), thereby ensuring a specific framerate independent of the model complexity. HOOPS/MVO provides high level support for fixed-framerate, while the underlying HOOPS/3DGS capability of time-bounded updates provides core support.
- Memory usage: Your application logic needs to manage/track its memory allocation/usage (it's not done automatically by the Operating System), and your application's usage of any sub-components such as HOOPS has the same needs. For example, if you load 'too large' a model(s) into HOOPS, relative to the available system memory, HOOPS will simply continue to populate its scene graph and the required memory allocations will eventually fail, resulting in an ungraceful exit/crash. While this is the situation on any Operating System with finite memory, the 'memory wall' on iOS devices is much closer than on, say, a 64-bit OS with 4GB of memory. Please refer to the Programming Guide entry on memory for some guidelines on memory-usage tracking and memory conservation.
All HOOPS/3DF .dll files are digitally signed using the certificate authority VeriSign. Signing these files with a key from VeriSign allows them to be fully identified as Tech Soft 3D DLLs.
Functional changes
3DGS - 13121 - New 'clearance' option for ::Compute_Selection_By_Shell_With_Options
::Compute_Selection_By_Shell_With_Options previously only supported a "tolerance" value, which determines how far two shells can be penetrating before they are considered clashing. An additional "clearance" option is now supported, which defines how far a shell can be away from the input shell and still be regarded as clashing. Refer to the
Programming Guide entry for more information.
3DGS - 15178 - Method to query hardware for support of multiple depth peel layers.
::Optimize_Segment_Tree supports the following new options:
- process includes = [off|on] - When this is set includes will be followed and whatever other actions are specified will be applied to them. This does nothing if "expand includes" was also specified.
- localize matrices = [off|on] - Certain geometries can have a local matrix. When specified, matricies will be moved onto the geometry
when possible and if it appears heuristically desirable.
- New 'localize' suboption for 'preserve user options' [localize] - The "localize" option allows user options to be moved on to geometry this can be used with the "merge" option and can counter act some of the negative effects of this option.
- reorganize [= (option, option, ...)] - New options include:
- attributes [=on|off] - When enabled, optimize will reorganize based on attributes. This is almost always preferable to 'color' and is the recomended setting.
- segment names [=discard|record|sequence]
- The "discard" option will remove all segment names from the data.
- The "record" option will add a user option "ssn=<SEGMENT NAME>" to each segment. When used
with localized user data, this can reduce model complexity while preserving information encoded intothe segment names.
- The "sequence" option renames all segments with a sequential number. This can aid debugging or remove model context that is undesirable to expose.
HIO - Change to handling of DWG drawing order information.
The DWG import logic has also been enhanced to map any drawing order information over to z-values. This further enables the 'optimize' step to produce a more efficient scene graph, resulting in more entities per HOOPS segment (as opposed to the extremely suboptimal 1 entity per segment) The following option has been added to HInputHandler Options to allow you to revert to the previous logic for m_bDwgDepthRangeDrawOrder:
- false (the new default behavior), then we offset (2D) geometry which requires a draw order along the z-axis appropriately to achieve the same effect, thereby allowing for a more optimal scene graph.
- true (the legacy behavior), then we use depth range at the segment-level, to preserve the draw order for those 2D entities which require it. This prevents segments from being merged during the optimize process.
HIO - DWF Optimizations and changes to the default scene-graph
The HIO_DWF module handles loading DWF files which can contain both 2D and 3D subfiles. We have rewritten the 2D-DWF import logic so that it produces a much more optimized and logical scene graph.
- All layer segments live under the segment "layers" (there is a non-layer segment for geometry that does not reside in a layer)
- Layer segments have a URI encoded name which is set to the name of the layer (if available). If a layer name is not available, it is named with H_FORMAT_TEXT("layer #06d", number);.
- The segments dwf_information/layer_info and dwf_information/layer_info_deprecated are obsolete and will not be created. Use HC_QShow_Existence to determine if a layer exists. Use HC_Begin_Contents_Search in the "layers" segment to list the layers.
- Each layer has a user options attribute with the name such as layer name = `uri-encoded-layer-name`.
- The segment tree under each layer is sorted by attribute. A segment path, named by the attributes, defines the attribute state. For example, layer #000001/edge line weight 1.0 oru/color 1 0 0/etc....
- URLs and object IDs are now set directly on the geometry as user options. The URL user options have the format url = (uri-encoded-url1, uri-encoded-url2, ...).
- The link_info segment now has one segment per URL. Each of these segments contains geometry references to all geometries which belong to the URL. There are two User_Options set in each URL segment: min and max. Each are three int or float values representing the boundaries of the URL. For example, "min = (1, -2.5, 0), max = (5.5, 2.5, 0)".
- Depth range is no longer used to maintain draw order. The draw order now relies on z-values. As such, each layer has a translation matrix defining the draw order. Each layer has a priority set defining the draw order which would be honored by the "HSRA = priority" rendering option. The z-range is 1/3rd of the diagonal of the 2D drawing (not including the background and non-layer segments).
- For 2D drawings, all have background "paper" (you can disable the background paper by deleting or hiding the "background" segment). The camera is set to orthographic and looks down the -z axis with the +y axis being 'up'. Additionally, the pan operator is set.
HIO - The HIO modules that require HOOPS 3DX are now dependent on 3DX v4.1 See our supported file formats for more details.
HIO - The HIO_DGN module has been updated to support a newer version of the DGNDirect 3rd Party Toolkit: Teigha 3.04.01
Deprecations
- Support for importing the .iv file format has been dropped. Import logic was initially provided as a proof-of-concept to assist developers evaluating HOOPS, and only imported a limited set of .iv files. Developers who wish to import the .iv format should review the scene-graph creation guidelines to build their own import logic, and can contact Develper Support with any questions.
Major Release 19.0
New features and enhancements
MVO - HUtility::TwoPassPrint can handle printing arbitrarily large documents and adds margin support.
Stream - A new opcode, TKE_Conditional_Action, was added to support the new Conditional Actions feature. You can set a conditional action on a segment via Set_Conditional_Action.
Stream - Two new opcodes, TKE_Named_Style, and TKE_Named_Style_Def, were added to support the named styles features. Key HOOPS/3dGS functions associated with this feature include: Define_Named_Style and Named_Style_Segment.
Stream - The TKE_Image opcode has been modified to support the insertion
of compressed image formats such as JPEG, TARGA and DXT.
Stream - The TKE_Rendering_Options opcode has been modified to support the new rendering option for join
cutoff angle for lines and edges.
Stream - The TKE_Text opcode has been modified to support a new
text region option called fitting.
Stream - The TKE_Texture opcode has been modified to support several
new features including a camera
option for skyboxes.
HIO - We've introduced support for integration with HOOPS Exchange. This integration with our sister product will give you access to the powerful data translation capabilities that can import 15 MCAD formats and export to 3D PDF.
HIO - During the DGN import process, if you want to import not just the current model but all models, then you can enable the new HInputHandlerOptions::m_bDGNImportAllModels flag.
HIO - We now support SketchUp 8.
Platforms added
Functional changes
3DGS - 5287 - Separate elements of a texture definition can now have different parameterization sources. For example, when you apply a base texture and decal texture to a surface, the decal texture can have a different parameterization source than the base texture.
3DGS - 8577 - In ::Show_Device_Info, you can now query the hardware for support of depth peel layers by passing the option "depth peeling layers".
3DGS - 10548 - In ::Define_Texture, you can use the new option "transform override" to apply only transforms specified explicitly in the texture definition. Transforms defined via ::Rotate_Texture() or ::Translate_Texture() will ignored.
3DGS - 10736 - In ::Set_Driver_Options, there is a new option for DX9 and OpenGL2 drivers called "gpu resident". When this option is enabled, all image data will be cached on the hardware when possible.
3DGS - 11647 - For the functions ::Filter_Circumcuboid and ::Filter_Circumsphere, you can now pass in additional parameters which affect the calculation of the bounding volume.
3DGS - 11699 - In ::Show_Device_Info, you can now query the hardware to determine the maximum texture size by passing "max texture size".
3DGS - 11716 - For skyboxes, there is a new option in ::Define_Texture called "camera" that lets you specify which segment's camera should be used for rendering a skybox. To learn more about skyboxes, please read the HOOPS/3dGS Programming Guide section on Skyboxes and Cube Maps.
3DGS - 11760 - In ::Set_Driver_Options, you can now pass an image key to the "use window id" option.
3DGS - 11812 - HOOPS 3DF now supports the insertion of compressed images via the ::Insert_Compressed_Image function. Supported formats include JPEG, TARGA, DXT1, DXT3 and DXT5.
3DGS - 11828 - In ::Insert_Image, if you enable the "discard" option, HOOPS will discard image data after it has been loaded into video memory.
3DGS - 11831 - When tiling images, you can ask HOOPS to treat the pixels around the border of a texture as if they were completely transparent. This will allow clamped textures to not affect areas of geometry beyond their domain of definition. This feature can be enabled by setting the "drop" suboption for "tiling" in ::Define_Texture.
3DGS - 11832 - You can now insert grayscale images via ::Insert_Image by enabling the "grayscale" option.
3DGS - 12109 - For the DX9 and OpenGL2 drivers, you now have the ability to enhance the rendering pipeline by allowing developers to inject custom code into the pixel shader. Developers can define a custom shader using the ::Define_Shader function -- DEPRECATED --.
3DGS - 12111 - HOOPS has now added the ability to associate a name with a style via the ::Define_Named_Styles function. Once you have defined a named style, you can then apply styles to segment via the name using the ::Named_Style_Segment function.
3DGS - 12163 - You can now set default line styles and glyph definitions via the ::Set_Default_Line_Styles and ::Set_Default_Glyphs functions, respectively.
3DGS - 12211 - ::Optimize_Segment_Tree now merges shells that have vertex level attributes such as those set via ::MSet_Vertex_Parameters.
3DGS - 12283 - A variety of legacy function have been deprecated and moved to a separated header. Please see the Routines Deprecated section for more information.
3DGS - 12355 - The following PShow functions have been added for textures, glyphs and patterns: ::PShow_Net_Texture, ::PShow_Net_Glyph and ::PShow_Net_Line_Style.
3DGS - 12594 - In ::Optimize_Segment_Tree, a new option "presever user options" has been added. When this setting is enabled, segments with user options are set remain as segments, and will not be collapsed in any way.
3DGS - 12761 - In ::Set_Rendering_Options, you can determine the maximum angle between two segments in a line or edge for which a mitered join will be drawn by setting the new "joint cutoff angle" option.
3DGS - 12790 - There is a new system option "dpi scale factor" that allows you to control the dots per inch when a HOOPS scene is rendered.
3DGS - 12922 - In ::Define_System_Options, there is a new setting "automatic geometry boundings" that allows you to suppress bounding box generation during geometry insertion.
3DGS - 12947 - Conditional actions are a new feature that allows you to associate a specific condition with a specific action. Currently, this feature allows you to determine if segment should be culled. Use the ::Set_Conditional_Action to take advantage of this new capability.
3DGS - 13068 - The ::Compute_Subshell function can now take the key to a mesh as its source.
3DGS - 13494 - In ::Set_Text_Region, there is a new option "fitting" that lets HOOPS know how to horizontally space your text. If you have text that is not transformable, you may want to override the default behavior and set the fitting option to "off".
MVO - The location of the ATL cab file in HTML file output has moved to: developer.techsoft3d.com/downloads/HOOPSATL/hoopsatlcontrol.cab.
Deprecations
3DGS - DK, DQ and DQK variants have been removed and are no longer supported.
3DGS - The "purge memory" Heuristic option has been removed.
3DGS - The following functions have been removed and are no longer supported:
- PShow_Net_Driver
- Set_Driver
- Set_Metafile
- Set_Pixel_Array
- Show_Driver
- Show_Net_Driver
- UnSet_Driver
3DGS - Most of the K, Q and QK variants of the HOOPS/3dGS functions have deprecated. If you are using any of these
functions in your code, please check the full reference index to see
if they have been deprecated. If your code uses any of the deprecated functions, you can successfully compile
against the latest version of HOOPS by including the header hc_legacy.h in your files.
Note that we recommend that you review your code to determine if some minor changes can be made so that your
application uses the support non-variant version of the function. For example, the functions with K variants now return
an key.
3DGS - Most Show_Net and Show_One_Net functions have been deprecated (if your Show_Net function
cannot be found in the full reference index, it has been deprecated). If you
need to use these functions in your code, you can include the header hc_legacy.h
in your files to successfully compile your code with the latest version of HOOPS 3DF. However, we suggest
that you carefully review your code and use a PShow function.
HIO - The U3D file format is no longer supported. However, the U3D format is still supported via HIO 3DX. See our supported file formats for more details.
Platforms no longer supported
Build and linkage changes
3DGS - The standalone window events handling functions have been moved to a new header, hc_standalone.h. If you utilize these functions, please see the events reference index for more information on how to properly upgrade to HOOPS Visualize 19.00.
Interface changes
3DGS - Functions which had K variants now return a key.
Behavior changes
3DGS - When you use ::Define_Texture to create a new texture in HOOPS, the "down sampling" setting will default to "no".