Overview of the Flex-VR Approach (Building Configurable 3D Web Applications with Flex-VR)

The Flex-VR approach targets requirements of emerging 3D Web applications by providing means of configuration of behavior-rich interactive content from high-level components by both expert and non-expert users [30, 31]. In Flex-VR, content that may be interactively or automatically configured from separate components. Interactive configuration of content enables efficient production of content by both expert users and non-expert users, without going into details of 3D design or programming processes. Adaptation of content to various requirements such as the target environment or the target group of users is possible thanks to automatic configuration of content.

The Flex-VR approach consists of five interrelated elements, as graphically depicted in Fig. 5.1:

1.    Flex-VR content parameterization: a method of content parameterization and interactive or automatic on-request instantiation of content based on parameterized content models;

2.    Flex-VR content structuralization: specific organization of 3D content based on a novel Beh-VR model, which enables composition of interactive behavior-rich scenes;

3.    Flex-VR content model: a high-level generic persistent 3D data model suitable for flexible configuration of 3D application content;

4.    Flex-VR design patterns: a set of generic patterns that solve common problems in the design of configurable behavior-rich applications (by analogy to design patterns used in software engineering);


5.    Flex-VR content pipeline: specific organization of the content configuration processes at different stages.

Flex-VR applications are based on parameterized content, i.e., content that may be interactively or automatically parameterized during content creation or during content consumption. Parameterization of content during content creation enables efficient production of content by both expert users and non-expert users and adaptation of the content to various requirements, such as target environment or group of users. Parameterization of content during content consumption enables application of changes to already created content in a controlled way, while the content is being used [38].

To provide a sufficient level of flexibility in configuration of complex interactive behavior-rich 3D content, specific organization of the content is required. In Flex-VR, content is specifically organized following a novel structuralization model, called Beh-VR. In the Beh-VR model, content is composed of independent high-level objects, called VR-Beans, that can be freely assembled into 3D scenes. VR-Beans are compliant with the existing standards, but they are designed in a way that allows a content designer to easily combine them into technically correct 3D applications. VR-Beans provide mechanisms of inter-object discovery, communication, and interaction.

A generic high-level Flex-VR content model describes a 3D application on a higher level of abstraction than a typical content representation standard (such as VRML/X3D). Particular virtual scenes or sequences of virtual scenes are specific projections of the generic model. This generic high-level model may be used to manipulate the 3D application, allowing this task to be performed by domain experts using simple tools without advanced knowledge in 3D application design or programming.

Development of complex configurable 3D applications may be significantly simplified by the use of a collection of Flex-VR design patterns. The term Flex-VR design pattern, by analogy to the term “design pattern” frequently used in software engineering, means a general reusable solution to a common problem in 3D application design. The use of Flex-VR design patterns also imposes a known semantic structure on the applications, which helps users to understand, configure, and maintain 3D applications.

Finally, specific organization of the content creation pipeline makes it possible to split the process in time and space and to assign different responsibilities to different groups of users involved in the process. These aspects are very important for practical deployment of VR applications.

In this topic, we focus on two elements of the Flex-VR approach: Flex-VR content structuralization and Flex-VR content model. We also describe several Flex-VR design patterns enabling configuration of complex content structures. These three elements form the core of the Flex-VR approach and are sufficient for building configurable 3D Web applications. More information about content parameterization, content pipeline, and design patterns can be found in [28, 30, 31, 38].

 VR-Bean object consisting of scenarios, media components, and parameters

Fig. 5.2 VR-Bean object consisting of scenarios, media components, and parameters

Next post:

Previous post: