HPS Use Cases
The main purpose of the demo project is to be used as an example in order to integrate HOOPS Luminate into an existing application. It can also be used by more advanced users in order to test some functionalities based on the integration with HV HPS.
Default Use Case
Purpose & Description of Beginner Mode
The main purpose of this demo is to show how to integrate HOOPS Luminate into a HV HPS application by using the hoops_luminate_bridge
library as a blackbox.
Step-by-Step of How to Use Beginner Mode and How it Looks
Here are the steps to integrate HOOPS Luminate rendering into your application:
Create a widget to render with HOOPS Luminate.
Create an instance of
LuminateBridgeHPS
which references your 3DFHQWidget
.Initialize
LuminateBridgeHPS
by passing your license (must be valid for HOOPS Luminate) and the information relative to the rendering widget.During the resize of the widget, call
LuminateBridgeHPS.resize
During the rendering loop of the widget, call
LuminateBridgeHPS.draw
After loading a new model into the 3DF view, call
LuminateBridgeHPS.syncScene
When exiting the application, call
LuminateBridgeHPS.shutdown
Note
Please note that HOOPS Luminate uses threading intensively so a basic integration like this may impact your performances. See the section Performances/Threads on the HPS Bridge Demo Projects page to see how we handled that in our demo.
Expectations
The current version is limited in term of conversion of data between HV HPS and Luminate. We do not expect to support any kind of object and some major differences are expected between the two rendering views.
What we import:
Geometry (i.e. sphere, cylinder, polycylinder, mesh, shell, polygon)
Vertex Attributes (i.e. normals, UV coordinates)
Materials (i.e. diffuse, bump, pbr(limité))
Vertex / Faces Colors
What we don’t import:
Lighting
Additionals Cameras (Only the first camera is imported)
Geometry (i.e. nurbs, nurbs curve, nurbs surface, line, elliptical arc, ellipse, circular arc, circle, markers, image, radial grid, quad grid, text, polyline)
Emissive Texture, Env Map
Advanced Use Case - Using Source Code Beyond Demo in sandbox for Personal Use
Purpose & Description of the Advanced Mode
The project allows advanced users to see how to use HOOPS Luminate when integrating it into a HV HPS application. You can modify it and test Luminate functionalities by editing and recompiling the hoops_luminate_bridge
library.
Modifying Beyond the Demo’s
Modifying the library allows you to test more advanced functionalities related to your needs. For example, you can support more geometry types by modifying the HoopsHPSLuminateBridge::convertSegmentTree
function. For some help and ideas of functionalities to test, take a look at the Luminate Tasks list.
The widgets library is a great example of how to add various functionalities to the demo. We created a set of widgets to: manipulate Luminate parameters, change the materials on parts, or change the lighting environment. You can add your own widgets to the library and use them in the Bridge Demo in order to test some more advance Luminate functionalities.