What you can do with H3DAPI

From H3D.org

Jump to: navigation, search

Contents

Introduction

H3DAPI is a dual license, open-source and commercial, cross-platform, scene-graph API available for download at www.H3D.org. H3D is written entirely in C++ and uses OpenGL for graphics rendering and HAPI for haptics rendering. Using X3D, syntax applications can be created that contains animated virtual worlds, stereo graphics, and haptics feedback. For more advanced animations and behaviour, Python can be used. To optimize and/or customize an application, the user has the option of using C++.

The H3DAPI installation and source comes with a number of simple example scenes which shows the features of H3D. H3DAPI use the X3D syntax and concept of nodes to build virtual worlds, where a node provides a certain feature in the scene. There are nodes for rendering geometry in the virtual world, for setting graphics and haptics properties, and nodes that can be used for animation.

For examples on what has been done with H3DAPI, check out the SenseGraphics references.

Scene Graph

Through the use of the scene graph concept in X3D, virtual worlds can be easily defined. Because of the scene graph concept, it is always easy to get an overview of how the virtual world is defined. Users with little low-level programming experience can set up simple scenes that could be used for experimental research. A little more programming is required to make a simple application like a game, and more advanced users can create complex optimized programs.

Haptics Device Support

H3DAPI is device independent (through HAPI) and supports multiple currently available commercial haptics devices. Through the use of the AnyDevice interface, one of the supported connected haptics devices will be interfaced with. The currently supported devices are:


H3DAPI has legacy support for the following devices:

  • Falcon device from NovInt
  • HapticMaster - a haptics device from Moog FCS Robotics. Only old API is supported.

Support for more devices can be added by the user.

Force generation from 3D-graphics

H3DAPI contains a couple of different ways to generate forces from 3D surface meshes. To generate force from 3D-graphics, a haptic renderer must be chosen. Through X3D, different geometries can feel different depending on which Surface node is used and how the properties of a node is set.

Force Effects

Force Effects in H3DAPI refer to the generation of forces which will be rendered on the haptics device based (usually) on other forces than geometrical surfaces, such as position of the haptics device. H3DAPI contains a couple of predefined force effect nodes that can be used and are sufficient for a lot of haptics applications.

Stereo support

H3DAPI can be used to display virtual worlds in stereo. There are a lot of stereo modes supported, from standard quad-buffered stereo, to hardware display-specific modes.

Some of the 3D display technologies currently supported includes:

Personal tools
go to