CA2104807A1 - Procede de creation d'images animees - Google Patents

Procede de creation d'images animees

Info

Publication number
CA2104807A1
CA2104807A1 CA002104807A CA2104807A CA2104807A1 CA 2104807 A1 CA2104807 A1 CA 2104807A1 CA 002104807 A CA002104807 A CA 002104807A CA 2104807 A CA2104807 A CA 2104807A CA 2104807 A1 CA2104807 A1 CA 2104807A1
Authority
CA
Canada
Prior art keywords
entity
key
pivot
decor
images
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
CA002104807A
Other languages
English (en)
Inventor
Raymond Perrin
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Publication of CA2104807A1 publication Critical patent/CA2104807A1/fr
Abandoned legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/802D [Two Dimensional] animation, e.g. using sprites

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)

Abstract

ABREGE

PROCEDE DE CREATION D'IMAGES ANIMEES

Pour créer des ges animées, on porte une première position clé (a0-d0) d'un personnage dans un premier décor puis une deuxième position clé (a1-d1) de ce personnage dans le même décor en gardant pour les deux positions clés un même pivot (a0, a1) de calage.
Pour une deuxième position clé du personnage, on détermine un deuxième pivot (d1). On mesure la position de ce deuxième pivot dans le premier décor pour la première puis la deuxième attitude du personnage. On définit par l'intersection (19) de la trajectoire de ce deuxième pivot avec un plan de référence (h) du décor, l'endroit ou le personnage est censé prendre appui par le deuxième pivot. On montre qu'en agissant ainsi on évite les Pffets de glissade qu'on obtient, sans précaution, avec des images animées automatiquement.

Figures 4a, 4b

Description

21~8~7 PROCEDE DE CREA~ION DIIMA~ES ANIMEES

La pr~ente invention a pour objet un procéd~ d~
cr~ation dlimages animees. ~lle trouve une utilisation dans les industries du cinéma et de la télévision, Dans celles-ci, elle est utile aussi bien pour la cr~ation d'images animées de divertissement que servant ~ des uts professionnels, par exemple de formation. Elle vise rendre plus agr~ables à l'oeil~ et donc plus naturels, les mouvements effectues dans des images par des personnages, ou plus generalement par des entites. Ces personnages, ou ces entités, se déplacent dans un environnement qu'on appellera un décor. Le décor paut lui-m8me 8tre animé, c'est-à-dire changer d'apparence d~une image ~ llautre. L'invention vise particulièrement r~soudre un problème qui se pose lorsque les entites animées sont réalisées par un opérateur, appele animateur, alors qu'un décor anime est r~alisé par un autre animateur, ou par le même à un autre moment. La mise ensemble des deux images nécessite en quelque sorte une synchronisation qui est effectuée bien plus simplement avec l'invention que ce qu'on sait faire dans l'~tat de la technique. L'invention vise aussi à donner aux entités mobiles des com~ortements fluides non heurt~s. Enfin llinvention a pour effet de modifier les attitudes des entités, d'une image à l'autre, si ces attitudes ne sont pas naturellement en harmonie avec l'évolution du décor dans lequel elles se d~placent.
On appellera décor l'ensemble des structures qui constituent l'environnement dans lequel est destin~ ~ se mouvoir un personnage ou une entite. Un décor peut avoir plusieurs états ou apparences. Ces états sont, en simplifiant, l'impression qulon peut avoir du décor , ' ' .
~' .:: . i........ ...

21~go ~

s~lon un point de vue donné, avec un éclairage donné, et avec une pro~ondeur et une largeur de champ données. De la même façon, une entité " a plupart du temps un personnage, pourra avoir des attitudes représentant, intrinsèquement, différentes positions de ce personnage dans l'espace. Une scene est constituée par l'ass~ciation de l'image d'un état du decor (on dira toujour~ un ~tat) avec 17image d'une attitude (on dira dor~navant une attitude). Il faut admettre cependant que les notions de décor et d'entité sont réversibles, 1' un pouvant ~tre remplacé par l'autre.
Dans une mise en oeuvre particuli~re d'un tel procédé, un état est constitué par un ensemble d'éléments de volume (à 3 dimensions) correspondant ou non ~ la présence d'une structure (d'un arbre, une maison ...). A ces élémsnts de volume on peut faire correspondre d'une manière biunivoque, dans une mémoire d'un système informatique, des cellules mémoires chargees d'une information binaire (1 ou 0) selon que cette cellule mémoire correspond ou non à la présence d'une structure. L'information peut être différente de binaire si on cherche ~ representer les couleurs auquel cas elle peut comporter par exemple trois informations correspondant au rouge, vert, bleu pour la visualisation en mode télévision. Un état ainsi qu'une attitude sont constitués de la même façon, par un ensemble de cellules mémoires chargées d'informations ou 0.
L'assemblage des deux images pour constituer une sc~ne revient ~ remplacer l'information portée dans les cellules mémoires correspondant au décor par une information correspondant à l'entité. Tout simplement, quand pour l'image de l'attitude on rencontre une cellule mémoire charqée d'une information nulle (absence ,~ .
. , .

, .
. .
. , .

$ ~ ~

du personnage à cet endroit) on garde la valeur chargée dans la cellule mémoire correspondante de l'état. Par contre, d~s que la cellule mémoire correspondant au personnage comporte une information, cette information se substitue ~ l'information de l'état. Des cas de conflit peuvent se pr~sente~ quand typiquement on cherche ~ placer une attitude du personnage à un endroit impossible : par exemple ~ l'intérieur d'une structure du décor. On remarque donc qu'il y a une op~ration essentielle qui consiste d'une part, à caler l'attitude par rapport à l'état et d'autre part, ~ remplacer les informations relatives de l'état par des informations relatives à l'attitude.
Jusqulà présent, malgré l'évolution des techniques~
la création des séquences animées est plutot artisanale.
Elle occupe les animateurs pendant des durées très longues. Par exemple, on sait qu'une séquence d 3 une minute d'une scène comportant une entité mobile dans un décor nécessite un travail de deux animateurs pendant un mois. Avec l'invention une tell~ séquence ne nécessite le travail gue d'un seul animateur pendant trois jours.
Si on ~tudie le problème de la synchronisation du déplacement des entités dans les décors, on peut même estimer que le déplacement d'une entité dans un décor, pour une séquence d'une minute, nécessite un travail de quinze jours à un animateur. Avec l'invention ce déplacement est résolu en une minute.
L'invention concerne aussi bien le domaine les images ~ deux dimensions que le domaine des images à
trois dimensions. Dans les deux cas, l'invention concerne les lmages animées creées avec l'assistance d'un ordinateur. Quand il s'agit d'images ~ deux dimensions, on comprend facilement qu'une image peut ~tre repr~sent~e par un ensemble d'éléments d'imagel ou .. . .

