HOOPS Visualize Desktop 2026.8.0
Overview
HOOPS Visualize 2026.8.0 delivers a more robust foundation for high-performance desktop and mobile engineering applications. This release expands data accessibility with enhanced point cloud workflows, modernizes security standards through automated SBOM reporting, and optimizes the user experience for complex architectural models. With a modernized deployment architecture, Visualize 2026.8.0 ensures seamless distribution and industry-leading rendering performance across all major platforms.
What’s New
- Enhanced Point Cloud Workflows: New support for E57 image textures and spherical coordinate conversion makes importing massive datasets faster and more detailed.
- Optimized SketchUp Performance: New in-memory texture handling significantly reduces load times for complex SketchUp models, boosting user productivity.
- Security Transparency: Automated SBOM generation provides the transparency needed to meet modern compliance and security standards effortlessly.
- Simplified Deployment: A new relocatable binary architecture for Linux and macOS ensures your applications install and run correctly regardless of the path.
Technology Updates
Library Compatibility Information
| Library name | Version | Windows | Linux | OS X | Android | iOS | Notes |
|---|---|---|---|---|---|---|---|
| Android NDK | r27 | ![]() |
![]() |
![]() |
![]() |
![]() |
|
| HOOPS Exchange | 2026.8.0 | ![]() |
![]() |
![]() |
![]() |
![]() |
Android support is limited. See the programming guide. |
| HOOPS Communicator HTML Sprocket | 2025.4.0 | ![]() |
![]() |
![]() |
![]() |
![]() |
HC Sprocket only works with Visual Studio toolset 142. |
| HOOPS Communicator Streaming Sprocket (HCA) | 2025.3.0 | ![]() |
![]() |
![]() |
![]() |
![]() |
HC Sprocket only works with Visual Studio toolset 142. |
| .NET Framework | 4.8 | ![]() |
![]() |
![]() |
![]() |
![]() |
Required for Visual Studio v14.2 libraries and samples. |
| .NET Standard | 2.0 | ![]() |
![]() |
![]() |
![]() |
![]() |
Required for Visual Studio 2019 (toolset 142) and 2022 (toolset 143). |
| .NET Core | 8.0 | ![]() |
![]() |
![]() |
![]() |
![]() |
Required for Visual Studio 2022 (toolset 143). |
| Parasolid | 35.1 | ![]() |
![]() |
![]() |
![]() |
![]() |
For iOS platforms, support is limited to 64-bit platforms for the Parasolid Sprockets (hps_sprk_parasolid and hps_sprk_exchange_parasolid). |
| RealDWG | 2023 | ![]() |
![]() |
![]() |
![]() |
![]() |
RealDWG 2023 is only compatible with Visual Studio 2019 (v142 toolchain) |
| RealDWG | 2025 | ![]() |
![]() |
![]() |
![]() |
![]() |
RealDWG 2025 is only compatible with Visual Studio 2022 (v143 toolchain) |
| Qt | 5.12.7 | ![]() |
![]() |
![]() |
![]() |
![]() |
|
| SketchUp | 2026.1 | ![]() |
![]() |
![]() |
![]() |
![]() |
VS2022 (v143) toolset required for the latest SDK version. |
Third-Party Library Updates
| Library | New Version |
|---|---|
| SketchUp SDK | 2026.1 |
Platform Changes
Software Bill of Materials (SBOM): Versioned SBOM artifacts are now being provided in both SPDX 2.3 and CycloneDX 1.6 formats for all customer packages. This enhancement supports transparency, security review, and compliance workflows for our partners. A beta-version of the SBOM is provided in this release in order for partners to test integration into their CI/CD systems.
Improved deployment on Linux and macOS Shipped shared libraries and executables on Linux and macOS now locate their dependencies relative to their own directory, instead of an absolute path recorded at build time. This means the package can be installed anywhere and will still load correctly.
- Linux uses a
$ORIGINRPATH. In earlier releases, the libraries recorded absolute paths from the build machine, which could cause load failures after deployment. - macOS uses an
@loader_pathRPATH. In earlier releases, macOS binaries carried no relative RPATH at all, which could cause load failures after deployment.
See the Linux platform section for deployment details.
- Linux uses a
Upcoming Change Affecting All Platforms: Beginning with HOOPS Visualize Desktop 2027.1.0, planned for release in January 2027, Tech Soft 3D will require C++17 as the minimum supported C++ language standard for building and developing HOOPS Visualize. This change affects customers who compile Visualize-related source code, including source code provided with Visualize distributions such as samples and sandbox applications.
New Features
New Functions / Capabilities
- E57 point cloud import improvements
E57 import through
HPS::v2::PointCloud::File::Importgains the following in this release. See Notes on Point Cloud Files.- Images.
HOOPS Visualize Desktop now reads the 2D images an E57 file declares, alongside the point data it already imported.
HPS::v2::PointCloud::ImportResultsKit::ShowImageInfosreturns oneImageInfoper image, with its guid, scan association, size, pose and camera model.ShowScanGuidsreports per-scan guids the same way, andShowPortfoliopoints to where each image’s pixel data, mask and generated UV texture were published. Images import by default; turn that off or pick your own destination portfolio withHPS::v2::PointCloud::ImportOptionsKit::SetImageImportandSetPortfolio. Projecting points onto an image, or coloring them from it, is still left to the implementer – HOOPS Visualize Desktop just provides the pieces. - Scans in spherical coordinates.
Scans that store their points in spherical coordinates (range, azimuth, elevation), the form some laser scanners write, are now supported.
HOOPS Visualize Desktop draws points in cartesian space only, so these points are converted to cartesian coordinates on import; the resulting point cloud is the same as one imported from a cartesian scan.
In 2026.7.0, such a scan made the import throw an
HPS::IOException; that exception is no longer raised. - Invalid points are skipped. Points a scan flags as invalid, meaning the scanner got no usable measurement for them (no return, or a target out of range), are now dropped. In earlier releases, those points were imported as real geometry, and typically showed up as a cluster at the origin or at the scanner’s maximum range. A scan can therefore import fewer points than it declares.
- Images.
HOOPS Visualize Desktop now reads the 2D images an E57 file declares, alongside the point data it already imported.
API Changes
New API Functions
Added
HPS::v2::PointCloud::ImageInfo(new class) - a single image declared by an E57 file.ImageInfo& SetGuid(UTF8 const& in_guid)bool ShowGuid(UTF8& out_guid) constImageInfo& SetAssociatedScanGuid(UTF8 const& in_guid)bool ShowAssociatedScanGuid(UTF8& out_guid) constImageInfo& SetName(UTF8 const& in_name)bool ShowName(UTF8& out_name) constImageInfo& SetImageName(UTF8 const& in_name)bool ShowImageName(UTF8& out_name) constImageInfo& SetMaskName(UTF8 const& in_name)bool ShowMaskName(UTF8& out_name) constImageInfo& SetTextureName(UTF8 const& in_name)bool ShowTextureName(UTF8& out_name) constImageInfo& SetSize(unsigned int in_width, unsigned int in_height)bool ShowSize(unsigned int& out_width, unsigned int& out_height) constImageInfo& SetProjection(Projection in_projection)bool ShowProjection(Projection& out_projection) constenum class Projection { None, Visual, Pinhole, Spherical, Cylindrical }ImageInfo& SetPinhole(float in_pixel_width, float in_pixel_height, float in_focal_length, float in_principal_point_x, float in_principal_point_y)bool ShowPinhole(float& out_pixel_width, float& out_pixel_height, float& out_focal_length, float& out_principal_point_x, float& out_principal_point_y) constImageInfo& SetSpherical(float in_pixel_width, float in_pixel_height)bool ShowSpherical(float& out_pixel_width, float& out_pixel_height) constImageInfo& SetCylindrical(float in_pixel_width, float in_pixel_height, float in_principal_point_y, float in_radius)bool ShowCylindrical(float& out_pixel_width, float& out_pixel_height, float& out_principal_point_y, float& out_radius) constImageInfo& SetPose(Quaternion const& in_rotation, Vector const& in_translation)bool ShowPose(Quaternion& out_rotation, Vector& out_translation) constImageInfo& UnsetEverything()
HPS::v2::PointCloud::ImageInfoArray(new typedef) -typedef std::vector<ImageInfo, Allocator<ImageInfo>> ImageInfoArrayHPS::v2::PointCloud::ImportResultsKitUTF8Array ShowScanGuids() const- per-scan guids, parallel toShowPointCloudSegments(). E57 imports only.ImageInfoArray ShowImageInfos() const- metadata for every image the imported file declares. E57 imports only, and only when image import is enabled.bool ShowPortfolio(PortfolioKey& out_portfolio) const- the portfolio published images and textures were defined into.
HPS::v2::PointCloud::ImportOptionsKitImportOptionsKit& SetPortfolio(PortfolioKey const& in_portfolio)ImportOptionsKit& UnsetPortfolio()bool ShowPortfolio(PortfolioKey& out_portfolio) constImportOptionsKit& SetImageImport(bool in_state)- enabled by default.ImportOptionsKit& UnsetImageImport()bool ShowImageImport(bool& out_state) const
Functional Changes
- Improved drawing import Drawings from CAD files, such as CATIA CATDrawing sheets, now display with the correct position and scale. When a drawing view has a clipping boundary, the initial view now frames the drawing itself instead of zooming out to include the clipping boundary, matching what CATIA shows. Applications that inspect the imported drawing structure should review their code; the details are in Importing Drawings in the programming guide.
- E57 import skips invalid points E57 import now drops the points a scan flags as invalid, meaning the scanner got no usable measurement for them (no return, or a target out of range). In earlier releases, those points were imported as real geometry, and typically showed up as a cluster at the origin or at the scanner’s maximum range. A scan can therefore import fewer points than it declares. See Notes on Point Cloud Files.
Documentation Changes
- Notes on Point Cloud Files now covers the images an E57 file declares, how scans stored in spherical coordinates are imported, and how points flagged as invalid are handled, alongside the per-scan point import behavior already documented there.
Deprecations
- Visual Studio 2019 and .NET 8: Support for Visual Studio 2019 (toolchain 14.2) and .NET 8 will be discontinued starting with HOOPS Visualize Desktop 2027.1.0, planned for release in January 2027.
- macOS on Intel: Support for macOS on Intel architecture will be discontinued starting with HOOPS Visualize Desktop 2027.1.0, planned for release in January 2027 due to the end of support in macOS 27.
- HPS Core PointCloud (reminder, deprecated in 2026.6.0):
HPS::PointCloudin HPS Core is deprecated in favor ofHPS::v2::PointCloud, and targeted for removal in HPS 2028.1.0. - HOOPS Communicator sprocket (HCA): The HOOPS Communicator streaming sprocket (HCA) is deprecated and will be removed in HPS 2027.1.0.
Fixed Bugs
| JSM Ticket | Engineering Resolution |
|---|---|
| SDHV-21679 | Fix status check that wasn’t checking all elements |
| SDHV-21665 | Do not rescale coordinate system axis to generate valid snapshot |
| SDHV-21658 | Fix shadow visibility problem with rendition lifecycle issue |
| SDHV-21640 | Fixed unexpected behavior when enabling Static Model with PBR materials |
| SDHV-21634 | Add relocatable parameters and install BUILD_WITH_INSTALL_RPATH |
| SDHV-21629 | Fix static model raised condition |
| SDHV-21601 | Fix a segment ordering issue while parsing prc |
| SDHV-21252 | Optimized edge compilation in segment display lists for silhouette visibility |
| SDHC-20549 | Replaced SKP texture temp-file round-trip with direct in-memory transfer |
| SDHC-20498 | Added the ability to load definitions referenced by group only (SUComponentType_Group) |
| SDHC-20440 | Resolved hang on texture-heavy SketchUp models via direct image transfer |

