From 2ceb2b18225bb95aa43268405f0e87f3230b2bec Mon Sep 17 00:00:00 2001 From: Thomas FORGIONE Date: Mon, 21 Sep 2015 09:44:35 +0200 Subject: [PATCH] Commit --- {rapport => common}/frustum.sk | 0 rapport/Makefile | 2 +- rapport/streaming.tex | 2 +- slides/Makefile | 5 ++ slides/main.tex | 113 ++++++++++++++++++++++++-- {rapport => utils}/sketch/COPYING.txt | 0 {rapport => utils}/sketch/sketch | Bin 7 files changed, 114 insertions(+), 8 deletions(-) rename {rapport => common}/frustum.sk (100%) rename {rapport => utils}/sketch/COPYING.txt (100%) rename {rapport => utils}/sketch/sketch (100%) diff --git a/rapport/frustum.sk b/common/frustum.sk similarity index 100% rename from rapport/frustum.sk rename to common/frustum.sk diff --git a/rapport/Makefile b/rapport/Makefile index 614ff63..88b00b2 100644 --- a/rapport/Makefile +++ b/rapport/Makefile @@ -5,7 +5,7 @@ TEXC = latexmk -lualatex -output-directory=build all: sk build/main.pdf sk: - ./sketch/sketch frustum.sk -o build/frustum.tex + cd ../common && make build/main.pdf: main.tex FORCE $(TEXC) -latexoption=-shell-escape $< diff --git a/rapport/streaming.tex b/rapport/streaming.tex index 24ebd31..7f9ba84 100644 --- a/rapport/streaming.tex +++ b/rapport/streaming.tex @@ -215,7 +215,7 @@ apparaissent dans le \emph{frustum}. On évite ainsi d'envoyer les faces du modèle qui sont derrière la caméra et que l'utilisateur ne voit pas. \begin{figure}[H] \centering - \include{build/frustum} + \include{../common/build/frustum} \caption{Le frustum de la camera et différents objets\label{frustum-draw}} \end{figure} diff --git a/slides/Makefile b/slides/Makefile index 3c4f6df..3f9c544 100644 --- a/slides/Makefile +++ b/slides/Makefile @@ -2,8 +2,13 @@ TEXC = latexmk -lualatex -output-directory=build .PHONY: FORCE +all: sk build/main.pdf + pdf: build/main.pdf +sk: + cd ../common && make + build/%.pdf: %.tex FORCE $(TEXC) -latexoption=-shell-escape $< # cp build/main.pdf build/main.tmp.pdf diff --git a/slides/main.tex b/slides/main.tex index 57b65ab..b3b4154 100644 --- a/slides/main.tex +++ b/slides/main.tex @@ -16,14 +16,15 @@ \usepackage{lmodern} \usepackage{vwcol} \usepackage{pgfpages} -\usepackage{animate} +\usepackage{hyperref} +% \usepackage{animate} \usepackage{tikz} \setbeameroption{show notes} \setbeameroption{show notes on second screen=right} %\setbeameroption{show notes on second screen=right} -\usetheme{Warsaw} % or try Darmstadt, Madrid, Warsaw, ... +\usetheme{JuanLesPins} % or try Darmstadt, Madrid, Warsaw, ... \setbeamertemplate{navigation symbols}{} \newcommand{\tikzvline}[2]{ @@ -65,7 +66,6 @@ \begin{document} \begin{frame} \titlepage - \note{Hello} \end{frame} \section{Introduction} @@ -82,8 +82,8 @@ \end{frame} \section{Technologies utilisées} +\subsection{Côté serveur} \begin{frame} - \frametitle{Côté serveur} NodeJs et certains \emph{packages} \begin{itemize} \item \texttt{express} @@ -103,13 +103,13 @@ \end{frame} +\subsection{Côté client} \begin{frame} - \frametitle{Côté client} \begin{itemize} \item HTML5 \item CSS3 - \item Boostrap \item JavaScript + \item Boostrap \item WebGL \item Three.js \end{itemize} @@ -204,7 +204,108 @@ \end{frame} +\section{Test de l'interface} + +\subsection{Principe du test} +\begin{frame} + Chercher des pièces dans une scène :\\[0.25cm] + \begin{enumerate} + \item Un formulaire (age, habitude en terme de jeux vidéo) + \item Un didacticiel + \item Trois expériences différentes + \item Un formulaire final (intérêt des recommandations, préférences) + \end{enumerate} + ~\\[0.25cm] + + Sauvegarde complète des interactions de l'utilisateur :\\[0.25cm] + \begin{itemize} + \item Mouvement clavier / souris + \item Recommandations (clic ou survol) + \item Pièces récupérées + \item Boutons de l'interface (précédente, suivante, reset...) + \end{itemize} +\end{frame} + +\subsection{Tirage des expériences} +\begin{frame} + \begin{block}{Objectifs} + \begin{itemize} + \item Tirer des expériences aléatoires + \item Eliminer la dépendance entre les pièces et le recommandations + \item Minimiser les paramètres variables pour faire des comparaisons + \end{itemize} + \end{block} + + ~\\[0.5cm] + Parmi les paramètres, on a : + \begin{itemize} + \item Niveau de l'utilisateur + \item Scène et combinaison de pièces + \item Type de recommandations + \end{itemize} +\end{frame} \section{Streaming} +\subsection{Protocole} +\begin{frame} + \begin{itemize} + \item Communication client-serveur via \texttt{socket.io} (et \texttt{Websocket}) + \item Modèles sous forme \texttt{.obj} et \texttt{.mtl} + \item Streaming orienté faces + \item Ajout dynamique des éléments reçus + \item Envoi des matériaux au début + \end{itemize} +\end{frame} + +\begin{frame} + \begin{figure} + \centering + \begin{tikzpicture}[scale=0.6,every node/.style={scale=0.6}] + \draw (0,0) node[above]{Client}; + \draw (0,0) -- (0,-8); + \draw (5,0) node[above]{Serveur}; + \draw (5,0) -- (5,-8); + + \pause + \draw (2.5,-1.3) node[rotate=-12] {Path jusqu'au modèle}; + \draw[->] (0,-1) -- (5, -2); + + \pause + \draw (2.5,-2.3) node[rotate=12] {Liste des matériaux}; + \draw[<-] (0,-3) -- (5, -2); + + \pause + \draw (2.5,-3.3) node[rotate=-12] {Caméra / \emph{frustum}}; + \draw[->] (0,-3) -- (5, -4); + + \pause + \draw[dashed, ->] (-0.1,-3) -- (-0.1,-4); + + \pause + \draw (2.5,-4.3) node[rotate=12] {Des éléments}; + \draw[<-] (0,-5) -- (5, -4); + + \pause + \draw (2.5,-5.3) node[rotate=-12] {Caméra / \emph{frustum}}; + \draw[->] (0,-5) -- (5, -6); + + \pause + \draw (2.5,-6.3) node[rotate=12] {D'autres éléments}; + \draw[<-] (0,-7) -- (5, -6); + + \draw (2.5,-8) node{$\vdots$}; + \onslide<1-> + \end{tikzpicture} + \caption{Communication client / serveur pour streaming de modèle 3D} + \end{figure} +\end{frame} + +\subsection{Frustum} +\begin{frame} + \begin{figure} + \scalebox{.8}{\parbox{1.25\linewidth}{\centering\input{../common/build/frustum}}} + \caption{Le frustum de la camera et différents objets\label{frustum-draw}} + \end{figure} +\end{frame} \end{document} diff --git a/rapport/sketch/COPYING.txt b/utils/sketch/COPYING.txt similarity index 100% rename from rapport/sketch/COPYING.txt rename to utils/sketch/COPYING.txt diff --git a/rapport/sketch/sketch b/utils/sketch/sketch similarity index 100% rename from rapport/sketch/sketch rename to utils/sketch/sketch