., .

,:
2 1 ~ ril pixels, arrang~s matriciellement, et porteurs chacun ; d'une information de luminance et de chrominance.
Notamment avec la numérisation, ces in~ormations de luminance et de chrominance peuvent être mémorisées dans une mémoire d'images d'un ordinateur. En correspondance de chaque pixel de l'image on trouve un~ adresse d'une cellule m~moire de la m~moire et des informations ont chargees dans cette cellule. On peut ainsi stocker aussi bien une image ~ deux dimensions de l'entit~ qu'une image ~ deux dimensions du décor. Avec une image dlune entite et une image d'un déoor il est possible de constituer une image d'une scène en portant l'entit~
dans le décor. Bien entendu le travail est fait dans la mémoire de l'ordinateur en jouant sur les adresses et les contenus des cellules concernées. Eventuellement plutôt que d'effectuer un remplacement on peut faire une composition des pixels du décor et des pixels de l'entit~ ~ l'endroit de l'entité pour obtenir des effets de transparence. Tous ces effets sont de type connu.
De la même fa~on, on peut définir une image ~ trois dimensions. On parlera d'images sachant qu'on représente un phénomène, soit r~el soit simulé, qui se produit dans tout l'espace. Pour simplifier, on peut admettre qu'un personnage correspondra, dans l'espace, à des éléments de volume, dits voxels, ~hargés d'une information, 1 à
l'int~rieur du personnage et 0 ~ l'extérieur du personnage. Pour tous les voxels, on est capable de stocker une information 0 ou 1 dans des c~llules mémoires d'une mémoire image. Bien entendu, plut~t que de se limiter ~ une information binaire on peut préférer, comme pour les images à deux dimensions une information plus complexe, notamment une information de chrominance. On définit le décor de la m~m~ faQon, et on constitue les scenes comme précédemment en remplaçant ~`, '.' ::

2 ~ 7 dan~ l'image ~ trois dimensions du décor les voxels du d~cor par les voxels de l'entité.
Dans une autre mise en oeuvre, les entit~ ~t les d~cors sont décrits par un ensemble, limi~é, de points caractéristiques. La collection des informations mémoris~es relatives ~ ces points caractéristiques remplace la mémorisation de tous les points, voxels ou pixels de la sc~ne ~ constituer. Un tel système de mémorisation dit vectoriel est moins exigeant en terme de capacité de mémorisation et est plus rapide en terme de traitement d~image. Ce systeme vectoriel est préféré
de ce point de vue. La constitution des sc~nes suit une meme procédure que dans la précédente mise en oeuvrs.
Pour représenter les images ~ trois dimensions, on utilise des procédés de visualisation de type connu qui permettent d'obtenir un rendu de la scène. Ces procédés de visualisation consistent dans leur principe à simuler la soumission de la scène à un éclairement, et ~ simuler son observation, éventuellement avec un e~fet de perspective, d'un point de vue donné. ~e nombreuses techniques sont connues pour permettre cette visualisation notamment les techniques dites OCTREE ou encore les techniques dites de lancé de rayonO
L'invention n'est pas concernée par ces techniques de visualisation puisque, ~ deux dimensions, l'invention produit directement l'image ~ visualiser, alors qu'~
trois dimensions l'invention permet de produire la sc~ne qui sera elle-même visualisée par ces techni~ues.
La constitution de séquences animées nécessite la creation de plusieurs images. Par exemple, en visualisation de mode télévision il faut produire jusqu'à 25 images par seconde. Soit pour une séquence d'une minute environ 1500 images. Plutôt que d'avoir deesiner chacune de ces 1500 images, à la fois pour le ' 2 ~ 8 ~ ~

