diff --git a/Parties/intro.tex b/Parties/intro.tex index 162fad3..cb13de4 100644 --- a/Parties/intro.tex +++ b/Parties/intro.tex @@ -1,13 +1,59 @@ -Dans le monde de l'Infographie, la possibilité d'ajouter des détails sur des -textures de manière procédurale et presque instantanément est devenue presque -incontournable dans des domaines tels que les jeux vidéos, les animations ou -encore les effets spéciaux. De tels procédés sont appelés des (pixel) shaders -(ou nuanceurs de pixels en français). L'article ici étudié se nomme «Procedural -Phasor Noise» et porte sur une nouvelle conception de shader, grandement inspiré -d'une autre étude intitulée «Gabor Noise». +% Dans le monde de l'Infographie, la possibilité d'ajouter des détails sur des +% textures de manière procédurale et presque instantanément est devenue presque +% incontournable dans des domaines tels que les jeux vidéos, les animations ou +% encore les effets spéciaux. De tels procédés sont appelés des (pixel) shaders +% (ou nuanceurs de pixels en français). L'article ici étudié se nomme «Procedural +% Phasor Noise» et porte sur une nouvelle conception de shader, grandement inspiré +% d'une autre étude intitulée «Gabor Noise». -Nous allons donc étudier au travers de ce rapport, ce que sont les shaders plus -en détails, avant d'introduire la méthode Gabor Noise pour enfin déboucher sur -le sujet d'étude en lui-même, Procedural Phasor Noise et ainsi voir les -améliorations apportées par ce dernier par rapport aux autres méthodes de -shading. \ No newline at end of file +% Nous allons donc étudier au travers de ce rapport, ce que sont les shaders plus +% en détails, avant d'introduire la méthode Gabor Noise pour enfin déboucher sur +% le sujet d'étude en lui-même, Procedural Phasor Noise et ainsi voir les +% améliorations apportées par ce dernier par rapport aux autres méthodes de +% shading. + +Dans le monde de l'Infographie et plus particulièrement dans le domaine de la +modélisation, les textures sont devenues indispensables pour associer un modèle +et une image, afin de créer un objet réaliste, avec sa forme et ses motifs, +apportés par les textures. Les domaines d'application sont nombreux, +l'animation, les images de synthèses utilisées dans les films, ou encore les +jeux vidéos. Plus les textures sont précises (et donc par conséquent lourde en +terme d'espace disque), plus la qualité du rendu final sera réaliste. + +Il se pose par conséquent une question de limitations, en effet, ces textures de +très hautes qualités prennent certes de la place, mais également du temps à +concevoir et à créer. Un autre problème peut également intervenir, même si l'on +veut une texture très belle et que l'on peut y arriver, on aimerait dans l'idéal +avoir plusieurs textures pour un type d'objet donné. Prenons l'exemple des jeux +vidéos, il serait assez facheux de n'avoir que 3 ou 4 textures pour les arbres, +donnant ainsi une diversité assez pauvre et une répétition qui peut vite lasser +l'utilisateur, qu'importe la qualité de rendu de ces dites textures. + +Avoir suffisamment de textures debonne qualité prendrait beaucoup trop de temps +et de place pour pouvoir être créé. Il faudrait donc palier à cela en utilisant +d'autres procédés. Fort heureusement, ces procédés existent et se basent pour la +plupart sur des particularités présentes dans la nature, et un point commun +entre les objets visibles dans la nature est bien entendu le hasard. De plus, +les objets et formes de même type ont des propriétés communes entre elles. De ce +fait, nous sommes en mesure de créer des fonctions mathématiques basée sur +l'aléa capables de s'adapter, moyennant certains paramètres, à plusieurs +textures présentes dans la nature. Pour rendre le tout encore plus attractif, +ceci se fait de manière procédurale. + +Avec cette méthode, nous sommes donc capables de palier non seulement à la +qualité mais aussi à la diversité des textures concevables, le tout de manière +presque instantannée et sans prendre d'espace disque. Ce type de texture est +plus communément appelé \guillemets{textures procédurales} et permet la synthèse +de textures comme le bois, le marbre, le granite, le métal… + +Ces textures procédurales sont cependant générées avec des procédés différents +selon le type de texture que l'on souhaite obtenir, ces procédés sont appelés +les générateur de bruits, puisque basés sur l'aléa. On notera cependant que +certaines méthodes telle que le texturage cellulaire ne se base pas sur un +générateur de bruit. + +Dans ce rapport, nous allons donc voir différents types de générateurs de +bruits, on se limitera cependant aux générateurs de bruits gradients, par +oppositions aux bruits de valeurs. Dans un premier temps, nous verrons l'exemple +du bruit de Perlin, s'en suivra le bruit de Gabor qui a inspiré notre dernière +partie qui se concentre autour du sujet d'étude: le \guillemets{Phasor Noise}. \ No newline at end of file diff --git a/rapport.pdf b/rapport.pdf new file mode 100644 index 0000000..794bbbf Binary files /dev/null and b/rapport.pdf differ diff --git a/rapport.tex b/rapport.tex index 92e78d7..533db36 100644 --- a/rapport.tex +++ b/rapport.tex @@ -8,10 +8,14 @@ %\setromanfont[Mapping=tex-text]{Linux Libertine O} \setmainfont[Mapping=tex-text]{Cantarell} % \setmonofont[Mapping=tex-text]{DejaVu Sans Mono} +\newenvironment{citationFR}{\begin{quotation}\og}{\fg\end{quotation}} + \newcommand{\guillemets}[1]{\og #1\fg{}} % [1]: nbr arg \title{Rapport ERDI} -\author{Cyril Colin \\ Voisin Dylan \\ \\ Université d'Aix-Marseille} -\date{\today} +\author{Cyril Colin \\ Voisin Dylan \\ \\ +Master 1 Informatique\\ +Université d'Aix-Marseille} +\date{Décembre 2019} \begin{document} \maketitle @@ -23,20 +27,20 @@ \section*{Introduction} \input{Parties/intro.tex} -\section{Shaders} +\section{Bruit de Perlin} \input{Parties/chap1_intro.tex} -\subsection{Intérêts} +\subsection{Principe} \input{Parties/chap1_1.tex} -\subsection{Exemples} +\subsection{Applications} \input{Parties/chap1_2.tex} \subsection{Limitations} \input{Parties/chap1_3.tex} -\section{Gabor noise} +\section{Bruit de Gabor} \input{Parties/chap2_intro.tex} -\subsection{Intérêts} +\subsection{Principe} \input{Parties/chap2_1.tex} -\subsection{Limites} +\subsection{Nouvelles applications} \input{Parties/chap2_2.tex} \section{Phasor noise}