Introduction

Getting Started

Programming Guides

API Reference

Additional Resources

Large Model Visualization (LMV) Tutorial: Overview

The term 'large model' can generally be broken into 2 categories:

  • The model consists of numerous 3D objects that are spatially dispersed. It may represent an engine, aircraft, automobile, power-plant, building, etc...
  • The model contains only a few large 3D objects (or maybe only one). These models are common in analysis and oil/gas applications, which need to display very large objects.

The concepts discussed in this tutorial are focused around HOOPS' ability to generate lower levels of of detail for objects, and maintain a constant framerate by selectively drawing lower detail levels of objects based on their distance from the camera, or whether they lie within the current view. Therefore, while the concepts can be applied to both of the above scenarios, they provide the greatest performance benefits in the first case case. Developers dealing with the second case should experiment with these concepts, and also review the geometry optimization guidelines (particularly the 'skinning' technique) discussed in Section 7.3 of the HOOPS/3dGS Programming Guide.

 

1. Create a skeleton application called 'Visualize'

  • If you are working on Windows, use the HOOPS/3dAF AppWizard to create an application that has the following properties:
    • Multiple document interface
    • HOOPS 3D Application Framework
    • No Geometric Kernel support
  • If you are working on Unix, start with the simple HOOPS/QT Application. You should rename the SimpleHQWidget.h/.cpp files and the SimpleHQWidget class to have the name VisualizeHQWidget.

 

2. Tutorial Steps

3. Reference Tutorial

In the HOOPS 3DF installation, we have provided completed versions of the tutorial reviewed in the steps above. Below is a list of these versions and where they reside:

  • MFC: the version of the completed tutorial is located in <hoops>/demo/tutorial/visualize. The project name is tutorial_visualize_vc<Microsoft Visual Studio Version>.vcproj.
  • QT: the version of the completed tutorial is located in <hoops>/demo/tutorial/visualize. The project name is qt_visualize_vc<Microsoft Visual Studio Version>.vcproj. Additionally, there is a makefile for users developing on Unix.
  • .Net: For C# developers, you can find a version of the soccer tutorial in <hoops>/demo/dotnet/csharp_tutorial_visualize/. The project name is csharp_tutorial_visualize_cs<Microsoft Visual Studio Version>.csproj. Note that these tutorial projects do not follow the tutorial steps exactly. They are based on the csharp_simple project found in the dotnet directory.