Virtual Personas

The second case study of sub project B (VR) reached a first milestone. After discussing various VR applications in a previous meeting, a functional prototype of the Virtual Personas application was demonstrated to the company. The Virtual Persona application allows designers (engineers, management, marketing, etc.) to see and control virtual avatars of existing personas in current and future use scenarios. The application intends to bring personas ‘alive’ in a virtual environment (instead of just describing them on paper) and lets designers experience scenarios from a persona’s point of view. A persona can include physical user characteristics (e.g. weight, length, age) but also behavioural characteristics, such as the level of knowledge of electronics, the level of intelligence, etc.

The virtual avatar (outside the truck) can be controlled with a Kinect interface

Prototype

The prototype of this application consists of the following elements;

  1. A virtual world  (A virtual city with roads, highways, etc. was created for this specific case study)
  2. Several virtual avatars, representing existing personas
  3. A motion capture interface that allows the avatars to be controlled by designers (using a Kinect)

A short video demonstrating the prototype is available here.

The setup is envisioned to be used by a group (5-10) of designers in early stage design meetings. The application enables the designers to act out scenarios themselves (using the motion tracking), but at the same time forces designers to act and think from the perspective of a particular persona. As such, it can be useful to discuss questions like “would persona 3 do with this new concept”, or “will this particular concept work with all our personas?”. Though it will probably not result in direct design solutions, it should help the designers in thinking from a user’s point of view, and as a result trigger discussions in the design meeting.

Next Steps

The prototype demonstration resulted in useful feedback and pointers for future work. Firstly, the personas need sufficient introduction before using the tool. Right now, the virtual avatars are simply dropped into the virtual world, without any introduction. A short movie or animation should briefly introduce the primary characteristics of each avatar. Secondly, the current method of interaction with the avatar (motion tracking) may not be the most useful one. Alternatively, some of the avatar actions could be done with a mouse, by a ‘session operator’. For the upcoming test sessions, a hybrid interface (e.g. mouse and Kinect) will be implemented to be able to experience the difference between these two interfaces.

In the two upcoming meetings, a pre-test with a refined version of the prototype will be carried out, followed by a real design session involving a larger group of designers/engineers and a relevant test case.

Exploring advanced VR modeling tools

Following the Do It Yourself Virtual Environments (DIYVE) workshop, where non-experts modeled their own virtual environments using SweetHome3D, the final step in the first case study of Sub Project B is to look at ‘Behaviour Modeling’ of virtual environments. By now we have seen that even non-experts are able to create realistic virtual use contexts. The next step, Behvaiour Modeling, is done by a more dedicated designer who is more experienced with programming and modeling (refered to as ‘prototyper’). Consequently we can try to use advanced tools to achieve higher levels of complexity, flexibility and interactivity in virtual environments.

Approach

Unlike the DIYVE workshop, where participants were guided through the tool and worked on an assignment during the workshop, the advanced modeling tool is introduced to the dedicated designer in a one-on-one meeting. It was decided to use Blender as a starting point for this part of the case study. Blender was also used for developing the VR demonstration projects, as well as the more advanced prototype shown during the Interactive Demonstration Session for the company. As such, it has prooven itself as a versatile tool for modeling and real-time virtual environments, it is an open piece of software, and well-known to the researcher.

The tool was introduced to the prototyper by starting with one of the virtual environments created during the DIYVE workshop. The virtual environment was imported to Blender, after which the tool was used to add ‘interactivity’. We decided to implement

  • A ‘first person shooter’ perspective (e.g. so you can walk around in the environment)
  • A working door, so the user can open and close a door, and
  • The ability to pick up virtual objects, move them and put them back

These exercises are considered feasible and relevant for behaviour modeling and are a good way to get to know the modeling tool. While working on these topics the prototyper noticed several positive and negative aspects of the tool, it’s user interface and the overall ‘way of working’. In general, it was concluded that Blender offers a lot of (and probably too much) functionality, but has quite a threshold for new users. Despite the experience of the prototyper in the field of programming, gaming and modelling, it was still difficult to grasp the modeling concepts that are used in Blender. Nevertheless, the above functionality could succesfully be added to the scene, with the exception of the third one.

Blender is used for behaviour modeling. Here one of the virtual environments created in the DIYVE workshop is imported.

Preliminary Conclusions

After the introductory session the prototyper worked with Blender individually over a period of several weeks (as a ‘friday afternoon’ activity). Spending more time on using the tool, the aforementioned conclusion was confirmed. The tool offers a lot of functionality, but fails to do this intuitively. Especially if such tools would be used once every other month or so, it is important to quickly (re)grasp the use of the tool rather than having to spend a week of training on it each time you use it.

There are several ways to address the challenges that emerged during this period of use. Firstly, the user interface of the tool could be adapted to the specific tasks of VR modeling (e.g. leave out unused functions, or hide them in deeper ‘UI layers’). The prototyper suggested to look at visual programming solutions; simple ‘if-then-else’ statements could be used to define the behaviour of a VR scene. Secondly, additional training could be provided to properly explain the prototyper the basics of the tool before diving into the complexity of VR modeling.

With plenty of solutions for any of these directions available, the real question is how do designers (or the company as a whole) treat the trade-off between investements in time and tools (e.g. training, specific UI’s) and the benefits of using VR they gain in return. In order to understand this trade-off, the company (and its designers) first need to experience the use of VR as prescribed during the case study. This experience should clarify the benefits of applying VR, and add insights about the use of tools (e.g. see where additional investements are required and/or justified).

Mixed Reality: Interactive Textures

Sub project B is currently investigating the possibilities of mixed reality. Mixed reality typically consists of a virtual and a real part. With augmented reality for instance, virtual information is added to real information (usually a video stream). It is also possible to mix two sources of virtual information.

Image a user interface designer who wants to see how his new GUI idea fits on a future product (e.g. the dashboard of a new car or the user interface of  industrial machinery). Here we can use mixed reality to let GUI designers insert their GUI prototype (which may be an interactive Flash prototype, a simple sketch or a Sketchify file) into a virtual environment, where a test-user can use the GUI on a virtual product.

Interactive Textures

A first implementation of this idea is shown in the short movie below. On the left, you can see a 3D virtual environment (a simple 3D object in Blender). Onthe right, a window pops up, showing an arbitrary traditional 2D application (in this case a webbrowser). This application is rendered in real-time on the cube in the virtual environment. When we browse in the webbrowser, the cube immediately shows the same output. The other way around also works; the browser can be controlled from the virtual environment. To imagine a more useful application, replace the webbrowser with a GUI prototype, and the 3d cube with a soda machine, a printer or a car dashboard!



Techniques used

The implementation presented here uses Virtual Network Computing, which is a standard and widely available technique for sharing software applications; you can even share an entire desktop over a network. This allows people to watch your desktop, but also to control mouse and keyboard input. The same trick is used here; the webbrowser is a ‘shared’ application that sends visual output and mouse/keyboard controls to the 3D environment. This way, the application can be rendered on the cube (or any 3d object), and mouse input can be sent from the 3d environment back to the 2d application.