"name": "biber",
"command": "biber",
"args": [
+ "--debug",
"%DOCFILE%"
]
},
"bibtex"
]
},
+ {
+ "name": "biber",
+ "tools": [
+ "biber"
+ ]
+ },
{
"name": "xelatex biber",
"tools": [
--- /dev/null
+%!TEX root = ../hdrmain.tex
+
+\begin{figure}[htb]
+ \centering
+ % 1: top color
+ % 2: right color
+ % 3: bottom color
+ % 4: left color
+ \newcommand{\vibrators}[4]{%
+ \begin{scope}[yshift=-50]
+ \draw[line width=3, draw=black!40] (0,0) circle (6);
+ \filldraw[fill=#1, draw=black!50] (0,6) circle (2);
+ \filldraw[fill=#2, draw=black!50] (6,0) circle (2);
+ \filldraw[fill=#3, draw=black!50] (0,-6) circle (2);
+ \filldraw[fill=#4, draw=black!50] (-6,0) circle (2);
+ \end{scope}
+ }
+ % 1: angle
+ \newcommand{\wheel}[1]{%
+ \begin{scope}[rotate=#1]
+ \fill[black!80] (0,0) circle (8);
+ %\fill[fill=white,] (0,1) .. controls (1,1) and (0.83,0.67) .. (1,1) -- cycle;
+ \fill[black!20] (0,3) to[out=0,in=90] (5,-2) to[out=210,in=330] (-5,-2) to[out=90,in=180] cycle;
+ \draw[black!80, thick] (0,0) circle (2);
+ \fill[white] (0,6) to[out=0,in=120] (6,2) to[out=300,in=330] (5,1) to[out=150,in=0] (0,2.2) to[out=180,in=30] (-5,1) to[out=210,in=240] (-6,2) to[out=60,in=180] cycle;
+ \fill[white] (2.1,-1) to[out=30,in=120] (5.5,-2) to[out=300,in=330] (2,-6) to[out=150,in=210] cycle;
+ \fill[white] (-2.1,-1) to[out=150,in=60] (-5.5,-2) to[out=240,in=210] (-2,-6) to[out=30,in=330] cycle;
+ \end{scope}
+ }
+ \definecolor{cellred}{rgb} {0.98,0.17,0.15}
+ \definecolor{cellblue}{rgb} {0.17,0.60,0.99}
+ \includegraphics[height=3.7cm]{figures/vdrift}
+ \hfill
+ \begin{minipage}[t]{10.3cm}
+ \centering
+ \tikzexternalenable
+ \begin{tikzpicture}[x=1mm,y=1mm,outer sep=0pt, inner sep=0pt, inner frame sep=0]%, background rectangle/.style={fill=cellblue}, show background rectangle]
+ \begin{scope}
+ \wheel{90}
+ \vibrators{white}{white}{white}{cellred}
+ \end{scope}
+ \begin{scope}[xshift=60]
+ \wheel{45}
+ \vibrators{cellred}{white}{white}{cellred}
+ \end{scope}
+ \begin{scope}[xshift=120]
+ \wheel{0}
+ \vibrators{cellred}{white}{white}{white}
+ \end{scope}
+ \begin{scope}[xshift=180]
+ \wheel{-45}
+ \vibrators{cellred}{cellred}{white}{white}
+ \end{scope}
+ \begin{scope}[xshift=240]
+ \wheel{-90}
+ \vibrators{white}{cellred}{white}{white}
+ \end{scope}
+ \end{tikzpicture}
+ \vspace{1mm}
+ \begin{tikzpicture}[x=1mm,y=1mm, node distance=0.5mm]
+ \node[fill=cellred, draw=black!50, circle] (full) at (0,0) {};
+ \node[right=of full, anchor=west] {250Hz vibration};
+ \node[fill=white, draw=black!40, circle] (none) at (50,0) {};
+ \node[right=of none, anchor=west] {no vibration};
+ \end{tikzpicture}
+ \tikzexternaldisable
+ \end{minipage}
+ \caption[Car racing game with gestural interaction]{Screenshot of the customized version of VDrift, an open-source car racing game. The right side shows the mapping of the vibrotactile feedback depending on the steering angle.}
+ \label{fig:cargame}
+\end{figure}
}{ \draw[draw=black] (0,0) circle (\scsize); }
\end{scope}
}
-
% 1: top color
% 2: right color
% 3: bottom color
% 4: left color
- \newcommand{\vibrators}[4]{
- \begin{scope}[yshift=-45]
+ \newcommand{\vibrators}[4]{%
+ \begin{scope}[yshift=-50]
\draw[line width=3, draw=black!40] (0,0) circle (6);
- \node[fill=#1, draw=black!50, circle] at (0,6) {};
- \node[fill=#2, draw=black!50, circle] at (6,0) {};
- \node[fill=#3, draw=black!50, circle] at (0,-6) {};
- \node[fill=#4, draw=black!50, circle] at (-6,0) {};
+ \filldraw[fill=#1, draw=black!50] (0,6) circle (2);
+ \filldraw[fill=#2, draw=black!50] (6,0) circle (2);
+ \filldraw[fill=#3, draw=black!50] (0,-6) circle (2);
+ \filldraw[fill=#4, draw=black!50] (-6,0) circle (2);
\end{scope}
}
\usepackage{pgfplots}
\usepackage{tikz}
-\usetikzlibrary{calc,arrows.meta,arrows,positioning,decorations.text}
+\usetikzlibrary{calc,arrows.meta,arrows,positioning,decorations.text,backgrounds}
\usepackage[siunitx]{circuitikz}
\usepgfplotslibrary{external}
\pgfplotsset{compat=1.17} % avoids warning
% ----------------------------------------------------------------------
% Bibliography with URLs
-
+% fix biber issues with rm -rf $(biber --cache)
\usepackage[style=numeric,sortcites,maxbibnames=6,url=false, doi=false, isbn=false,block=none,mincrossrefs=100]{biblatex}
\addbibresource{biblio.bib}
\loremipsum
\end{Abstract}
-
The previous chapters focused on the way we leverage haptics for the design of either input or output systems.
The first chapter, about haptic as the sense of touch, barely mentions input.
At the opposite, the second chapter, about haptic as the motor ability, barely mention output.
The first rejected submission on this work described several scenarios in which 3D gestural interaction was supposed to benefit from tactile feedback.
I expected quantitative benefits, the same way tactile feedback improved typing performance on a mobile soft keyboard~\cite{hoggan08}.
-I compared the performance of participants for two scenarios.
-The first one was a car racing game that I adapted for Kinect.
-The participants steered the car by moving their arms like if they were holding a steering wheel.
-The tactile feedback indicated the steering angle.
-The results did not show any difference in lap times between the tactile feedback and no tactile feedback conditions.
-In hindsight, the tactile feedback could be useful to tell the players how their gestures are intepreted.
-As we will discuss later, this is an essential aspect of direct manipulation.
-However it does not necessarily guarantee quantitative benefits.
-We will discuss a qualitative evaluation attempt in the next section.
+Therefore I described several scenarios for 3D gestural interaction in which I provided tactile feedback.
+I evaluated the quantitative benefits for some of them, in particular for target selection.
+%I compared the performance of participants for two scenarios.
-In this section we will focus on the second study, about target selection with a dwell cursor.
+%In this section we will focus on the second study, about target selection with a dwell cursor.
3D gestural interaction has two main issues.
The first one is the precision of the movements, due to both the stability of the hand and the noise of the input system (see \reffig{fig:motorpath} in \refchap{chap:input}).
The second one is the lack of segmentation.
It warns the users that the animation is about to start.
The animation vibrates the four actuators in a clockwise sequence at 250Hz during $200ms$, followed by a $175ms$ pause.
After this animation all the actuators vibrate at 250Hz for $200ms$, then the target is activated.
+Therefore users had to hover a button during $3s$ to activate it.
We ran an experiment with the idea to measure an increase of performance in a tactile condition over a visual-only condition.
This was motivated by the fact that we tried the buttons themselves, tactile feedback seemed to bring some benefit.
We failed at detecting a significant difference between the conditions, either in selection time or error rate.
I am convinced now that performance is not the benefit of tactile feedback in this situation.
-That being said, we were not the only wones to have this sensation that something was better with tactile feedback.
+That being said, we were not the only ones to have this sensation that something was better with tactile feedback.
Several participants reported that tactile feedback was a good addition to visual feedback, as it reduced their visual attention.
For example, two participants said: “without tactile feedback I have to focus more on the visual feedback” and “I found [tactile feedback] more helpful than the visual feedback because I didn't have to focus 100\% visually with the tactile redundancy.”
Users also appreciated that tactile feedback indicated when they hovered a button.
\subsection{Qualitative limitations}
-PAD \cite{mehrabian96} and presence \cite{witmer98}, significant difference in sensory and realism factors.
+The dwell buttons scenario did not seem to be the most appropriate for evaluating qualitative benefits.
+Another scenario for haptic 3D gestural interaction in this project was an open-source car racing game\footurl{https://sourceforge.net/projects/vdrift/} that I adapted for Kinect (\reffig{fig:cargame}).
+The users steered the car by moving their arms like if they were holding a steering wheel.
+The Kinect API computed a skeleton of the user.
+The steering angle was computed as a function of the relative position of the hands of the skeleton.
+The tactile feedback indicated the steering angle as indicated on \reffig{fig:cargame}.
+
+\input{figures/cargame.tex}
+
+Initially, I performed a quantitative evaluation to compare the lap times between the tactile feedback and no tactile feedback conditions.
+The results did not show any statistical significant difference.
+In hindsight, the tactile feedback could be useful to tell the players how their gestures are intepreted.
+As we will discuss later, this is an essential aspect of direct manipulation.
+However, it does not necessarily guarantee quantitative benefits.
+This was the same issue than with the dwell buttons.
+Rather than rethinking both the inputs and outputs, my understanding at the time was that I was not measuring the right thing.
+The users feedback of this first experiment suggested that the tactile sensations provided benefits in terms of realism and immersion in the game.
+Therefore I conducted another experiment, but focused on qualitative benefits.
+
+In the next submissions we performed a nex user study and measured emotions with the PAD questionnaire (Pleasure Arousal Dominance)~\cite{mehrabian96} and presence with Witmer \etal PQ questionnaire \cite{witmer98}.
+
+%, significant difference in sensory and realism factors.
=> travaux embodiment
\subsection{Discussion}
+The paradox here is that the motivation for 3D gestural interaction was to offer users \emph{natural} ways to interact with systems, without manipulating artificial artifacts.
+However without haptic sensations, the virtual objects manipulated do not feel real to users, and they struggle to to manipulate them.
+Restoring haptic feedback on dwell buttons was not sufficient to make them efficient.
+3s min for clicking a button, large buttons in expe, etc.
+
focus on feedback rather than interaction