As we discussed at the beginning of this chapter, the objective in virtual reality is not necessarily to reproduce what exists in the physical world.
We rather focus on either elementary or compound tasks and figure out ways to enable users to perform these tasks.
For example selecting an object is an elementary task that is usually part of a more complex or compound tasks: manipulation, command selection, navigation, text entry, etc.
-We describe below the design and evaluation of a new 3D selection technique for immersive virtual reality.
+We describe below the design and evaluation of a new 3D pointing technique for immersive virtual reality.
% Should I keep this?
One of the main active research topics in this area is augmenting \defword{immersion}, \defword{presence}, and \defword{embodiment} \cite{witmer98,slater99,kilteni12}.
We identified the key design aspects of the techniques and we implemented and evaluated several alternatives.
Then we implemented the best combination of these alternatives and compared it to equivalent techniques in the literature.
-\subsubsection{Pointing}
+\subsubsection{3D Pointing}
In the physical world it is difficult to interact with objects remotely because of physical constraints.
In virtual worlds such physical constraints do not exist.
-The common technique for selecting objects…
-
-RayCursor \cite{baloup19,baloup18,baloup19a}
+Users can inteteract remotely with objects, regardless of their size, shape, or weight.
+The most common technique for selecting objects is certainly \defword{raycasting} \cite{bowman04}.
+The users control a ray with their hand, and the first interested object can be selected with a validation action, such as a button press.
+It shares similarity with laser pointers, except that the light ray between the controller and the contact point is visible.
+The simplicity of this technique has a cost.
+Occluded targets cannot be selected, or require users to get around it.
+Moreover, even if theoretically there is no limit to the distance and size of the object the users would like to select, in practice hand tremor and input noise create such a limit.
+Therefore, there are many adaptations of this technique in the literature, well covered in \cite{argelaguet13}.
+Most of these techniques use a disambiguation step to let the users select a target among all the interested targets \cite{grossman06,kopper11,delamare13}.
+Other techniques use a cursor on the ray that usrs can either manipulate by manipulating the ray \cite{grossman06}, or with another degree of freedom \cite{ro17}.
+%Either the cursor has a fixed position that users control by manipulating the ray \cite{grossman06}.
+%Or the users can control the position of the cursor with an additional degree of fredom \cite{ro17}.
+
+These solution fix the issue of occluded targets but not the issue of small and distant targets.
+To do so we propose RayCursor, an alternative of raycasting with a cursor that users can control that leverages proximity selection \cite{baloup19,baloup18,baloup19a}.
+Proximity selection consists in selecting the nearest target from the cursor instead of the intersected target \cite{grossman05}.
+Initial studies were with 2D pointing.
+However, it was also studied for 3D pointing with a virtual hand \cite{vanacken07}, that is to say pointing at targets the users can reach around them.
+We combined this approach and raycasting with a cursor.
+For the design of this technique, we performed three initial evaluations.
+The first one was about the most appropriate visual feedforward, and was inspired by a similar work for 2D proximity selection \cite{guillon15}. The second evaluation was about the transfer function for the movement of the cursor, and the last one was about the benefits of filtering the inputs that control the ray with a 1\euro~filter~\cite{casiez12}.
+After this, we designed a semi-automatic RayCursor that combines RayCursor and raycasting (\reffig{fig:raycursor}).
+Finally we compared the performance of the two versions of RayCursor, raycasting and another technique of the literature \cite{ro17}
\begin{figure}[htb]
\def\fh{3.5cm}
f)\hspace{-4mm}
\includegraphics[height=\fh]{raycursor_c}
\label{fig:raycursor}
- \caption[Illustration of Raycursor]{Illustration of manual Raycursor:
- a)~the user controls a cursor along the ray using relative displacements of their thumb on the controller’s touchpad;
- b)~the target closest to the cursor is highlighted.
- Illustration of semi-auto Raycursor:
- c)~by default, it works like raycasting.
- The cursor (in black) is positioned at the intersection with a target;
- d)~the target remains selected if the cursor moves out of the target, until it is closer to another target;
- e)~the user can manually move the cursor using the controller’s touchpad, to select another target (the cursor turns red to indicate manual mode);
- f)~if the user does not touch the touchpad for 1s, the cursor returns to its behaviour described in c).}
+ \caption[Illustration of Raycursor]{Two versions of Raycursor. The manual RayCursor (left) selects the nearest target from the cursor. The semi-automatic RayCursor acts like raycasting, a black cursor is position on the first intersected target. When the ray moves out of a target, it remains selected while it is the nearest target. The users can move the cursor manually with the touchpad, which turns red, to select another target. If the users lift their finger for more than 1s, the cursor switches back to its initial behavior.}
+ %Illustration of manual Raycursor:
+ %a)~the user controls a cursor along the ray using relative displacements of their thumb on the controller’s touchpad;
+ %b)~the target closest to the cursor is highlighted.
+ %Illustration of semi-auto Raycursor:
+ %c)~by default, it works like raycasting.
+ % The cursor (in black) is positioned at the intersection with a target;
+ %d)~the target remains selected if the cursor moves out of the target, until it is closer to another target;
+ %e)~the user can manually move the cursor using the controller’s touchpad, to select another target (the cursor turns red to indicate manual mode);
+ %f)~if the user does not touch the touchpad for 1s, the cursor returns to its behavior described in c).}
\end{figure}
-Leverages 3D input and combines with 3D motion for more efficient pointing
-
\subsubsection{Facial expression selection}
Non verbal communication
\subsubsection{Discussion}
+Raycursor: issues with convex shapes, long shapes, dense areas.
+
\section{Conclusion}
All these input techniques use hands dexterity and our capacity to touch and manipulate.