Brevet FR2888377A1 — publié le 20070112

Procédé et outil de génération ou de modification de cartes procédurales à structure en arbre pour la modélisation de scènes La présente invention concerne les cartes procédurales pour la modélisation de scènes. De nombreux outils sont connus afin de procéder à la modélisation des scènes, que ce soit dans le cadre de la création d'images, jeux vidéo, de clips, de films, ou autres. Les outils connus ne permettent cependant pas de créer des représentations réellement fidèles de la réalité. Ceci est particulièrement vrai dans le cas de la création de scènes complexes, comportant une grande quantité d'objets à répartir ou distribuer dans un espace donné. II peut s'agir par exemple de la création d'une forêt, dans laquelle il faut répartir les arbres de façon la plus réaliste possible. Les procédés actuels comportent de nombreux inconvénients. Par exemple, à la main, le temps nécessaire est très important, ce qui entraîne des coûts élevés. Une répartition générée automatiquement est trop homogène, et contribue à créer une forêt d'un aspect artificiel. Ainsi, on utilise parfois des matrices de positionnements, comportant des paramètres aléatoires. Il n'est toutefois pas possible de retoucher ou modifier, tout au moins partiellement à la main les scènes créées. Pour pallier ces différents inconvénients, l'invention prévoit un procédé pour générer ou modifier une carte procédurale de modélisation de scène à structure en arbre comportant une pluralité d'étages, chacun avec au moins un noeud auquel est associé au moins un paramètre, comportant les étapes consistant à : a) considérer les données d'au moins un objet modèle sur lequel la carte procédurale est susceptible d'agir de façon à modéliser une scène; b) en fonction de ces données, définir la valeurs des paramètres de modélisation de la scène et introduire ceux-ci dans un outil de génération de cartes procédurales; Allego/model_scènes_fr2.1 c) traiter lesdits paramètres à l'aide dudit outil, de façon à générer ladite carte de modélisation de sorte que la carte ait une structure en arbre ( tree driven map ) ; d) transmettre la carte ainsi obtenue à un outil de gestion (génération) de rendu de scène comportant les données relatives à au moins une scène susceptible d'être modifiée par la carte de modélisation; e) positionner la carte sur la surface utile d'une scène à modifier (la surface où on souhaite effectuer les modifications) ; f) associer à cette surface les niveaux de gris de la carte; g) interpréter ces niveaux de gris de façon à modifier la scène. Ce procédé permet de modifier des scènes selon une infinité de façons. Par exemple, la carte de modélisation peut représenter une probabilité de positionner ou non un objet modèle à une position donnée, ou, selon un autre exemple, le niveau d'étirement d'un objet modèle, ou encore, toujours selon un autre exemple, le niveau de rotation d'un objet modèle, etc. Grâce à cette méthode, ladite carte est modifiable localement. La possibilité de modifier localement les cartes permet d'affiner les scènes modifiées de façon très précise, sans perte de temps (sans devoir tout recommencer à chaque itération). Cela permet aussi de réutiliser des cartes existantes pour en produire rapidement et simplement de nouvelles qui ne comportent que de légères modifications. Selon un mode de réalisation avantageux, le procédé selon l'invention comporte par ailleurs, avant l'étape consistant à définir les valeurs des paramètres, l'étape consistant à transmettre à l'outil de génération de cartes procédurales au moins un des paramètres de la scène de base. Selon un autre mode de réalisation avantageux, le procédé selon l'invention comporte par ailleurs, avant l'étape consistant à définir les valeurs des paramètres, l'étape consistant à transmettre à l'outil de génération de cartes procédurales au moins un des paramètres de l'objet modèle. Al l ego/model_scènes_fr2.1 De m anière avantageuse, le p rocédé selon l'invention c omporte par a illeurs I es étapes consistant à : -fournir un outil de sélection de noeud, permettant la sélection d'au moins un noeud d'un étage; -sélectionner au moins un noeud; -fournir un outil de modification de paramètre permettant la modification d'au moins un paramètre du ou des noeuds sélectionnés; -sélectionner au moins un paramètre dudit noeud à modifier; -modifier ledit paramètre; -traiter lesdits paramètres, y compris le paramètre modifié, de façon à générer ladite carte modifiée. Le procédé comporte avantageusement une étape de sélection d'un étage, puis la 15 sélection d'au moins un noeud de cet étage pour modification d'au moins un paramètre de ce noeud. Selon une variante avantageuse, la carte procédurale à structure en arbre peut être représentée par une équation du type: F(2Jx k) (j, k) eT dans laquelle: -F est une fonction (ou morphlette) R" .R -x est un vecteur du type (xi, x2, xn); -T est un arbre comprenant des noeuds (j, k) et dans lequel -j représente l'étage sélectionné, parmi un nombre total d'étages potentiels jmax (j e (0, 1, 2, jmax) -k est un vecteur de déplacement pour chaque noeud N, du type (xi, x2 30,..., Xn) La possibilité d'effectuer des modifications locales, c'est à dire au niveau de seulement un seul ou plusieurs noeuds, est due au fait que la carte est agencée Allego/model_scènes_fr2.1 2888377 4 ou structurée en arbre. Une telle structure permet d'agir localement, par exemple au niveau d'un noeud ou d'une branche ou de portions de branches, sans affecter pour autant le reste des noeuds ou branches. De manière avantageuse, il est également possible de choisir que les modifications soient récursives ou pas. La méthode et les outils selon l'invention permettent de préférence d'agir soit localement ou sur une carte entière. Les paramètres modifiables sont avantageusement sélectionnés dans la liste comprenant: une morphlette F, le nombre maximum d'étages (jmax). De manière avantageuse, une carte est susceptible d'être représentée par une équation du type: 2-i" F (2i x k) , k) (j, k)eTp dans laquelle: -F est une fonction (ou morphlette) Rn -->R -x est un vecteur du type (xi, x2, xr, ); - Tp représente un arbre pourvu d'un paramètre d'intermittence (p), comportant des noeuds (j, k), dans lesquels -j indique l'étage sélectionné, parmi un nombre total d'étages potentiels jmax (j e (0, 1, 2, jmax) -k est un vecteur de déplacement pour chaque noeud N de type (xi, x2 25, X ) -H représente une valeur de paramètre de Hurst; (comme par exemple la rugosité) - représente un nombre aléatoire; Les paramètres modifiables sont de préférence sélectionnés dans la liste comprenant: une morphlette F, le nombre maximum d'étages (jmax), le paramètre de Hurst (H), un nombre aléatoire (g), un paramètre d'intermittence (p). Al l ego/model_scènes_fr2.1 La somme exprimée dans les différentes relations est de préférence une somme généralisée. Tout type d'opération ou de fonction peut ainsi être utilisé, comme par exemple la soustraction, la multiplication, la fonction maximum ou minimum, etc. Des paramètres peuvent être affectés de façon récursive aux noeuds enfants (noeuds dépendants) des noeuds sélectionnés. Une carte peut être est dépendante du temps. Un seul, plusieurs, ou la totalité des 10 paramètres peuvent être appelés à varier en fonction du temps. L'invention prévoit par ailleurs un outil de génération ou de modification de cartes procédurales pour la mise en oeuvre du procédé préalablement cité, permettant la génération ou la modification de cartes procédurales de modélisation de scènes à structure en arbre, comportant une pluralité d'étages, chacun avec au moins un noeud auquel est associé au moins un paramètre, comprenant: -une unité d'entrée de paramètres de cartes, pour recevoir des paramètres prédéfinis de cartes procédurales prenant en compte les données d'au moins un objet modèle sur lequel la carte procédurale agira afin de modéliser une scène; -une unité de traitement destinée à traiter lesdits paramètres, de façon à générer ladite carte de modélisation de scène, de sorte que la carte ait une structure en arbre; -des instructions de mise en oeuvre, pour assurer le fonctionnement de l'outil et notamment de l'unité de traitement; -une sortie, permettant de transmettre les cartes produites. Ladite sortie est de préférence utilisée afin de transmettre la carte à un outil de gestion de rendu de scène. Selon une variante avantageuse, ces deux outils sont combinés en un seul. Ledit outil comporte avantageusement: -un outil de sélection de noeuds permettant la sélection d'au moins un noeud d'un étage; Allego/model_scènes_fr2.1 -un outil de sélection et de modification de paramètres de cartes, pour d'une part sélectionner un paramètre à modifier, et d'autre part permettre l'entrée de la nouvelle valeur du paramètre; -une unité de traitement destinée à traiter lesdits paramètres, de façon à générer ladite carte de modélisation de scène modifiée; -des instructions de mise en oeuvre, pour assurer le fonctionnement de l'outil et notamment de l'unité de traitement; -une sortie, permettant de transmettre la carte modifiée. L'outil de sélection de noeuds comporte avantageusement une unité de sélection de profondeur, permettant de sélectionner l'étendue de la modification à réaliser sur l'arbre. L'outil de sélection de noeuds comporte avantageusement un cadre mobile de localisation de noeud-objet (ou de noeud). Ce cadre peut être commandé soit par un moyen approprié tel un curseur directement depuis l'interface de travail, soit depuis une commande informatique de type connue telle une souris, un pointeur, les flèches du clavier, etc. Selon une autre variante avantageuse, l'outil de génération ou de modification de cartes procédurales comporte par ailleurs une entrée permettant de recevoir les paramètres soit d'un objet modèle, soit d'une scène. L'invention sera maintenant décrite en référence aux figures 1 à 43 jointes, présentées uniquement à des fins d'exemples non limitatifs, dans lesquelles: -les figures 1 à 20 illustrent des exemples très simples de cartes procédurales montrant l'effet d'une structure à arbre; -les figures 21 à 25 illustrent des exemples simples montrant les types de modifications locales que l'invention permet de réaliser; -les figures 26 à 31 illustrent schématiquement les principes et les paramètres utilisés pour les cartes procédurales à structure à arbre; Allego/model_scènes_fr2. 1 -les figures 32 à 37 et 39 illustrent des exemples d'interface de travail conformément au précédé et aux outils selon l'invention; -la figure 38 illustre un exemple d'utilisation de cartes procédurales; -les figures 40 à 43 présentent des exemples de cartes pouvant servir à créer ou 5 modéliser une scène donnée. La présente invention est basée sur l'utilisation de cartes procédurales à structure à arbre. Les figures 26 à 31 illustrent des exemples de tels arbres (pour le cas spécifiques dans lequel n=1, où n est la dimension du support. Par exemple, n=2 pour une image, n=3 pour un volume, n= 1 pour une courbe). Dans l'exemple de la figure 26, à j=0, on retrouve un noeud simple. Deux noeuds enfants ou fils se trouvent au niveau j=1, et quatre au niveau j=2. Tous les noeuds sont similaires. La fonction F contribue pour beaucoup à la définition de la forme de base du noeud-objet. Elle est également désignée dans ce document par le terme morphlette . Une morphlette peut prendre pratiquement n'importe quelle forme. Une telle carte procédurale à structure en arbre peut être représentée par l'équation suivante: IEF(2'x-k),(j,k) j k formant un arbre T, et également représentée dans de document par: F (2' x - k) (j,k)eT dans lequel: -F est une fonction ou morphlette Rn +R -x est un vecteur du type (xi, x2, xn); -T est un arbre comprenant des noeuds (j, k) et dans lequel -j indique le niveau actuel, parmi un nombre potentiel total de niveaux 30 jmax (j e (0, 1, 2, jmax) ; -k est un vecteur de déplacement pour chaque noeud N et du type (xi, x2 Xn). Allego/model_scènes_fr2.1 Les figures 26 à 31 illustrent des exemples de modifications locales qu'il est possible de réaliser grâce à la structure en arbre selon l'invention. Par exemple, à la figure 27, des valeurs différentes de H ont été attribuées. Ainsi, le demi arbre de gauche de la figure 10 comporte u ne valeur de H de 0,2; celui de droite, une valeur de H de 0,8. L'arbre est symétrique mais l'invention permet de produire des arbres non symétriques. C e t ype d e modification p eut permettre de modifier localement le niveau de rugosité d'une carte: en tendant vers H=1 une surface sera plus lisse; en tendant vers H=O, une surface sera plus rugueuse. A la figure 29, certains sous-arbres ou branches sont supprimés. Le paramètre P représente une probabilité de supprimer des branches d'un arbre. Avec p=0,2, il y a une probabilité de o,2 de supprimer des branches; pour p=0,8, cette probabilité est de 0,8. Ce paramètre peut être ajusté pour conserver ou non un forte densité de sous-arbres. La figure 30 illustre les possibilités offertes par le paramètre D, soit le décalage. Le décalage permet de déplacer un ou plusieurs noeuds de leurs positions d'origine. Enfin, la figure 31 illustre les grands types de paramètres avec lesquels l'invention permet de travailler pour créer ou modifier des cartes procédurales: les paramètres d'action tels que p et D, et les paramètres de structure, tels que H, F et i;. Les figures 1 à 5 illustrent des exemples de cartes procédurales possédant des structures en arbre. Par exemple, la figure 1 présente un exemple dans lequel une morphlette de type F= 1, si X2 + y2 Pour j=1, au second niveau, figure 2, on retrouve quatre noeud-objets, dans cet exemple, quatre disques de plus petite taille, chacun étant uniforme. Cette couche est donc divisée en quatre sections, chacune formant un noeud-objet. Chaque Al lego/model_scènes_fr2.1 section occupe '/4 de la carte initiale, selon l'arrangement de type quadratique et uniforme de cet exemple. On voit donc l'effet des principaux paramètres: j indique le niveau actuel, k permet le déplacement de noeud-objets, dans cet exemple depuis le centre de la carte vers le centre d'un des quarts. La morphlette de base F demeure inchangée. La figure suivante (figure 3) illustre le 3e niveau 0=2), pour une même morphlette. Depuis le niveau précédent, il y a une nouvelle subdivision en 4 quarts, chaque quart possédant son noeud-objet, dans cet exemple, un disque similaire, mais toujours plus petit. La figure 4 montre la somme de ces différentes couches. Cet exemple très simple permet de bien visualiser les formes de base de chaque niveau. La figure 5 illustre une somme du même type mais pour un nombre plus élevé de niveaux, donc un nombre plus élevé de noeud-objets, d'où une structure plus complexe. Les figures 6 à 10 sont comparables aux figures 1 à 4, mais basées sur une morphlette différente: F(x,y) = exp ( -x2 - y2). Le noeud-objet résultant est une fonction de type Gauss à deux dimensions, plutôt qu'un disque. En comparant les figures des couches similaires, par exemple les figures 1 et 6 pour j =0, les figures 2 et 7, pour j = 1, ainsi que les figures 3 et 8 pour j = 2, il est possible d'observer les effets de la modification de la morphlette de base utilisée. Les structures sont similaires, mais avec des noeuds-objets présentant un aspect différent. La comparaison des figures 4 et 5 avec respectivement les figures 9 et 10, révèle des effets similaires, tout d'abord avec un nombre de niveaux restreint, (jmax = 2) aux figures 4 et 9, puis, aux figures 5 et 10, avec un nombre de niveaux ajusté de façon à correspondre aux dimensions d'un pixel. Dans les exemples précédents, du niveau J au niveau j+1, la taille du support est divisée par deux. Si l'amplitude de la fonction ou morphlette avec laquelle on effectue la sommation demeure inchangée, le niveau d'énergie du noeud-objet est doublé. Pour éviter une telle situation et afin de contrôler le niveau d'énergie d'un A l i ego/mod et _sc èn es_fr2. 1 niveau à l'autre, l'équation peut être adaptée (en ajoutant 2"j à l'équation) avec le résultat suivant: 1 F (2' x k) (j, k)eT La Figure 11 illustre une morphlette en forme de disque, où j = jmax, avec une équation modifiée afin de considérer les niveaux d'énergie. La carte résultante est plus nette en comparaison avec celle de la figure 5. La Figure 12 est similaire à la figure 5, mais basée sur une morphlette de type Gauss. Dans les exemples précédents, les cartes sont toujours configurées avec une structure uniforme, répétée de façon systématique à chaque niveau ou étage ou couche. Les cartes résultantes, en particulier lorsqu'elles sont utilisées afin de définir des textures procédurales, peuvent parfois avoir une certaine tendance à présenter un aspect artificiel . Ceci est principalement du au fait que les objets naturels ne sont en général pas basés sur de telles structures uniformes et rigoureusement répétitives. Ainsi, afin de mieux simuler les objets naturels, l'équation mathématique peut, selon une variante avantageuse, être complétée avec un nombre aléatoire a,k). La relation mathématique résultante est alors: E F (2i x k) , k) (j, k) eT dans laquelle Ç est un nombre aléatoire. Dans le cas d'une carte à structure en arbre incluant un nombre aléatoire, l'arbre n'est plus homogène et la distribution des différents noeudsobjets est basée sur 30 une lois aléatoire donnée pour Çü , k). La figure 13 illustre une carte procédurale obtenue avec une telle équation, dans laquelle on retrouve un nombre aléatoire. On observe que la structure régulière Allego/model_scènes_fr2.1 quadratique des exemples précédents n'est plus reproduite dans ces exemples. L'orientation et la structure de la carte sont partiellement influencés par le nombre aléatoire. L'importance de cette influence peut être ajustée en sélectionnant un paramètre d'une valeur plus faible ou plus élevée. Ainsi, l'exemple de la figure 13 correspond à l'exemple de la figure 11 avec ü , k) étant une variable aléatoire de loi uniforme comprise entre -1 et +1. Selon une autre variante, la relation mathématique peut encore être optimisée avec l'aide d'un paramètre de HURST, désigné H. Pour une carte donnée, la valeur d e H est avantageusement une constante. Par exemple, H e [0, 1]. Ce paramètre contribue à la gestion des lois d'échelles dans des processus auto-similaires. Avec l'aide d'un tel paramètre, le processus de sommation à structure à arbre est alors auto-similaire en lui-même. En suivant une telle loi, même après un changement d'échelle, un objet similaire est observable tel qu'avant le changement d'échelle. Par exemple, un fragment de nuage ressemble à un nuage entier. Le paramètre H est aussi lié linéairement à la dimension fractale. Pour une faible valeur de H, le signal est irrégulier, et la dimension fractale est élevée. Dans les cartes de textures, le paramètre de Hurst correspond en pratique à un paramètre de rugosité. Lorsque H -0, la surface correspondante est plus lisse; lorsque H-->O, la surface devient plus rugueuse, tel que montré par exemple aux figures 14 à 16. A la figure 14, l'exemple de la figure 13 est utilise, avec H=0.2. A la figure 15, l'exemple de la figure 13 est utilise, avec H=0.5. A la figure 16, l'exemple de la figure 13 est utilise, avec H=0.8. La figure 27 montre un exemple d'arbre comprenant des noeuds comportant différentes valeurs de H. En prenant en compte ce paramètre, la relation mathématique devient: Allego/model_scènes_fr2.1 2888377 12 2'" F (2' X k) , k) (j, k)eT dans laquelle: -F est une fonction Rn --*R -x est un vecteur du type (xi, x2, x ); - T représente un arbre comprenant des noeuds (j, k), dans lesquels -j indique le niveau en cours, parmi un nombre total de niveaux potentiels jmax (j e (0, 1, 2, jmax) -k est un vecteur déplacement pour chaque noeud N et du type (xi, x2 Xn) -H représente le paramètre de Hurst; 15 - représente un nombre aléatoire; Selon une autre variante, la relation mathématique peut encore être améliorée grâce à l'addition du paramètre Tp représentant un arbre pourvu d'un paramètre d'intermittence (p), et comprenant les noeuds ( j, k), avec pour équation 20 résultante: > 2'"F(2'x-k),k) (j, k)eTp où: -F est une fonction Rn -+R -x est un vecteur du type (xi, x2, x ); - Tp représente un arbre pourvu d'un paramètre d'intermittence (p), et comprenant les noeuds (j, k), dans lesquels: -j indique le niveau en cours, parmi un nombre total de niveaux potentiels jmax (j e (0, 1, 2, jmax) -k est un vecteur déplacement pour chaque noeud N et du type (xi, x2 Xn) Allego/model_scènes_fr2.1 2888377 13 - H représente un paramètre de rugosité; - représente un nombre aléatoire; p représente une probabilité de supprimer des branches de l'arbre T. Par exemple, à la figure 17, p=0.2, signifie une probabilité de 0.2 de supprimer des branches (ou des sous-arbres) de l'arbre T. A la figure 18, p=0.8, signifiant une probabilité d e 0.8 d e supprimer des branches (ou sous- arbres) d e l'arbre T. L a figure 18 présente un exemple d'arbre influencé par une valeur donnée d'un paramètre p. Cet exemple montre que certains noeuds ont été supprimés ou sont non existants. La structure ou configuration en arbre permet également de fournir un effet spécifique additionnel ou une modification de carte avec un autre paramètre, D, correspondant au déplacement d'un ou plusieurs noeuds par rapports à leurs positions d'origine. Les figures 19 et 20 illustrent cette possibilité. Dans ces figures, construites avec un exemple similaire à celui de la figure 15, p = 0 et D = 0.2. Cela signifie une probabilité entre 0 et 20 % de déplacer un noeudobjet. A la figure 20, D = 0.5. Une comparaison entre les deux figures montre clairement un déplacement plus important de certains des noeudsobjets, sur la base d'une lois aléatoire. La figure 30 montre un exemple d'arbre par l'utilisation d'un déplacement D. La relation correspondante devient alors: 2-'" F (2' x k) , k) (j, k)eTD,p où: -F est une fonction Rn >R - x est un vecteur du type (xi, x2, xn); - TD,p représente un arbre pourvu d'un paramètre d'intermittence (p), et comprenant les noeuds (j, k), et un déplacement D, dans lesquels: Allego/model_scènes_fr2.1 -j indique le niveau en cours, parmi un nombre total de niveaux potentiels jmax (j e (0, 1, 2, jmax) - k est un vecteur déplacement pour chaque noeud N et du type (xi, x2 Xn) -H représente un paramètre de rugosité; représente un nombre aléatoire; Bien entendu, différentes relations sont également possibles grâce à la suppression ou à l'addition d'un ou plusieurs paramètres, par exemple selon une séquence différente de celle présentée dans les exemples précédents. Toute autre relation utilisant une combinaison différente de ces paramètres est également comprise dans l'objet de la présente invention. La figure 31 propose une présentation différente des noeuds d'un arbre en fonction du type d'effet de chacun des paramètres. Deux familles ou catégories de paramètres sont présentées: les paramètres "d'action", tels que l'intermittence p et le déplacement D, et les paramètres structurels , tels que le paramètre de Hurst (H), la morphlette F et le paramètre aléatoire. EXEMPLES DE MODIFICATIONS Les figures 2 1 à 25 illustrent des exemples d e modifications de cartes q u'il e st possible de réaliser à l'aide du procédé et des outils selon l'invention. A la figure 22, le cadre mobile 23 de l'outil de sélection de noeud 20 est localisé sur un noeud-objet 51 à traiter. La figure suivante (figure 23) illustre le résultat suite à la suppression de ce noeud. On voit très bien que les modifications peuvent donc être faites à un niveau local, sans affecter le reste de la carte. Les figures 24 et 25 illustrent un processus similaire de modification des paramètres au niveau d'un noeud. Dans cet exemple, la fonction ou morphlette F a été modifiée, affectant de ce fait la forme de base du noeud-objet de ce quart de carte. En effet, on aperçoit à la figure 25 les disques de la figure 24 qui sont à présent amincis ou écrasés. Al lego/model_scènes_fr2.1 Les figures 32 à 37 et 39 présentent des exemples d'interfaces de travail obtenues par un outil 10 selon l'invention. Selon diverses variantes de réalisation, un tel outil peut être fourni s oit pour la modification d e c artes p rocédurales existantes, s oit pour la génération et la modification de telles cartes. L'outil de base comporte un outil 20 de sélection de noeuds, comprenant un sélecteur 21 de niveau J, et un sélecteur de noeud, permettant la sélection d'un noeud donné dans le niveau choisi. En pratique, tel que décrit ci-après, l'utilisateur sélectionne une couche, correspondant à un niveau J donné et un noeud-objet, correspondant à un noeud K. L'outil 10 comporte un outil de paramétrage 30, permettant de sélectionner un paramètre, soit pour lui donner une première valeur, ou encore pour la modifier ou l'ajuster, selon le cas. Pour modifier une carte, un ou plusieurs noeuds 41 sont tout d'abord sélectionnés. Un outil tel que le sélecteur 20 de noeud offre cette possibilité. Un tel outil peut avantageusement fournir deux fonctions: une unité 21 de sélection de niveau, et une unité de sélection de noeud. L'outil de sélection de noeud comporte une cible d'écran mobile 23. Cette cible est avantageusement configurée de façon à permettre de délimiter au moins un noeud-objet 51 dans une couche donnée. Dans les exemples illustrés, la cible est de forme sensiblement carrée. Pour faciliter la sélection des noeuds, l'outil comporte un mode de déplacement de façon à permettre l'auto-positionnement de la cible sur un noeud-objet ou sur un ensemble de noeuds-objets, par exemple les noeuds les plus près, lorsque la cible n'est pas parfaitement positionnée par l'utilisateur sur un noeud. La cible peut être commandée par tout type de commande classique d'un ordinateur, telle une souris, un pointeur, des touches du clavier telles que les flèches, ou une commande à distance telle une machine, un circuit spécialement conçu ou un logiciel de pilotage. Elle peut également être contrôlée directement depuis l'interface de l'outil 20 de sélection de noeud, par exemple à l'aide d'un curseur 24 contrôlant le déplacement de la cible 23 sur la carte. All ego/model_scènes_fr2.1 De manière avantageuse, l'outil 23 est configuré de sorte que lorsqu'un niveau est sélectionné, la forme et la taille du cadre 23 s'adapte à ceux du noeud-objet 51 du niveau correspondant. L'outil 23 permet de sélectionner tout noeud du niveau sélectionné. Selon une autre variante, l'outil 20 de sélection de noeuds comporte un moyen de mise en évidence, permettant de bien indiquer à l'utilisateur quels noeuds sont sélectionnés. Une telle indication peut être réalisée par changement de couleur ou d'intensité, un clignotement, ou tout autre moyen visuel efficace. L'outil 10 comporte de préférence un sélecteur 26 de profondeur, permettant à l'utilisateur d'indiquer si l'opération en cours concerne uniquement les noeuds du niveau sélectionné ou si les sous-arbres doivent également être traités de façon similaire. L'outil de paramétrage 30 permet tout d'abord de sélectionner un paramètre à considérer. Puis, sa nouvelle valeur (modifiée ou initiale) peut êtreentrée. L'outil est avantageusement adapté afin de pouvoir traiter au moins un, mais de préférence tous les types de paramètres illustrés dans ce document, tels que: F: 34, H: 35, 36, p: 33, D(x): 31, D(y): 32. L'outil 10 comporte de préférence un sélecteur Global (G) / Local (L). Le mode global est sélectionné à l'aide du sélecteur 37 si on souhaite modifier une carte dans sa totalité. Les unités de niveau et de sélection de noeud peuvent alors être désactivés ou pas utilisés. Les modifications sont réalisées telles que décrit préalablement, mais l'utilisateur a la possibilité d'appliquer ces modifications à une carte entière. Bien sûr, il peut procéder à certaines modifications d'une même carte en mode local, et d'autres en mode global. En mode global, les étapes relatives à la sélection d'un niveau et d'un noeud ne sont évidemment pas applicables. Les modifications locales impliquent que les modifications sont intégrées au niveau des noeud-objets, pour au moins un noeud-objet. Allego/model_scènes_fr2.1 L'outil 10 peut également permettre la possibilité de supprimer un ou plusieurs noeuds. Une suppression virtuelle peut être également réalisée en utilisant une morphlette F=0. L'interface permet à l'utilisateur de donner une valeur aux différents paramètres. Par exemple, pour F, l'utilisateur entre une fonction, telle que celle illustrée. Selon une variante, un menu déroulant peut proposer à l'utilisateur une série de fonctions parmi lesquelles il peut choisir. II en est de même pour le paramètre Pour le paramètre p, l'utilisateur donne une valeur, par exemple entre 0 et 1, par exemple à l'aide d'un curseur ou autre outil similaire. Un menu déroulant peut aussi être proposé. Pour les paramètres H et D (pour x et y), les valeurs peuvent être entrées de façon similaires à celle du paramètre p, avec des valeurs par exemple entre 0 et 1 pour H, et en pourcentage pour D. Une échelle de temps 70 (représentée aux figures 35 à 37) représentant le temps permet de travailler avec des cartes dont les paramètres peuvent être appelés à varier en fonction du temps. Le procédé ainsi que les outils présentés dans le cadre de la présente invention ont été présentés avec des images et cartes simples. Le même procédé et les mêmes outils s'appliquent de façon similaire à des séries d'images telles que des séquences vidéo. Les figures 33 à 37 présentent des exemples de modifications apportées à des cartes grâce à l'outil selon l'invention. A la figure 33, les valeurs de D sont modifiées par rapport aux valeurs initiales (zéro) de la figure 32. A la figure 34, la valeur de H est modifiée pour une valeur inférieure. Les effets induits par ces modifications sont bien visibles sur ces figures. On aperçoit ainsi à la figure 33 le cadre 23 et les noeuds-objets correspondants occuper une nouvelle position, et à la figure 34 l'effet de la nouvelle valeur de H sur la rugosité. Les figures 35, 36 et 37 présentent des variantes d'interfaces 10. Un sélecteur 60 2D/3D est ajouté, afin de sélectionner une valeur de n. Une échelle de temps Al lego/model_scènes_fr2.1 ( timeline ) est également ajoutée, afin d'affecter une valeur de temps à tout paramètre susceptible de dépendre ou d'évoluer en fonction du temps. Ces interfaces ainsi modifiées peuvent être utiles afin de permettre de travailler avec différents types de shaders . Les figures 36 et 37 illustrent des modifications de paramètres similaires aux modifications effectuées aux figures 33 et 34. La figure 38 illustre un exemple d'utilisation de cartes procédurales, dans lequel différentes cartes sont combinées afin de générer une représentation virtuelle d'un matériau complexe tel qu'un mur constitué de pierres de différentes tailles, de différentes formes et de différentes textures. Les figures 40 à 43 présentent des exemples de cartes pouvant servir à créer ou modéliser une scène donnée. Dans le cas présent, on souhaite disposer des objets tels que des petits cailloux dans un environnement défini. L'environnement lui-même peut être défini par des moyens ou outils classiques, tels qu'un outil de gestion ou génération de rendu. La figure 40 présente un exemple de carte servant à définir les emplacements des cailloux dans la scène pré-définie. La figure 42 montre la scène en question une fois les cailloux positionnés. On note bien ici l'utilité de paramètres tels que qui permet un positionnement au moins partiellement aléatoire des cailloux, simulant ainsi un cas où les cailloux auraient été jetés sur le sol, de sorte que les positions résultantes sont le fruit du hasard. La figure 41 montre une carte qui permet de définir de nouvelles caractéristiques dimensionnelles et d'orientation pour les objets de la figure 42. Pour générer la scène modifiée, la carte de modélisation est transmise à un outil de gestion de rendu, puis elle est ensuite positionnée sur la surface utile de la scène à modifier dans ce cas, le sol sur lequel les cailloux sont disposés-. Les niveaux de gris de la carte peuvent alors être associés à cette surface, puis interprétés, de façon à modifier la scène. La scène présentée à la figure 43 présente la scène modifiée grâce à la carte de la figure 41. On note que les petits cailloux ont des orientations et des tailles différentes par rapport à la scène de la figure 42. Les modifications de tailles et d'orientation sont définies par la carte de modélisation 41. En utilisant le même Allego/model_scènes_fr2.1 procédé et les mêmes outils, d'autres types de modifications auraient pu être apportées, sans sortir du cadre de l'invention. Bien que les différents exemples de réalisation présentés dans le cadre de l'invention concernent des cartes de textures, le procédé et le dispositif selon l'invention concernent également et peuvent être utilisés avec d'autres types de cartes. Par exemple, dans le domaine des "shaders", le procédé et le dispositif selon l'invention peuvent être utilisés avec les types suivants de cartes: déplacement, relief ( bump ) , réflectivité ( reflectivity ), spécularité ( specularity ), couleur ambiante ( ambient color ), couleur diffuse ( diffuse color ), couleur spéculaire ( specular color ), transparence ( transparency ), couleur, brillance ( shininess ), auto-émission ( self-emission ), anisotropie ( anisotropy ), indice de réfraction ( refractive index ), etc. Selon une autre variante de réalisation, la présente invention peut également être mise en oeuvre en tant de plug-in pour un produit ou dispositif ou logiciel existant. Les exemples et modes de réalisation sont uniquement présentés à des fins illustratives et à titre d'exemples non limitatifs. D'autres exemples ou modes de réalisation peuvent être déclinés sans sortir du cadre de la présente invention. Les revendications qui suivent englobent de telles modifications. A llego/model_scènes_fr2. I REVENDICATIONS 1. Procédé pour générer ou modifier une carte procédurale (50) de modélisation de scène à structure en arbre (40) comportant une pluralité d'étages (43), chacun avec au moins un noeud (41) auquel est associé au moins un paramètre, comportant les étapes consistant à : a) considérer les données d'au moins un objet modèle sur lequel la carte procédurale est susceptible d'agir de façon à modéliser une scène; b) en fonction de ces donnée, définir la valeurs des paramètres (31, 32, 33, 34, 35, 36) de modélisation de la scène et introduire ceux-ci dans un outil de génération de cartes procédurales (10) ; c) traiter lesdits paramètres à l'aide dudit outil, de façon à générer ladite carte de modélisation (50) de sorte que la carte ait une structure en arbre (40) ; d) transmettre la carte ainsi obtenue à un outil de gestion (génération) de rendu de scène comportant les données relatives à au moins une scène susceptible d'être modifiée par la carte de modélisation (50); e) positionner la carte sur la surface utile d'une scène à modifier (la surface où on souhaite effectuer les modifications) ; f) associer à cette surface les niveaux de gris de la carte; g) interpréter ces niveaux de gris de façon à modifier la scène. 2. Procédé pour générer ou modifier une carte procédurale de modélisation de scène selon la revendication 1, dans laquelle ladite carte est modifiable 25 localement. 3. Procédé pour générer ou modifier une carte procédurale de modélisation de scène selon l'une des revendications 1 ou 2, comportant par ailleurs, avant l'étape consistant à définir la valeurs des paramètres, l'étape consistant à transmettre à l'outil de génération de cartes procédurales au moins un des paramètres de la scène de base. All ego/model_scènes_fr2.1 4. Procédé pour générer ou modifier une carte procédurale de modélisation de scène selon l'une des revendications précédentes, comportant par ailleurs, avant l'étape consistant à définir la valeurs des paramètres, l'étape consistant à transmettre à l'outil de génération de cartes procédurales au moins un des paramètres de l'objet modèle. 5. Procédé pour générer ou modifier une carte procédurale de modélisation de scène selon l'une des revendications précédentes, comportant par ailleurs les étapes consistant à : -fournir un outil de sélection de noeud (20), permettant la sélection d'au moins un noeud (41) d'un étage; sélectionner au moins un noeud (41; 51); - fournir un outil de modification de paramètre (30) permettant la modification d'au moins un paramètre (31, 32, 33, 34, 35, 36) du ou des noeuds sélectionnés; 15 sélectionner au moins un paramètre dudit noeud à modifier; - modifier ledit paramètre; - traiter lesdits paramètres, y compris le paramètre modifié, de façon à générer ladite carte modifiée. 6. Procédé pour générer ou modifier une carte procédurale de modélisation de scène, selon la revendication 5, comportant par ailleurs une étape de sélection d'un étage (43; 52) ; puis la sélection d'au moins un noeud (41; 51) de cet étage pour modification d'au moins un paramètre de ce noeud. 7. Procédé selon l'une des revendications précédentes, dans lequel la carte procédurale à structure e n arbre peut être représentée par u ne équation d u type: F (2i x k) (j, k) eT dans laquelle: -F est une fonction (ou morphiette) -x est un vecteur du type (xi, x2, )(" ); Allego/model_scènes_fr2.1 -T est un arbre comprenant des noeuds (j, k) et dans lequel -j représente l'étage sélectionné, parmi un nombre total d'étages (43) potentiels jmax (j e (0, 1, 2, jmax) - k est un vecteur de déplacement pour chaque noeud N, du type (xi, x2 5,...,Xn) 8. Procédé selon la revendication 7, dans lequel les paramètres modifiables sont sélectionnés dans la liste comprenant: une morphlette F, le nombre maximum d'étages (jmax). 9. Procédé selon l'une des revendications 1 à 6, dans lequel la carte est susceptible d'être représentée par une équation du type: 2-iHF(2ix-k),k) 15 (j, k)eTp dans laquelle: -F est une fonction (ou morphlette) Rn -+R -x est un vecteur du type (xi, x2, x ); - Tp représente un arbre (40) pourvu d'un paramètre d'intermittence (p), comportant des noeuds (j, k), dans lesquels j indique l'étage sélectionné, parmi un nombre total d'étages potentiels jmax (j e (0, 1, 2, jmax) -k est un vecteur de déplacement pour chaque noeud N de type (xi, x2 25, Xn) -H représente une valeur de paramètre de Hurst; (comme par exemple la rugosité) -t représente un nombre aléatoire; 10. Procédé selon la revendication 9, dans lequel les paramètres modifiables sont sélectionnés dans la liste comprenant: une morphlette F, le nombre maximum d'étages (jmax), le paramètre de Hurst (H), un nombre aléatoire (g), un paramètre d'intermittence (p). Allego/model_scènes_fr2.1 11. Procédé selon l'une des revendications 7 à 10, dans lequel la somme est une somme généralisée. 12. Procédé selon l'une des revendications précédentes, dans lequel les paramètres sont affectés de façon récursive aux noeuds enfants des noeuds sélectionnés. 13. Procédé selon l'une des revendications précédentes, dans lequel la carte est 10 dépendante du temps. 14.Outil de génération ou de modification de cartes procédurales pour la mise en oeuvre du procédé selon l'une des revendications 1 à 13, permettant la génération ou la modification de cartes procédurales (50) de modélisation de scènes à structure en arbre (40), comportant une pluralité d'étages (43), chacun avec au moins un noeud (41) auquel est associé au moins un paramètre, comprenant: -une unité d'entrée (30) de paramètres (31, 32, 33, 34, 35, 36) de cartes, pour recevoir des paramètres prédéfinis de cartes procédurales prenant en compte les données d'au moins un objet modèle sur lequel la carte procédurale agira afin de modéliser une scène; -une unité de traitement destinée à traiter lesdits paramètres, de façon à générer ladite carte de modélisation de scène, de sorte que la carte ait une structure en arbre; -des instructions de mise en oeuvre, pour assurer le fonctionnement de l'outil et notamment de l'unité de traitement; -une sortie, permettant de transmettre les cartes produites. 15.Outil de génération ou de modification de cartes procédurales (10) selon la 30 revendication 14 comprenant: -un outil de sélection de noeuds (20) permettant la sélection d'au moins un noeud d'un étage; Allego/model_scènes_fr2.1 -un outil de sélection et de modification de paramètres de cartes (30), pour d'une part sélectionner un paramètre à modifier, et d'autre part permettre l'entrée de la nouvelle valeur du paramètre (31, 32, 33, 34, 35, 36) ; -une unité de traitement destinée à traiter lesdits paramètres, de façon à générer ladite carte de modélisation de scène modifiée; -des instructions de mise en oeuvre, pour assurer le fonctionnement de l'outil et notamment de l'unité de traitement; -une sortie, permettant de transmettre la carte modifiée. 16.Outil de génération ou de modification de cartes procédurales selon la revendication 15, dans lequel l'outil de sélection de noeuds comporte une unité de sélection de profondeur (26), permettant de sélectionner l'étendue de la modification à réaliser sur l'arbre. 17.Outil de génération ou de modification de cartes procédurales selon l'une des revendications 15 à 16, dans lequel l'outil de sélection de noeuds comporte un cadre mobile (23) de localisation de noeud-objets (51) ou de noeuds (41). 18.Outil de génération ou de modification de cartes procédurales selon la revendication 15, dans lequel ledit cadre (23) est commandé par un curseur (21, 24) directement depuis l'interface de travail. 19.Outil de génération ou de modification de cartes procédurales selon l'une des revendications 14 à 18, comportant par ailleurs une entrée permettant de recevoir les paramètres soit d'un objet modèle, soit d'une scène. Allego/model_scènes_fr2.1