decor et pour chacune des entites, quand il y en a plusieurs, on utilise des logiciels qui permetkent, connaissant une attitude d'une entité dans une premi~re position cl~ ~ Une premi~re date clé, et une deuxi~me attitude de cette entité à une deuxième date clé, d'obtenir par interpolation des attitudes interm~diaires. on rappelle que, dans l'animation, on ne cherche pas à obtenir des images de mouvements réels mais des images de mouvements artificiels. On conna~t, par exemple, un logiciel dit "SOFTIMAGE and CREATIVE
ENVIRONMENT" de la soci~té SOFTIMAGE, MONTREAL, QUEBEC, CANADA, dans lequel une telle technique de positions clés est mise en oeuvre~ Ce logiciel fait par ailleurs usage de bibliothèque de formes, dites d'une mani~re g~nérale des primitives, que l'on utilise ensemble pour constituer les entités (les personnages) ou les décors.
Un tel logiciel permet donc de se dispenser de la création des nombreuses images intermédiaires nécessaires entre les dates clés et réduit d'autant le travail des animateurs.
Pour perfectionner un tel procédé, dans l'invention, on cherche premi~rement ~ synchroniser le déplacement des entités par rapport au décor. Pour atteindre ce but, il faut placer correctement le personnage dans le décor. Le principe de l'invention est alors le suivant. Pour une première scène constituée à
partir d'un premier état du décor et d'une première attitude de l'entité, on repère une position pivot : un endroit o~ physiquement l'entité reposerait (au sens gravitationnel) ou s'appuierait sur le décor. Par exemple un personnage qui marche, avec un pied par terre, permet d'obtenir un pivot : ce pied. Pour le m~me d~cor, mais pour une attitude suivante du personnage (le pas suivant~, on impose ~ ce pied de ce personnage de :
:
: .

~ :

21 0~7 reposer au mêrne endroit du décor. Les autres parties du personnage occupent alors des positions dan~ l'e~pace de la sc~ne dif~xentes des positions de ces m~mes parties pour l'attitude précédente. On détecte ensuite un deuxième pivot de la deuxième attitude du personnage.
Puis, on compare les positions de ce deuxi~me pivot entre la premi~re attitude et la deuxi~me attitude dans le premier état du décor. Puis on détermine l'endroit o~
ce pivot doit a son tour s'appuyer dans le décor. On constitue alors la deuxième scène, celle qui est ulterieure, en faisant pour la deuxième attitude appuyer ce deuxième pivot à cat endroit déterminé dans le décor.
Ce faisant, on évite un décalage anormal du mouvement du d~cor par rapport au mouvement du personnage.
A titre de perfectionnement, pour constituer des s~quences d~images intermédiaires, on ne se satisfait pas d'une interpolation linéaire entre des positions de point caractéristique des personnages. On rand au contraire ce~ mouvements plus naturels en modifiant leur trajectoire. Notamment, on tient compte, pour un point caractéristique d'un personnage, non seulement de sa position dans chacune des deux attitudes cl~s mais egalement des vitesses de deplacement de ces points caract~ristiques par rapport à des images cl~s précédentes ou suivantes.
Enfin, pour rendre les mouvements plus réalistes, on étudie plus particulièrement la trajectoire du centre de gravita de l'entité, et on s'arrange pour ~u'au cours de toutes les images intermédiaires élaborées ce centre de gravit~ suive une courbe la moins heurtée possible.
Dans ce cas, partant d'une attitude donnée et devant arriver ~ une autre attitude donnée, on modifie, pour les images intermédiaires, avec un procedé de cinématique invarse, l'allure de l'at~itude de telle ;,, ' .

~4~

fa~on ~ amortir les déplacements de ce centre de gravit~.
L~invention a donc pour objet un proceda de création d'images animées, assiste par un ordinateur, dans lequel - on définit au moins une entite susceptible d'etre mobile, par exemple un personnage, - on constitue dans une memoire de l'ordinateur, une suite d'au moins deux images clefs de cette entite dans lesquelles cette entite adopte, associées a deux dates clefs, deux attitudes différentes l'une de l'autre, - on définit un décor dans lequel l'entité est censée se mouvoir, - on constitue dans la mémoire de 11ordinateur, une suite d'au moins deux images clefs associées ~ deux dates cle~s de ce décor dans lesyuelles ce décor poss~de deux états, - on réalise, dans la mémoire de l'ordinateur, une séquence de sc~nes en plaçant, pour chaque scène de la séquence, une image de l'entité dans une image du décor, - on montre ces scènes en les soumettant ~ un processus de visualisation, caractérisé en ce que - pour réaliser une première image de scane dans une sequence, on porte une première attitude de l'entite dans un premier etat du decor en repérant, pour cette première attitude, un premier pivot de cette entite, et ,~, . en calant ce premier pivot à un premier endroit `~ particulier sur une première reférence de ce premier : état, et - pour réaliser une deuxième image de scène dans la - m~me séquence, on porte une deuxième attitude de l'entité dans un deuxiame état du décor en repérant, ,:, 2 ~

pour cette deuxième attitude, un d~uxième pivot d~ cette entité, et en calant ce deuxieme pivot ~ ~n deuxiame endroit particulier dans ce deuxième état, - on mesure la position vraie de ce deuxième plvot dans la première scène ain6i qu'une position simulée de ce deuxi~me pivot dans cette première sc~ne, cet~e position ~imulée correspondant à celle qu'on obtient, avec la deuxième attitude, en calant le premier pivot au premier endroit particulier du premier etat, - on repère dans la première scène un deuxiame endroit particulier par comparaison des positions vraie et simulee de ce deuxième pivot à une deuxième reference du premier etat, - on porte la deuxième attitude dans le deuxi~me état de telle façon ~ faire coïncider le deuxième pivot avec le deuxieme endroit particulier repéré.
L'invention sera mieux comprise ~ la lecture de la description qui suit ~ l'examen des figures qui l'accompagnent. Celles ci ne sont données qu'à titre indicatif et nullement limitatif de l'invention. Les figures montrent :
Figure 1 : une représentation schématique du matériel nécessaire pour mettre en oeuvre l'invention ;
- Figures 2a à 2c et 3a à 3c : des représentations schématiques d'etats d'un decor et d'attitudes d'une entité ou personnage ;
~ Figures 4a à 4d : les représentations simplifiées de l'effet d'asservissement de l'invention par lequel on synchronise le déplacement de l'entité dans le d~cor ;
~ Figures 5a ~ 5c : un perfectionnement ~ la technique de calcul des images intermédiaires ;
- Fi~ure 6 : les effets de l'amortissement des d~placements du centre de gravite.

.

.

2 1 ~ 7 La figure 1 montre schématiquement un dispositif utilisable pour mettre en oeuvre le procéd~ de l'invention. Celui-ci comporte un micropro~esseur exécutant un programme 2 contenu dans une mémoire programme 3. Le programme 2 met en oeuvre les simplifications de l'inve~tion. Le système comporte dans une m~moire de travail 4 un ensemble 5 de pages m~moires pour stocker des attitudes d'entité, un ensemble 6 de pages mémoires pour stocker des états de décor et un ensemble 7 de pages mémoires pour stocker des scenes. Le systame comporte encore un dispositif 8, représenté
symboliquement ici par un moniteur de visualisation, et servant à représenter les images des sc~nes élaborées.
Dans la pratique, ces images de scene peuvent ~tre soit visualisées directement sur un moniteur, soit donner lieu ~ la cr~ation par des techniques connues d'un film cinématographique qui pourrait être ulterieurement visionne. La visualisation peut être dif~érée dans le temps~
La constitution de la mémoire 4 n'a pas n~cessairement l'allure representée ici : celle-ci nlest présentée ici que pour bien faire comprendre l'invention. Notamment la memoire de travail peut ne contenir, à un moment donné, qulune scène voire qu'une partie d'une scane, des attitudes des entites et des ,~, états du decor pouvant atre elabores, en temps réel, à
partir d'une bibliothèque de formes 9 contenant des primitives ou des formes de polygones permettant de construire des objets à trois dimensions.
,Parmi ces primitives et formes on distingue -'~classiquement les primitives proprement dites qui sont des structures géométriques simples (cube, sph~re, cylindre, tétraèdre...) ; des formes de révolution d~finies par une courbe géneratrice ~ deux dimensions et 2~0~a7 par un axe de revolution ; des formes prismatiques définies par une courbe génératrice à deux dimension~ et par une direction de projection ; des formes géodésiques constituées par plusieurs courbes génératrices associées entre elles et formant des courbes de niveau , des formes math~matiques issues de fonction mathématiques ;
et enfin des formes libres constituées par des surfaces dont tous les ~léments sont donnés point par poi.nt. Un maniement et une utilisation de ces primitives est un particulier décrit dans le logiciel cité.
A partir de cette bibliothèque de formes, on peut constltuer des bibliothèques 10 d'entités et 11 de décors. Dans les pages 5, 6 et 7 on peut stocker des images ~ trois dimensions à visualiser, ou des images ayant déj~ subi un effet de rendu. Toutes ces biblioth~ques et pages mémoires peuvent ~tre m~morisées physiquement dans une seule mémoire du système.
Sur la figure 2a, on a représenté, à trois dimensions, la constitution d'un décor. Ce decor possade des structures, par exemple des maisons 12 et 13, avec tous les détails, non représentés, nécessaires pour les rendre r~alistes. La figure 3a montre, pour la d~finition d'une entité, un assemblage de formes telles que 14 ~ 16 pouvant constituer ensemble un personnag Ces formes sont des primitives, sphères, cylindres circulaires, ou parallélépip~des rectangles comme indiqu~s précédement. Le personnage est essentiellement constitué par un squelette. Ainsi les différentes formes sont articulées les unes par rapport aux autres en certains endroits : par exemple les points caract~ristiques a, b, c, d, du personnage de la figure 3a.
Il est possible, pour la constitution d'un scene de placer le personnage oa plas géneralement l'entite a an , 2 ~ 7 endroit particulier ~u décor, par e~emple ~ l'endroit de la croix 17, figure 2a. Une fois que le personnage est placé ~ l'endroit de la croix 17 les contours du decor correspondant ~ l'empla~ement de ce personnage sont effacés et remplacés par ceux du personnage. La scène tant ~ trois dimensionsr pour la visualiser, pour la rendre, il faut l'ecl~irer à partir d'un ou de plusieurs points d'~clairement tels que 18, et il faut llobserver à partir d 'un point de vue 19. Vue du point de vue 19l la sc~ne constituée par l'assemblage de l'entité et du décor peut ~tre tr~nsformée en une image à ~eux dimensions seulement. Eventuellement, on peut effectuer le rendu du décor d'une certaine façon; et le rendu du personnage d'une autre façon, notamment en ce qui concerne la position de l'éclairage du personnage qui peut ~tre différente de la position de l'eclairement du décor. En prîn~ipe le point de vue devrait être le m~me.
Pour simplifier les explications, on passe .
maintenant à une représentation a deux dimensions de la présence du personnage dans le décor. Par exemple le point 17, figure 2b, est placé en des coordonnées x~ et yO du rep~re Rd du décor. Dans la figure 3b, dans le repère Re ~ui lui est propre, le personnage, ou plus simplement des points extrêmes a, b, c, d de son squelette, sont placés dans des positions aO, bo~ co et do. Ce qu'on sait est que, pour une deuxième image, figures 2c et 3c, le personnage devra prendre appui par son extrémit~ d, par exemple par une extrémité de son bras parce qu'il tombe, en un autre endroit du décor. Le probl~me résolu par l'invention est de trouver l'endroit 18 du décor o~ il faut faire s'appuyer l'extrémité d du personnaga pour que l'impression de déplacement du personnage dans le décor soit réaliste.
Dans l'invention, figures 4a ~ 4d, on commence, 2~0~7 figurs 4a, par placer les coordonnées aO dlun premier pivok du personnage a l'endroit 17 du décor. Pour obtenir ce r~sultat, on est obligé de déplacer le rep~re Re de l'entité par rapport au repère Rd du décor selon un vecteur VO qui d~pend pour l'essentiel de l'endroit o~ l'animateur a dessiné l'entité dans le rep~re de l'entit~. Dans la pratique, ceci n'a pas grande importanc~, il peut la dessiner où il veut, avec un vecteur Vo calculé en conséquence, on s'adapte automatiquement. Ceci étant fait, on a en fait constitue, d'une manière classique, la première sc~ne d'o~ on tire une première image à voir. A un vecteur tel que Vo correspondent naturellement des décalages d'adresses des cellules de la mémoire. ces décalages sont calculés automatiquement par le microprocesseur en fonction d'actions effectuées par un opérateur avec un clavier C avec souris ou périphérique de saisie. Ces décalages d~adresse concernent le cas des mémoires d'image. S'agissant de la manière préféree de mise en oeuvre de l'invention dans un système vectoriel, chaque vecteur représentant un point caracteristique subit une modification de son information cGrrespondant au vecteur VO-Pour constituer la deuxième image on procade de lamaniere suivante. on commence, figure 4b, par porter la deuxi~me attitude, celle visible sur la figure 3c, dans le m~me décor, celui de la figure 2b~ On constate alors, en conservant toujours comme pivot le point a caractéristique du personnage, que l'extrémité d de ce personnage est pass~ de l'autre côte d'une surface de r~férence devant servir d'appui. Par exemple, sur la figure 4b on a placé au point 17 le point a1 de l'entit~. On obtient, par rapport à ce même état du décor une position du point dl. On a par ailleurs '~

., ., 2 ~

~galement représenté la position du point do de l'entite, telle qu'elle était situee dans la premi~re scèn~. On trace ensuite, pour simplifi~r, la droit~
do-d1, et on observe qu'elle coupe la surface de référence à un p~int 19. En variante~ on peut aUBSi calculer l'intersection de l'arc de ~ercle do-d1, de centre 17, avec le plan de référence du décor. On obtient en v~riante un point 20 plus précis puisque an pratique les déplacements des personnages ne sont jamais des translations (sauf s'il s'agit de trains), mais au contraire la plupart du temps des rotations autour de pivots Ces calculs d'intersection peuvent être faits automatiquement en définissant le plan ou la surface de reférence. Plus simplement, avec une boule ou une souris du clavier C, l'animateur peut aussi pointer manuellement l'intersection.
On sait alors que do a pour coordonnée xo, yo, zo dans le repère Rd du premier décor et que dl y a pour coordonnées xl, Y1, Zl- Connaissant h, l'altitude dans le décor o~ on veut provoquer l'appui du pivot d, on peut calculer un coefficient k = (h-yo)/(y1-yo)- On d~termine alors les coordonnées x y z du point 19 dans le premier décor telles que x = (1-k)xo + kx1 ; y = h et z = ~l-k)Zo + kZ1-La connaissance de h peut être impos~e de différentes mani~res. La valeur h peut ~tre imposée par l'op~rateur. Elle peut être identique ~ la valeur yo precédente : le personnage se déplace alors sur un plan horizontalO Elle peut enfin être calculee connaissant la forme, genéralement un plan, de la référence sur laquelle est censée se déplacer l'entité.
De ce point de vue il y a lieu de remarquer que le d~cor peut ~tre vide de tout element decoratif. Seul est nécessaire avec l'invention, pour ce décor, la ' .
: .
, 2~4~7 d~finition d'une référence, éventuellement non visualisée/ sur laquelle se déplace l'entite. Enfin, la réference n'est pas nécessairement horizontale, elle peut ~tre vertic~le ou autre si des efforts autres que gravitationnels sont impliques.
Ce faisant, on vient de detecter la présence d'un nouveau point d'appui ls dans le décor. Il reste alors, pour obtenir l'image de la deuxième scene ~ imposer, comme endroit particulier 18 du décor la position 19 (ou 20) ainsi trouvée. On impose donc à la deuxième attitude a1-d1 de venir se caler dans le decor en prenant comme point d ' appui de ~ette entité le point 19 du décor pr~cédemment trouvé. Ceci est montré sur la figure 4c.
Si le plan du decor est fixe, l'etat du decor sera celui de la figure 4c. Par contre, si le plan de visualisation du decor n'est pas fixe, ou si le decor s'est modifie, il a un etat différent, figure 2c, de celui qui l'occupait precédemment figure 2b. Dans ces conditions on repère la position du pivot 19 par rapport au repère du décor et on applique pour le deuxi~me décor une translation équivalente aux déplacements du d~cor d'un premier ~tat de ce décor à l'autre. Ceci est matérialise par la ~igure 4d ou le personnage vient s'appuyer par son extrémité d1 sur un lieu 19' du deuxième decor, qui correspond au lieu 19 du premier d~cor. Par exemple la distance entre le lieu 19 du d~cor et un accident 21 de ce decor dans le premier état du décor est la même qu'entre le lieu 19' et la rapresentation 21' de ce même accident dans l'autre état du décor. Toutes ces translations sont deduites des changements de point de vue ou des vitesses de deplacement du decor.
Il y a toujours deux états du d~cor. Mais quand le plan est flxe, le deuxième état du décor est exactement ~, " .

