Example of a Flex-VR Application (Building Configurable 3D Web Applications with Flex-VR)

The Flex-VR approach has been employed in the ARCO virtual museums system [1, 32, 36, 37]. ARCO consist of a set of tools to help museums to create, manipulate, manage and present virtual exhibitions of cultural artifacts. Application of Flex-VR enables museum staff (curators, exhibition designers) to set up behavior-rich 3D interactive virtual exhibitions without the need for performing low level programming or design tasks. In Fig. 5.15, an example ARCO virtual museum exhibition, implementing a simple interactive game, is presented.

A user navigating in a 3D virtual museum room has to assemble a complete armor from parts located in the 3D environment. A body skeleton indicates with highlighting elements the part of the armor that the user needs to find. The game is highly interactive, objects react to user interactions with animations, sounds, and voice. By playing the game and listening to narration, the user learns about functions of particular objects.

Flex-VR content structure of the virtual exhibition presented in Fig. 5.15


Fig. 5.16 Flex-VR content structure of the virtual exhibition presented in Fig. 5.15

The Flex-VR content structure of the virtual exhibition described above is presented in Fig. 5.16. The structure consists of one presentation space (Armor Game) based on a content pattern (Puzzle Game). A content template (Moorish Hall) is assigned to this space. The template contains a 3D model of the museum room and a set of commands to create VR-Beans corresponding to content objects. The content pattern defines categories of content objects and provides default implementation of category methods. The pattern defines three categories: Objects, Scenario, and User Interface. The User Interface category has two subcategories: In and Out.

A presentation designer (e.g., a curator in a museum) can create different presentations based on the same content pattern by using different content templates, assigning different content objects to categories, and by setting different values of their parameters and presentation properties (e.g., positions, sounds).

Conclusions

The Flex-VR approach, presented in this topic, enables building behavior-rich interactive 3D applications, in which content can be configured using independent components taken from a library. Configuration of the application content enables users without programming skills, such as domain experts, to efficiently prepare large amounts of high-quality complex behavior-rich content. Availability of such content is a prerequisite for wider adoption of 3D applications in everyday life. At the same time, new components can be added to the library by experienced users— programmers and 3D designers—thus extending system capabilities.

The Flex-VR content structuralization model, described in this topic, enables creation of standardized content objects, called VR-Beans. VR-Beans are compatible with existing content standards, but due to their specific, well defined structure and interfaces, they can be flexibly combined into 3D scenes. VR-Beans are equipped with communication and discovery mechanisms enabling them to communicate in dynamically composed 3D scenes. VR-Beans may consist of various media components, such as 3D models, synthetic or natural images, video sequences, audio objects, and texts. Appearance and behavior of VR-Beans in virtual scenes is controlled by scenario scripts encoded in a novel programming language, called VR-BML.

The presented Flex-VR content model describes 3D application content on a much higher level of abstraction than a typical content representation standard, such as VRML/X3D. The high-level description enables more efficient composition, manipulation, and exchange of application content. A content designer can build a 3D Web application simply by forming a hierarchy of presentation spaces and assigning content objects (VR-Beans), content templates, behavior templates or content patterns to these spaces, and setting their parameters and presentation properties.

Efficient configuration of interactive behavior-rich 3D application content requires imposing some kind of known semantic structure on the content. To simplify the design of different types of 3D applications, a number of Flex-VR design patterns have been proposed. Three patterns suitable for creation of complex content models have been described in this topic. Flex-VR design patterns are structural and functional building blocks of Flex-VR applications.

The Flex-VR approach has been successfully employed in several real-life applications enabling creation of interactive 3D content not only for the Web [1, 37] (Sect. 5.6), but also for use in standalone environments [22, 38]. These systems represent different application domains, have different requirements and constraints, and are based on different architectures and families of standards, proving the Flex-VR approach to be really versatile [30]. In each case, behavior-rich interactive 3D/VR content can be flexibly configured by users of these systems—either content creators or operators on the service provider side, or end-users on the consumer side.

Next post:

Previous post: