FAQ: What is the difference between 3DF and HPS?

HOOPS Visualize APIs

3DF

HOOPS Visualize 3DF is the original (legacy) function-based API for HOOPS Visualize. It has been extended over the years but has a certain way of doing things. It uses a string-style interface for attributes and options, and has limited support for Java and C#, and no support for mobile hardware.

HPS

HOOPS Visualize HPS is the object oriented API for HOOPS Visualize. It was developed later to provide a modern interface. While it’s objects are a considerable difference to the function style interface of 3DF, they both call the same core graphics system. Although a functional mapping between 3DF and HPS exists, there is not necessarily a one-to-one mapping for every 3DF function. It’s Sprockets provide a tighter integration with other toolkits (such as Publish and Parasolid) but they are less customizable than 3DF’s HIO modules.

Additional Information

You can’t use both APIs at the same time. If 3DF is working for you, there’s little need to port your application to HPS. If you are developing a new application, HPS is probably the way to go unless you’d like to standardize on a single HOOPS Visualize API within your company. If you plan on adding mobile support at some point, then you would want to develop with HPS.

There are no plans to end of life 3DF. A large percentage of our Visualize partners use this interface, and we will continue to support it. In addition, as we add new functionality we will provide it in both APIs, such as adding Physically Based Rendering.

An HSF (HOOPS Stream File format) created by the HPS API is not compatible with 3DF. However, an HSF created by 3DF can be read by HPS.