, ~.
, ... .
~' 2~0~7 identique au premier.
A titre compar~tif, sur la figure 4d, on montre en tirets une position arbitraire ~u'aurait choisie exp8rimentalement un animateur pour placer l'entité dan6 le deuxi~me état du décor. Lorsque les images d~finitives auraient été visualisées, il aurait fallu premièrement se rendre compte de ce qui n'allait pas dans la sequence montrée, puis deuxièmement modifier petit ~ petit la position du pivot pour lui faire occuper en fin de compte la position à laquelle on aboutit directement avec l'invention. Avec l~invention au lieu d'~tre artisanal le traitement est maintenant automatique.
Pour déterminer un pivot, on cherche dans llimage de l'entité quel est l'endroit, la partie,l'extrémité de l'entit~ qui se rapproche le plus d'un plan de r~érence théorique. S~agissant par exemple de la marche on repérera, ~igures 2 à 4, l'altitude du point le plus bas du personnage pour une attitude donnée. Dans l'attitude de la ~igure 3b il s'agit du point aO dans l'attitude de la figure 3c il s'agit du point dl. Dans un perfectionnement, quand on a affaire à plusieurs points qui sont susceptibles de jouer le r61e de pivot (par exemple un pied n'est pas un point matériel mais un ensemble de points) on choisit le barycentre des points candidats. Les points candidats sont par exemple ceux pour lesquels l'altitude est la plus basse, dans une fourchette de valeurs données.
Dans la pratique, les images sont des images intermédiaires obtenues à partir d'images clés. Par exemple sur les figures ~a et 5b, on va admettre qu'on a représenté les deux positions clés précédentes : la position ao-bo Pt respectivement la position al-dl. Sur la figure 5a on a même représenté, en tirets, la .

' `' .

.
.. .

210~7 deuxième position. Le squelette de l'entite, pour passer d'une position ~ l'autre, doit occuper des positi~ns intermediaires. Ainsi sur une droite aO-a1 on a matérialisé quatre intervalles ~de temps) donnant lieu en tout ~ ~inq images : les deux images clés et trois images intermédiaires.
Les t~hni~ues d'intervallage connues prévoient de divisex simplement les distances aO-al par quatre (ici, puisque dans llexemple on a choisi quatre~ et de modifier les coordonnées des points a, b, c, d progressivement du quart de la translation parcourue.
Dans l'invention on s'est rendu compte que cette technique résultait en un caractère heurté des mouvements montrés. Pour y remédier, on a utilisé plus que deux positions clés (aO-a1) pour conna~tre les positions intermédiaires vraies des points caractéristiques a-d du squelette de l'entit~. Par exemple, s'agissant du point a, on a tenu compte de sa position cl~ a_l ainsi que de sa position clé a2. on admettra pour simplifier que le nombre d'images (et donc la durée entre les images clés) est la m~me d'une position clé à l'autre.
Dans un premier temps, on calcule géométriquement llallure, ~ deux ou trois dimensions selon le cas, de la courbe reliant a_l, aO, a1 et a2. On peut choisir pour relier ces points de nombreuses courbes. De préf~rence on retiendra des courbes dites de BEZIER, telles qu'elles sont d~crites dans le document COMPUTER
GRAPHICS : "Principles and Practice", ADDISON WESLEY
PUB~ISHING, 1990, USA, pages 488 et suivantes.
Avec ces courbes on tient essentiellement compte, pour élaborer des trajectoires, des tangentes de ces trajectoires aux endroits aO et al. Ces tangentes sont globalement orientees de a1 vers a2 et de aO vers a_1.

.

.

2 ~ 7 Dlo~ l'intér8t de conna~tre ces points. Une fois qu'on a obtenu la courbe de cette trajectoire, on en mesure la longueur, de aO jusqu~à al. On a représenté
schématiquement sur la figure 5c l'évolution s de la longueur parcourue en fonction du temps. Cette courbe n'est pas une droite parce qu'elle rend compte des accélérations et ralentissements d'un point caractéristique. Puis on divise la durée to-t1 en un nombre utile d'intervallesl ici en 4 intervalles. on détermine alors entre les positions s0 et s1 les positions s2, S3 et s4 intermédiaires. on reporte ces positions sur la trajectoire à trois dimensions du point a. On en détermine alors les positions intermédiaires dans l'espace du point a qui correspondent aux instants intermédiaires auxquels on devra présenter les images.
Ce procéd~ d'intervallage est nettement moins abrupt qua le procédé simpliste d'interpolation linéaire connu jusqu'ici. Il a l'avantage de donner aux personnages des mouvements qui semblent naturels. On effectue normalement ce travail pour les points principaux du squelette. Notamment pour ceux a, b, c, d l~endroit desquels il y a des articulations dans l'entit~. Ceci n'est pas nécessaire si l'entit~ est rigide. Auquel cas, on effectue ce travail qu'une seule fois.
La figure 6 montre un autre perfectionnement de l'invention. Pour passer d'une attitude ~ une autre, l'entité se déplace dans le décor avec des mouvements qui peuvent parfois apparaItre choquant. Par exemple~ le personnage montré pr~cédemment, qui bascule, prend d'abord appui avec son pied à l'endroit 17 puis avec sa main ~ l'endroit 18-19. Au moment du basculement du personnage, il est peu vraisemblable que le centre de gravité de ce personnage puisse subir des variations de 2~8~7 trajectoire brutalesO C'es~ néanmoins ce qui pourrait arriver si on en re~tait a ce stade du traitement automatique.
Aussi dans l'invention, au cours d'un premier traitement on cree les scènes en ayant synchr~nisé les deplacements de la ou des entités par rapport au d~cor et eventuellement, pour les images interm~diaires de sc~ne, en t~nant compte des vitesses et accélérations des points caractéristiques des entités. Une fois qulune s~quence de scanes est obtenue, on tracP la trajectoire du centre de gravité de l'entité. Ce cPntre de gravité
peut par exemple ~tre défini à priori comme le milieu du cylindre 140 D'une image clé ~ l' autre, on impose alors ~ ce centre de gravit~ de suivre une courbe amortie, par exemple elle aussi une courbe de BEZIE~. on impose en plus, que des points caractéristiques, occupent une position déterminée dans l'espace. Notamment on fixe la position des pivotsO On utilise alors un algorithme de cinématique inverse, en particulier celui du ~ Michael GIRARD et ~ A. A. MACIEJEWSKI, publie dans la revue Computer Graphics, volume 19, n3, de Juillet 1985 et intitul~ I~COMPUTATIONAL MODELING FOR THE COMPU~ER
ANIMATION OF LEGGED FIGURES". Avec cet algorithme, partant du centre de gravité, on peut calculer les déplacements d'articulation d'intermédiaires compte tenu de ce que les points pivots sont maintenant connus et doivent être maintenus aux emplacements qu'on a calculé
pour eux. La compensation d'inertie qu'on effectue de cette façon permet d'obtenir des images qui ne soient pas saccad~es et qui semblent parfaites ~ l'oeil humain.
En pratique, comme montré sur la figure 6, le centrs de gravite g occupera les positions, succassivement, go, g2, g3, g4, g1- Compte tenu de la position du pivot en p0 et P1 on en d~duira par , .

. ':
.

2 ~ 7 :` :

llalgorithme cité les positions d'un point caractéristique intermédiaire i : io i2 i3 i4 et il. La courbe go-gl est la courbe de BEZIER du centre de gra~it6.

.:

~'~

', :
~, :

. ~

".;!; ~ ~

''~j ''i . ~
'i, ~:
:r~,.. ... .
, :.', :

' '' ~ ~, , .~

: '~
,~'.

Claims (9)

REVENDICATIONS
1 - Procédé de création d'images animées, assisté
par un ordinateur, dans lequel - on définit au moins une entité susceptible d'être mobile, par exemple un personnage, - on constitue dans une mémoire de l'ordinateur, une suite d'au moins deux images clefs de cette entité
dans lesquelles cette entité adopte, associées à deux dates clefs, deux attitudes différentes l'une de l'autre, - on définit un décor dans lequel l'entité est censée se mouvoir, - on constitue dans la mémoire de l'ordinateur, une suite d'au moins deux images clefs associées à deux dates clefs de ce décor dans lesquelles ce décor possède deux états, - on réalise, dans la mémoire de l'ordinateur, une séquence de scènes en plaçant, pour chaque scène de la séquence, une image de l'entité dans une image du décor, - on montre ces scènes en les soumettant à un processus de visualisation, caractérisé en ce que - pour réaliser une première image de scène dans une séquence, on porte une première attitude de l'entité
dans un premier état du décor en repérant, pour cette première attitude, un premier pivot (a0) de cette entité, et en calant ce premier pivot à un premier endroit particulier sur une première référence de ce premier état, et - pour réaliser une deuxième image de scène dans la même séquence, on porte une deuxième attitude de l'entité dans un deuxième état du décor en repérant, pour cette deuxième attitude, un deuxième pivot de cette entité, et en calant ce deuxième pivot à un deuxième endroit particulier dans ce deuxième état, - on mesure la position vraie de ce deuxième pivot dans la première scène ainsi qu'une position simulée de ce deuxième pivot dans cette première scène, cette position simulée correspondant à celle qu'on obtient, avec la deuxième attitude, en calant le premier pivot au premier endroit particulier du premier état, - on repère dans la première scène un deuxième endroit particulier par comparaison des positions vraie et simulée de ce deuxième pivot à une deuxième référence du premier état, - on porte la deuxième attitude dans le deuxième état de telle façon à faire coïncider le deuxième pivot avec le deuxième endroit particulier repéré.
2 - Procédé selon la revendication 1, caractérisé
en ce que - on définit les attitudes et/ou les états et/ou les scènes à trois dimensions.
3 - Procédé selon la revendication 1 ou la revendication 2, caractérisé en ce que - les états clefs du décor sont différents l'un de l'autre soit en forme, soit en couleur, soit en luminosité, soit en point de vue.
4 - Procédé selon l'une quelconque des revendications 1 à 3, caractérisé en ce que - les attitudes et/ou les états sont définies à
partir d'un ensemble de formes dans une bibliothèque de formes.
- Procédé selon l'une quelconque des revendications 1 à 4, caractérisé en ce que - pour une entité supplémentaire, une scène élaborée pour une première entité sert de décor.
6 - Procédé selon l'une quelconque des revendications 1 à 5, caractérisé en ce que - pour repérer un pivot on cherche le barycentre des points qui se trouvent dans un voisinage d'une référence simulée.
7 - Procédé selon l'une quelconque des revendications 1 à 6, caractérisé en ce que - avec les suites d'images clefs de l'entité on constitue des séquences d'images intermédiaires, à des dates intermédiaires entre les dates clefs, dans lesquelles cette entité a des attitudes évolutives, - pour constituer les images intermédiaires de ces séquences, on repère dans ces images clefs des positions clefs, on évalue des vitesses clefs d'un ensemble de points caractéristiques constituant un squelette de cette entité, et on calcule, par interpolation entre ces positions clefs et en fonction de ces vitesses clefs, des positions intermédiaires de ces points caractéristiques.
8 - Procédé selon l'une quelconque des revendications 1 à 7, caractérisé en ce que - avec les suites d ' images clefs du décor on constitue des séquences d'images intermédiaires, à des dates intermédiaires entre les dates clefs, dans lesquelles ce décor a des états évolutifs, - pour constituer les images intermédiaires de ces séquences, on repère dans ces images clefs des positions clefs et on évalue des vitesses clefs d'un ensemble de points caractéristiques constituant un squelette de ce décor, et on calcule, par interpolation entre ces positions clefs et en fonction de ces vitesses clefs, des positions intermédiaires de ces points caractéristiques.
9 - Procédé selon la revendication 7 ou la revendication 8, caractérisé en ce que - on calcule, par rapport à un pivot, une trajectoire amortie d'un centre de gravité de l'entité
et on déforme, dans les images intermédiaires, l'attitude de l'entité en fonction de cette trajectoire.
CA002104807A 1992-08-26 1993-08-25 Procede de creation d'images animees Abandoned CA2104807A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9210297A FR2695230B1 (fr) 1992-08-26 1992-08-26 Procédé de création d'images animées.
FR9210297 1992-08-26

Publications (1)

Publication Number Publication Date
CA2104807A1 true CA2104807A1 (fr) 1994-02-27

Family

ID=9433035

Family Applications (1)

Application Number Title Priority Date Filing Date
CA002104807A Abandoned CA2104807A1 (fr) 1992-08-26 1993-08-25 Procede de creation d'images animees

Country Status (3)

Country Link
US (1) US5506949A (fr)
CA (1) CA2104807A1 (fr)
FR (1) FR2695230B1 (fr)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5818462A (en) * 1994-07-01 1998-10-06 Digital Equipment Corporation Method and apparatus for producing complex animation from simpler animated sequences
US5767861A (en) * 1994-08-11 1998-06-16 Kabushiki Kaisha Sega Enterprises Processing apparatus and method for displaying a moving figure constrained to provide appearance of fluid motion
FR2724033B1 (fr) * 1994-08-30 1997-01-03 Thomson Broadband Systems Procede de generation d'image de synthese
FR2727543B1 (fr) * 1994-11-25 1997-01-31 Armines Procede de generation d'images intermediaires par interpolation
US5630043A (en) * 1995-05-11 1997-05-13 Cirrus Logic, Inc. Animated texture map apparatus and method for 3-D image displays
NL1000679C2 (nl) * 1995-06-28 1996-12-31 Arie Van Wieringen Video Film Bewegingseditor/samensteleenheid.
US5854634A (en) 1995-12-26 1998-12-29 Imax Corporation Computer-assisted animation construction system using source poses within a pose transformation space
JP2000512039A (ja) 1996-03-15 2000-09-12 ザパ デジタル アーツ リミテッド プログラム可能なコンピュータグラフィックオブジェクト
US6414684B1 (en) * 1996-04-25 2002-07-02 Matsushita Electric Industrial Co., Ltd. Method for communicating and generating computer graphics animation data, and recording media
US6025852A (en) * 1996-05-24 2000-02-15 Zhao; Jianmin Manipulation of graphic structures
US5874988A (en) * 1996-07-08 1999-02-23 Da Vinci Systems, Inc. System and methods for automated color correction
US6097853A (en) * 1996-09-11 2000-08-01 Da Vinci Systems, Inc. User definable windows for selecting image processing regions
US6184899B1 (en) * 1997-03-31 2001-02-06 Treyarch Invention, L.L.C. Articulated figure animation using virtual actuators to simulate solutions for differential equations to display more realistic movements
US6034739A (en) * 1997-06-09 2000-03-07 Evans & Sutherland Computer Corporation System for establishing a three-dimensional garbage matte which enables simplified adjusting of spatial relationships between physical and virtual scene elements
US6014150A (en) * 1997-08-01 2000-01-11 Avid Technology, Inc. System and method of defining and employing behaviors for articulated chains
US6850249B1 (en) * 1998-04-03 2005-02-01 Da Vinci Systems, Inc. Automatic region of interest tracking for a color correction system
DE69900872D1 (de) 1998-04-03 2002-03-21 Da Vinci Systems Inc Primär- und Sekundärfarbverarbeitung unter Verwendung von Farbe, Sättigung, Luminanz und Flächenisolierung
DK0947955T3 (da) 1998-04-03 2001-12-17 Da Vinci Systems Inc Fremgangsmåder og apparatur til frembringelse af kundespecifikke gammakurver for farvekorrektionsudstyr
US6333749B1 (en) * 1998-04-17 2001-12-25 Adobe Systems, Inc. Method and apparatus for image assisted modeling of three-dimensional scenes
US6161176A (en) * 1998-11-20 2000-12-12 Microsoft Corporation System and method for storing configuration settings for transfer from a first system to a second system
US6469747B1 (en) 1999-09-02 2002-10-22 Da Vinco Systems, Inc. Parabolic mixer for video signals
JP3847058B2 (ja) * 1999-10-04 2006-11-15 任天堂株式会社 ゲームシステム及びそれに用いられるゲーム情報記憶媒体
KR20020073098A (ko) * 2002-04-03 2002-09-19 (주)이야토탈솔루션 네트워크 상에서 베지어곡선을 이용한 캐리커쳐 제작장치및 그 제작방법
GB0216819D0 (en) * 2002-07-19 2002-08-28 Kaydara Inc Generating animation data
US20040145588A1 (en) * 2003-01-27 2004-07-29 Scimed Life Systems, Inc. System and method for reviewing an image in a video sequence using a localized animation window
US7167760B2 (en) * 2003-04-28 2007-01-23 Vanderbilt University Apparatus and methods of optimal placement of deep brain stimulator
US7164423B1 (en) * 2003-04-30 2007-01-16 Apple Computer, Inc. Method and apparatus for providing an animated representation of a reorder operation
JP4005060B2 (ja) * 2004-06-30 2007-11-07 株式会社ソニー・コンピュータエンタテインメント 情報処理システム、プログラムおよびゲームキャラクタ移動制御方法
JP4660357B2 (ja) * 2005-11-18 2011-03-30 任天堂株式会社 画像処理プログラムおよび画像処理装置
CN101617354A (zh) 2006-12-12 2009-12-30 埃文斯和萨瑟兰计算机公司 用于校准单个调制器投影仪中的rgb光的系统和方法
US8358317B2 (en) 2008-05-23 2013-01-22 Evans & Sutherland Computer Corporation System and method for displaying a planar image on a curved surface
US8702248B1 (en) 2008-06-11 2014-04-22 Evans & Sutherland Computer Corporation Projection method for reducing interpixel gaps on a viewing surface
US8077378B1 (en) 2008-11-12 2011-12-13 Evans & Sutherland Computer Corporation Calibration system and method for light modulation device
US9641826B1 (en) 2011-10-06 2017-05-02 Evans & Sutherland Computer Corporation System and method for displaying distant 3-D stereo on a dome surface
FR3005775B1 (fr) * 2013-05-15 2015-06-26 Thales Sa Procede et systeme de construction d'au moins une ligne de guidage d'aeronef dans un reseau de navigation aeroportuaire
JP7233399B2 (ja) * 2020-06-23 2023-03-06 任天堂株式会社 ゲームプログラム、ゲーム装置、ゲームシステム、およびゲーム処理方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4600919A (en) * 1982-08-03 1986-07-15 New York Institute Of Technology Three dimensional animation
US4952051A (en) * 1988-09-27 1990-08-28 Lovell Douglas C Method and apparatus for producing animated drawings and in-between drawings
US5214758A (en) * 1989-11-14 1993-05-25 Sony Corporation Animation producing apparatus
GB2245807A (en) * 1990-06-28 1992-01-08 Rank Cintel Ltd Editing of object-based animated computer graphics
US5261041A (en) * 1990-12-28 1993-11-09 Apple Computer, Inc. Computer controlled animation system based on definitional animated objects and methods of manipulating same

Also Published As

Publication number Publication date
US5506949A (en) 1996-04-09
FR2695230A1 (fr) 1994-03-04
FR2695230B1 (fr) 1994-11-04

Similar Documents

Publication Publication Date Title
CA2104807A1 (fr) Procede de creation d'images animees
US4952051A (en) Method and apparatus for producing animated drawings and in-between drawings
US20060066877A1 (en) Capture and display of image of three-dimensional object
FR2583541A1 (fr) Tampon z a haute vitesse munie d'une memoire dynamique a acces aleatoire
CA2322702A1 (fr) Systeme de visualisation d'images tridimensionnelles realistes virtuelles en temps reel
Keller Introducing ZBrush 4
FR2984057A1 (fr) Systeme de tournage de film video
Jin et al. AniMesh: interleaved animation, modeling, and editing.
Ubik et al. Interactive 3D models: Documenting and presenting restoration and use of heritage objects
FR2920243A1 (fr) Procedes et dispositifs de generation en temps reel de fonds cartographiques
EP0108674A1 (fr) Terminal graphique à mémoire de points muni d'un système d'écriture en mémoire d'image de signaux de texture d'image
Kumar Beginning PBR texturing: Learn physically based rendering with allegorithmic’s substance painter
Slabaugh et al. Improved voxel coloring via volumetric optimization
FR3066304A1 (fr) Procede de compositon d'une image d'un utilisateur immerge dans une scene virtuelle, dispositif, equipement terminal, systeme de realite virtuelle et programme d'ordinateur associes
EP2297705A1 (fr) Procede de composition temps reel d'une video
JP7333437B2 (ja) 3dデジタルモデル表面のレンダリングおよび変換
EP1702472B1 (fr) Procede et systeme de determination du deplacement d un pixe l, et support d enregistrement pour la mise en oeuvre du pro cede
Ogleby From rubble to virtual reality: Photogrammetry and the virtual world of ancient AYUTTHAYA, Thailand
Schofield Non-photorealistic rendering: a critical examination and proposed system.
Kermanikian Introducing Mudbox
Immonen Updating a Game’s Graphics from 2D Sprites to 3D Models
Hanson et al. Image-based rendering with occlusions via cubist images
FR2828572A1 (fr) Procede de creation d'un personnage tridimensionnel
Guevarra Modeling and Animation Using Blender
CN117523070A (zh) 一种基于光线追踪的计算机图形渲染方法和系统

Legal Events

Date Code Title Description
EEER Examination request
FZDE Discontinued
FZDE Discontinued

Effective date: 19980617