Suivez-nous sur X

|
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z,
ALL
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z
|
|
A propos d'Obligement
|
|
David Brunet
|
|
|
|
Test de Real 3D 2.0
(Article écrit par Philippe Bérard et extrait d'Amiga News - septembre 1993)
|
|
Un grand pas vers le photoréalisme !
Les logiciels d'image de synthèse sur micro n'ont véritablement pris leur essor que depuis trois
ans environ, avec le passage de modeleurs simples et limités comme Sculpt Animate 4D à des logiciels
plus professionnels comme Imagine, LightWave, 3D Studio, Mac Renderman ou Real 3D. Le dernier logiciel
en date, Real 3D 2.0 réduit considérablement l'écart existant entre les logiciels présents sur les
stations dédiées, type Silicon Graphics, et ceux présents sur micro (il est même en avance pour
certains aspects). C'est donc, une fois n'est pas coutume, l'Amiga qui bénéficie des dernières techniques
d'imagerie avant les autres.
Après un mois de test intensif, nous allons donc vous faire voyager dans le meilleur logiciel de
synthèse d'image du moment sur micro. La création d'images de synthèse est un processus qui se déroule
en plusieurs étapes. Une fois que l'idée de l'image ou du scénario de l'animation a été couchée sur
papier, on passe par trois phases :
1. La modélisation : elle se fait dans la partie modeleur du logiciel. Dans ce mode, l'utilisateur
crée ses objets grâce aux différents outils présents. Il est souvent indispensable de faire des prérendus
pour se rendre compte de l'aspect final que prendra l'objet.
2. L'animation : elle se fait souvent dans le modeleur même. II s'agit de créer des chemins que
les objets devront suivre, de les faire tourner sur eux-mêmes ou de les transformer, voire de les détruire
à la suite d'une action.
3. Le rendu : c'est là que se règle le réalisme de l'apparence des objets (matière et habillages),
et qu'on lance la génération de l'image ou l'animation finale.
Après la production des images, vient la partie post-production, c'est-à-dire la retouche des images grâce
un logiciel de traitement en deux dimensions (type Image-Master, ImageFX ou TVPaint), l'enregistrement
image par image sur bande vidéo (ceci est généralement fait en même temps que le rendu) ou le transfert sur
bande numérique pour conversion sur bande vidéo grâce à une Abekas (cet appareil permettant même d'ajouter
plusieurs types d'effets vidéo lors du montage).
Premier aperçu
Lorsque l'on achète la nouvelle version de Real 3D, la première chose qui saute aux yeux, c'est que
la boîte n'est guère plus imposante que celle de la version précédente. La qualité des images affichées
au dos a cependant bien évolué ! Le classeur, qui passe de 100 à 800 pages, souligne une mentalité beaucoup
plus professionnelle de la part de l'éditeur. Un petit détail pourtant, en intriguera plus d'un lors de
la recherche dans l'index : les pages utilisent le même principe de numérotation que les chapitres.
Par exemple, lorsque l'on recherche "Shadow mapping" dans cet index, il est indiqué : Shadow mapping - R.1.1.
L'inconvénient, c'est que l'on ne sait pas si c'est la page R.1.1 ou le chapitre R.1.1, le "R" indiquant
quand même que ce qui nous intéresse est dans la partie "Référence".
L'ajout de tutoriels, série d'exemples par la pratique des fonctions du logiciel, est un élément très
important pour avoir une bonne prise en main. Quelques domaines sont malheureusement survolés dans ceux-ci,
comme les repères des objets spline, et d'autres fonctions n'ont apparemment plus le même nom que celui
indiqué dans le manuel, mais globalement celui-ci s'avère être un excellent compagnon.
Real 3D est distribué sous forme de fichiers compactés répartis sur quatre disquettes. Ces fichiers sont
décompactés dans le répertoire demandé au départ par le programme d'installation maison (pas de script utilisant
le programme "Installer" de Commodore, pourtant de plus en plus répandu).
Le logiciel et tous les fichiers qui l'accompagnent, une fois installés, prennent environ 6 Mo
sur le disque, ce qui est nettement supérieur aux 2 Mo de la version précédente, mais reste tout
de même raisonnable pour un logiciel de ce type (par comparaison, LightWave 3.0 et les effets du Toaster
sont distribués sur 27 disquettes compactées !).
Les fichiers fournis avec logiciel
Ces fichiers comprennent :
- Des textures (images IFF de matériaux et "bumpmaps").
- Des fichiers "projet" d'exemple, accompagnant les différents tutoriels exposés dans le manuel.
- D'autres fichiers "projet" démontrant les nouvelles possibilités de rendu et d'animation apportées
par le logiciel (comme le "motion blur" ou l'animation de particules).
- Des scripts RPL (Real3D's Programming Language) d'exemple, pour ajouter des méthodes d'animation
au logiciel, contrôler les paramètres des textures, etc.
Bref, ce langage permet de contrôler toutes les fonctions de Real 3D.
- Des programmes ARexx (deux tests de pilotage du modeleur).
L'environnement de Real 3D
Real 3D 2.0 apporte énormément d'améliorations dans l'environnement du modeleur. Chaque fenêtre d'édition est
gérée comme une tâche à part entière, et il est maintenant possible de continuer à modéliser alors qu'un
rendu se calcule, voire de lancer plusieurs rendus à la fois. Cela s'avère assez vite indispensable de
par la possibilité de lancer un prérendu dans une fenêtre et d'apporter les modifications aux objets en
même temps.
Chaque fenêtre d'édition possède aussi son type de rendu, qui peut être simplement affiché, ou une
sauvegarde vers un fichier 24 bits IFF, Targa ou BMP (format Windows). Real 3D donne aussi la possibilité
d'ouvrir plusieurs écrans pour, par exemple, modéliser dans un écran 4 couleurs, et générer les rendus dans
un écran HAM, 256 couleurs ou HAM8.
Types de fenêtres
Plusieurs types de fenêtres sont disponibles :
- View : fenêtres d'édition en vue de front, de côté, de dessus ou en perspective.
Ces fenêtres peuvent afficher une grille absolue (c'est-à-dire une grille correspondant au
repère OXY du monde, comme dans Caligari) et/ou une grille relative aux types de vue indiqués ci-dessus.
- Tools : fenêtre contenant les petites icônes de création d'objets comme dans la version précédente.
Il est désormais possible de n'afficher que les icônes d'une famille : primitives, lumières, opérations
booléennes, etc. Il est aussi aisément possible de créer sa propre famille d'icônes, chacune d'elles
étant associées à une procédure RPL.
- Select : fenêtre d'affichage de la hiérarchie des objets. Cette hiérarchie se comporte un peu
comme un répertoire de disque dur. Un niveau ("level") ou une méthode d'animation peut être considéré
comme un répertoire, et un objet ou une texture comme un fichier. Pour les fenêtres de type "View",
il est possible de supprimer les deux fermetures et de redimensionnement pour éliminer les
épaisseurs des bords.
Le modeleur
Pour commencer, un nouveau type de primitives a été ajouté : les primitives coupées (le préfixe du
nom commence par "cut"). Lors de la création de ces primitives, on commence par modéliser
l'objet plein, puis on entre graphiquement l'angle de départ et l'angle dé fin du "quartier"
(comme un quartier d'orange). Ces primitives sont là principalement pour créer en une seule
manipulation des objets coupés, et accélérer ainsi les assemblages.
Une fenêtre d'entrée de coordonnées a remplacé l'utilisation des touches ";" et ":" de la version 1.4.2.
Cette fenêtre permet de rentrer des coordonnées pour chaque type d'opération : saisie d'un point, d'une
rotation, d'une translation, etc. Les coordonnées peuvent être cartésiennes ou polaires (très utile
lors de saisie de points sur une sphère). Il est également possible de choisir l'unité employée :
mètres, centimètres, millimètres, pouces, etc.
Personnellement, je trouve l'utilisation de cette fenêtre un peu rébarbative à la longue,
et le fait qu'il n'existe pas de "hotkey" pour rentrer les coordonnées (il faut cliquer dans la fenêtre
avec la souris) manque souvent lors de la modélisation.
L'édition précise est grandement facilitée par un nouvel outil : la pile de vecteurs (Vector Stack).
Lorsque l'on presse sur la touche "Shift" et que l'on trace un rectangle autour d'un objet ou
d'un ensemble d'objets, tous les vecteurs (c'est-à-dire les points) se trouvant dans cette délimitation
sont empilés en ordre dans cette pile. Ensuite, lors de la création d'un objet, il est possible de
dépiler vecteur par vecteur les points enregistrés, et au passage d'effectuer quelques opérations
simples (addition, soustraction, moyenne, etc.) sur ces vecteurs pour une édition plus précise.
Imaginons, par exemple, que l'on veuille créer un cercle centré autour d'un carré. Ce genre de manipulation
réclamant un emplacement précis étant habituellement fastidieux, il faudra :
- D'abord créer le carré avec l'outil rectangle (l'utilisation de la grille est ici fortement recommandée).
- Sélectionner avec "Shift" un des côtés du carré (celui-ci indiquera la longueur pour le rayon du cercle).
- Sélectionner avec "Shift" deux points diagonalement opposés de ce carré.
- Calculer la moyenne des deux points (pour obtenir le centre du carré). La moyenne est toujours effectuée
sur les deux derniers points de la pile (c'est une pile classique de type LIFO, "Last In First Out" :
dernier entré premier sorti).
- Activer l'outil "Disk" pour tracer le cercle.
- Récupérer le premier vecteur, c'est-à-dire le dernier entré, qui est en fait la moyenne. La pile est
mise à jour à chaque récupération, elle se vide donc en conséquence.
- Récupérer le vecteur sur la pile, pour l'affecter au rayon : c'est le dernier à sortir (le côté du carré
sélectionné), c'est pourquoi on l'a empilé en premier.
Voilà, simple non ? A la longue, cette technique se révèle très précise pour coller un objet exactement sur
le bord d'un autre, pour appliquer une texture à un objet, etc.
Tout modeleur qui se respecte se doit de
posséder des outils d'ajustement des points sélectionnés sur une grille. Cette grille permettra de positionner
exactement un objet, de lui donner des dimensions très précises, en ajustant le point courant au point le
plus proche sur la grille. Celle de Real 3D a considérablement évolué : il est désormais possible de définir
plusieurs types de grilles à sa convenance, chacune ayant un nom, un pas, une couleur et une dimension différentes.
Ces grilles sont sauvegardées avec les projets (scènes).
Il est maintenant possible de définir ses propres
noms de couleur, en fixant les valeurs des trois composantes Rouge/Vert/Bleu, et en leur associant un nom, par exemple :
Bleu = R 0, G 0, B 255, Rouge = R 255, G 0, B 0, Cyan = R 255, G 0, B 255. Un conseil :
constituez-vous une banque pour toutes les couleurs que vous utilisez régulièrement (vous pouvez même utiliser des
noms de matériaux, comme peau, terre, herbe, etc.), car la sélection de la couleur d'un objet en est ensuite
grandement accélérée.
Pour changer la couleur d'un objet, deux solutions sont maintenant offertes : associer un nom de couleur à
l'objet (préférable), ou ouvrir l'écran "Color", sélectionner "Fetch" si l'on veut éditer la couleur actuelle
de l'objet pour la modifier, ajuster les trois composantes, puis sélectionner "OK", et ensuite aller
dans le, menu Modify/Properties/Color. Personnellement, je me suis programmé un petit utilitaire qui
convertit une liste de couleurs en un fichier "named colors" pour Real 3D, ce qui diminue radicalement le nombre
d'actions à effectuer.
Primitives
Real 3D est actuellement le seul modeleur sur Amiga utilisant véritablement la CSG, ou Constructive Solid Geometry,
ou modélisation par composition de volumes. En effet, les objets de base sont des primitives", stockées sous
forme de formules mathématiques, permettant ainsi un gain en emplacement mémoire, une absence de "facettes"
sur les objets possédant des arrondis, et la possibilité d'utiliser des opérations booléennes (AND, OR, NOT)
pour sculpter les objets entre eux. Cette CSG permet également de construire des formes composées de plusieurs
types de primitives, très utiles pour construire des tubes à coudes arrondis, des vases et d'autres structures
composées.
Les primitives sont nombreuses : polyèdre, disque, sphère, cube, pyramide, cône, etc.
Pour chaque primitive, il existe une version "cut", qui permet de définir des quartiers de primitives,
facilitant ainsi les assemblages.
Malgré tout, ces primitives montrent assez vite leurs limites lorsqu'il s'agit de modéliser des objets plus
complexes, comme des engins spatiaux, des statues, etc. C'est pourquoi il existe des opérations booléennes
qui permettent de sculpter les primitives avec des "outils". Les opérations booléennes sont actuellement
au nombre de trois :
- OR, qui colle l'objet outil sur l'objet matière.
- AND, qui élimine les deux objets pour ne laisser que leur partie commune.
- AND NOT qui permet d'enlever à l'objet matière la partie commune, ce qui revient à creuser l'objet matière avec l'outil.
Chaque objet peut tour à tour devenir outil pour creuser, diviser ou coller, ou matière à sculpture même
(on peut donc ainsi façonner un outil avant de s'en servir). L'opération DIVIDE, présente dans la version 1.4 et
qui effectuait un AND NOT sur l'objet matière mais créait un nouvel objet correspondant à la partie éliminée,
devrait réapparaître dans un version ultérieure du logiciel (elle permettait de conserver à la fois le
gâteau entamé et la part du gâteau). Mais même si les opérations booléennes élargissent considérablement le
champ d'application des primitives solides à la modélisation, en permettant, par exemple, la création d'une boule
de golf en sous-trayant des petites sphères à une plus grosse, essayez donc de construire un visage avec ce
type de sphères pleines ou creuses !
C'est pourquoi il existe une autre famille d'objets, plus souple, qui permet la modélisation d'objets arrondis,
parfaite pour les formes organiques : la B-Spline, ou courbe de Bézier et, par extension, la surface à base
de courbes de Bézier, appelée "Mesh" dans le logiciel. Une courbe est composée d'un point de départ et un point
d'arrivée, ainsi qu'un, deux ou trois points de contrôle intermédiaires.
Toutefois, ces objets ont aussi un gros défaut : leur lenteur. Un compromis existe toutefois dans Real 3D,
le mode B-Spline -> Phong, présent dans les options de rendu, processus assez gourmand en mémoire qui permet
de faire des rendus rapides, mais en gardant les défauts de tout rendu Phong (méthode de calcul de l'illumination
locale d'un objet).
L'animation
Real 3D 2.0 apporte des fonctions en animation que l'on a encore jamais vu sur micro-ordinateur, certaines étant
même encore fort rares dans les logiciels de référence sur les stations dédiées. Les différents types d'animation sont
maintenant regroupés par types (selon une philosophie "orientée objet") appelés méthodes. Ces méthodes sont considérées
comme des objets à part entière dans le modeleur de Real 3D : il suffit d'en copier une dans une hiérarchie pour que tous
les objets de la hiérarchie subissent l'effet de cette méthode, un objet pouvant lui-même être une hiérarchie.
Plusieurs méthodes d'animation sont déjà définies dans le logiciel, mais il est possible d'en définir de nouvelles grâce
au langage RPL dont nous parlerons plus loin. Les paramètres concernant chaque type d'animation sont passés à la
méthode sous forme de "tags" (mots-clés suivis de paramètres que l'on entre dans une liste) et d'objets que l'on
crée à l'intérieur de la méthode de l'animation (exemple : un objet axe pour définir l'axe d'une rotation).
Real 3D 2.0 est livré avec pas moins de 24 méthodes d'animation :
- Path (chemin) : indique un chemin à suivre pour un objet. Ce chemin est relatif à la position de départ de l'objet.
- Rotation : rotation de l'objet ou de la hiérarchie autour d'un axe.
- Sweep : rotation de l'objet, une courbe passée en paramètre définissant les accélérations et les décélérations.
- Size (taille) : suivi d'un chemin et redimensionnement de l'objet par rapport à un point de référence.
- Stretch (étirement) : déformation 3D d'un objet suivant une courbe.
- Direction : suivi d'un chemin et rotation de l'objet lors des changements de direction.
- Move & Dir (déplacement et direction) : comme la méthode Path, mais une deuxième courbe sert à indiquer l'alignement
de l'objet par rapport au chemin (pour simuler, par exemple, une voiture qui dérape).
- Control Curves (courbes de contrôle) : cette méthode utilise deux courbes entre lesquelles l'objet se déplacera et
sera tourné et déformé en conséquence.
- Simple Skeleton (squelette simple) : associe une courbe à un objet ou à un ensemble d'objets. Lorsque cette courbe
est translatée ou déformée, les objets associés sont déplacés en conséquence.
- Skeleton (squelette) : même méthode que Simple Skeleton, mais cette méthode effectue une rotation aux objets
cibles pour que ceux-ci soient parfaitement perpendiculaires à la courbe. Un ver constitué de sphères ou d'anneaux
gardera ainsi toute sa cohérence lorsque l'on déformera son axe.
- Inv Kinematic (cinématique inverse) : déplacement d'un objet le long d'une courbe avec calcul du
déplacement des objets directement rattachés à lui. Cette méthode, extrêmement importante en animation,
permet, par exemple, de faire suivre un chemin à un doigt d'une main, et le logiciel se charge de déplacer/tourner
la main et le bras qui lui sont rattachés. Sans cet outil, il faudrait décomposer à la main les
rotations des divers axes (épaule, bras, poignet puis doigt), et il serait donc extrêmement difficile de
faire écrire un bras.
- Morphing Open (transformation) : cette méthode transforme un objet en un autre. Il est
également possible d'indiquer plusieurs objets définissant les différentes étapes de la transformation.
La texture de l'objet peut également se transformer.
- Morphing Closed : effectue les mêmes transformations que la méthode Morphing Open, mais ici la
transformation est cyclique. Par exemple, si l'objet 1 se transforme en objet 2, l'objet 2 se
transformera ensuite en objet 1, ad infinitum...
- Transform : cette méthode utilise un axe et une courbe pour modifier le "temps" tel qu'il est
vu par l'objet cible. La courbe est projetée sur l'axe et sert ainsi à définir les accélérations, décélérations et
le sens du mouvement de l'objet cible (normal ou inversé).
- Wave (vague) : permet de créer des vagues radiales (comme lorsque une goutte tombe dans un liquide),
parallèles (vagues sur la mer) ou isolées (vagues dans un port) sur une surface spline ou sur un
ensemble d'objets.
- Radial Force (force radiale) : définit un champ de force sphérique qui attirera ou repoussera
l'objet cible. Si le champ d'attraction est positif, l'objet sera attiré. S'il est négatif, il sera repoussé.
- Directed Force (force dirigée) : utilise une courbe pour définir la direction du champ de force
qui peut varier dans l'espace. Cette méthode permet de créer une turbulence ou un effet de vent.
- Tangent Force (force tangente) : cette méthode génère une force tangente à la courbe passée en
paramètre. Elle peut, par exemple, appliquer une force orbitale autour d'un axe à un objet cible.
- Int Collision (collision interactive) : cette méthode calcule toutes les collisions et les frictions
entre les objets cibles et les objets passés en paramètre.
- Collision : même principe que la méthode Int Collision, mais seules les collisions entre objets
cibles et objets paramètres sont prises en compte.
- Friction : permet de simuler la friction de l'air : plus l'objet est gros ou va vite, plus la
friction le freinera.
- Creation : cette méthode, très puissante, ressemble un peu aux particules système. Elle permet de
créer facilement des grappes d'objets simples dont on spécifie le comportement grâce au langage RPL.
A la différence des particules système classique, les objets de base bénéficient ici d'une véritable
géométrie, et sont intégrés au reste de la scène lors du calcul de l'animation.
- Processor (moteur) : cette méthode doit être présente lors de l'animation. C'est le "moteur" de
l'animation de particules, celui qui effectue tous les calculs dont les paramètres sont les méthodes
ci-dessus avec leurs propres paramètres, et applique ces calculs aux objets cibles.
- RPL (langage de programmation) : il est possible de créer ses propres méthodes d'animation avec ce
langage, structuré dérivé du Forth (en fait, bien au delà de l'animation, ce langage contrôle tous
les aspects sur logiciels).
Chaque nouvelle méthode, une fois créée, pourra être ajoutée à la liste de méthodes du logiciel. Chaque
objet possède maintenant des paramètres qui lui sont propres : vélocité, direction, énergie cinétique,
masse, centre de gravité, friction et élasticité. Ces différents paramètres sont évalués par
la méthode Processor lors du calcul de l'animation.
Tous ces effets peuvent être combinés dans une même animation, et évitent du même coup les calculs et
placements fastidieux nécessaires dans les autres logiciels pour réaliser des mouvements réalistes.
Les textures
La texture d'un objet définit ses propriétés face aux rayons lumineux : transparence, réflexion, diffusion,
etc. Real 3D gère maintenant celles-ci comme des objets à part entière (toujours la philosophie
"orienté objet"). Elles sont appliquées à la hiérarchie dans laquelle elles se trouvent, ne sont pas limitées
en nombre, et, tout comme les autres objets, elles peuvent être animées indépendamment des mouvements
de l'objet. Real 3D propose plusieurs types de texture :
- Color Map : la texture définit la couleur de l'objet. Cela peut être une couleur simple
(vert, magenta, etc.) ou une image.
- Bump Map : chaque pixel d'une image IFF passée en paramètre défini, selon son intensité de rouge,
l'élévation du bump map. L'élévation n'est pas réellement appliquée à l'objet, mais le logiciel effectue
le calcul d'illuminations en fonction du bump map lors du rendu (on triche sur l'orientation de la
facette en chaque point). L'altitude maximale simulée (positive ou négative) du bump map peut être réglée.
- Transparency Map : l'intensité de vert de chaque pixel de l'image IFF définit le degré de transparence
de l'objet en cet endroit précis.
- Brilliance Map : l'intensité de bleu de chaque pixel de l'image IFF sert à indiquer le degré de
réflexion de l'objet à l'endroit où il est projeté. Plus l'intensité de bleu sera importante, plus
l'objet se comportera comme un miroir à cet endroit.
- Shadow Map : l'image IFF est appliquée comme une ombre sur l'objet.
- Clip Map : ceci permet de définir une couleur transparente pour l'image appliquée. A l'endroit où
la couleur transparente sera détectée, l'objet sera transparent. C'est une espèce de "Transparency Map"
binaire.
- Spline Map : l'image, si elle est appliquée sur une spline ou sur un maillage de splines, sera très
exactement "tendue" sur cet objet. Lorsque l'on modifiera ensuite la forme de la spline ou du maillage,
l'image sera déformée pour suivre les transformations. Ceci évite l'impression de glissement de la
texture lors de la déformation de l'objet.
Ces types de "mapping" (enrobage d'une texture autour d'un objet) peuvent, bien sûr, être cumulés
sur une même texture. La matière possède ensuite différents réglages définissant sa réaction face à
la lumière.
- Specularity : contrôle la taille des points lumineux sur l'objet. Par exemple, sur un objet en
plastique, l'impact lumineux est beaucoup plus diffus que sur un objet en métal.
- Specularity Brightness : intensité de l'impact lumineux.
- Brilliance : degré de réflexion de l'objet. Plus il est élevé, plus l'objet réfléchit son environnement.
- Transparency : degré de transparence.
- Turbidity : permet d'ajuster le degré de "brouillard" existant à l'intérieur du matériau.
- Turbidity Saturation : ajuste la distance à partir de laquelle le rayon lumineux sera affecté par
le "brouillard".
- Refraction : définit l'indice de réfraction du matériau, c'est-à-dire le taux de courbure infligé au
rayon lumineux lors de son passage à l'intérieur de celui-ci.
- Roughness : ajoute une certaine granularité au matériau. Il s'agit en fait d'un calcul de "bump mapping"
aléatoire.
- Dither : permet de régler le degré de tramage appliqué à l'objet, méthode qui permet de créer des
dégradés avec peu de couleurs.
Le positionnement des textures sur l'objet cible ("painting") peut être
défini comme : default (ne marche qu'avec les textures qui n'enrobent pas d'images, comme un
miroir ou du verre), parallel (un rectangle permet d'indiquer ou se situera l'image), cylinder
(l'image sera enroulée cylindriquement autour de l'objet), sphère (les quatre coins de l'images sont
réunis en un même point, puis l'image est texturée autour de l'objet) et disk (les bords gauche et
droite de l'image sont collés, et l'image est ensuite aplatie sur le disque).
Il est possible, grâce
au langage RPL, de programmer des textures procédurales (la texture change selon les actions appliquées
à l'objet porteur, à son emplacement, etc.) ou mathématiques (exemple : calcul d'élévations,
de couleurs fractales, de bois, de marbres, etc.).
Une autre fonction, très importante pour l'application de plusieurs textures sur un objet, a été
ajoutée : le Scope Masking. Ce mode sert à plaquer la texture uniquement à l'endroit où le "painting"
est en intersection avec l'objet.
Le rendu
Pour calculer l'image finale, Real 3D offre une panoplie de six types de rendu :
- Draft : rendu rapide, sans calcul d'illuminations ni de textures. Ce mode ressemble beaucoup à un
lissage de Gouraud (couleur calculée uniquement au sommet puis interpolée sur les facettes).
- Environment : se comporte un peu comme le mode Draft, mais avec un calcul des textures et des réflexions
de l'image définie comme "environment mapping".
- Lampless : une lampe unique est utilisée, à l'endroit où est placé l'observateur.
- Shadowless : toutes les sources lumineuses sont utilisées, mais les objets ne génèrent pas
d'ombre.
- Normal : rendu plein pot de l'image.
- Outline : dessine le contour des objets, avec élimination des faces cachées. Ce mode peut
s'avérer très utile pour créer des masques en vue d'une utilisation dans un logiciel de retouche d'images
type ImageMaster ou ImageFX.
Certaines fonctions, que l'on a plus souvent l'habitude de voir dans les logiciels sur stations dédiées,
ont également été ajoutées.
- Motion Blur : cet algorithme, qui ne ralentit que de 10 à 20% le rendu de l'image, permet
d'ajouter un flou de mouvement bien connu des animateurs. Cette fonction s'avère utile lorsque
l'on veut une animation ayant peu d'images, mais restant tout de même fluide (anticrénelage temporel).
- Soft Shadows (ombres douces) : ce mode, qui ne marche qu'avec deux types de lumière (ligne et mur
lumineux), génère des ombres dont les bords ne sont pas francs, et donc plus réalistes.
- Depth Of Field (profondeur de champs) : cette fonction ajoute une profondeur de champs à l'image
calculée : l'objet sur lequel la mise au point est faite est net, mais ce qui se situe en dehors
de cette mise au point devient de plus en plus flou avec la distance.
Différents autres paramètres influent sur la qualité de l'image finale : l'anticrénelage,
élimination des escaliers ou du grouillement produit par un trop grand nombre de polygones
derrière un pixel donné, lightsamples, qui subdivise les lumières étendues (ligne ou panneau
lumineux) pour adoucir un peu plus les ombres, et matsamples, qui définit la profondeur de calcul
de distorsion des rayons lumineux dans les matériaux non homogènes (exemple : atmosphère).
Conclusion
Real 3D n'utilise que le lancer de rayons pour effectuer ses rendus, ce qui permet un réalisme important,
mais influe aussi considérablement sur le temps de calcul de l'image et, à fortiori, de l'animation.
C'est pourquoi il semble difficile d'effectuer des animations réalistes en très peu de temps,
ce qui fait pourtant l'attrait des logiciels utilisant un rendu "scanline" (Caligari, Imagine,
LightWave), méthode rapide et souvent aussi réaliste que le lancer de rayons, grâce à l'utilisation de
certains artifices (reflection mapping, shadow mapping, transparency mapping, etc.).
L'ajout d'un tel module confirmerait aisément la place de Real 3D comme meilleur logiciel du marché.
L'interface graphique du logiciel déroutera certainement les utilisateurs de la version précédente (1.42),
mais elle est maintenant entièrement paramétrable et, même si elle possède encore quelques bogues,
les mises à jour fréquentes du logiciel (environ une par mois. mise au point oblige) combleront assez
vite ses quelques lourdeurs.
Finalement, le prix du logiciel (3990 FF) peut paraître élevé, mais il faut savoir que seuls les
logiciels coûtant 20 à 30 fois son prix apportent actuellement le même nombre de fonctions sur
les stations graphiques type Silicon Graphics. Bien évidemment, ce n'est pas un produit pour
débutant (ceux-ci lui préfèreront certainement Real 3D Classic) et une certaine pratique est requise pour
maîtriser complètement le logiciel.
Nom : Real 3D 2.0.
Éditeur : RealSoft.
Genre : modélisation 3D.
Date : 1993.
Configuration minimale : Amiga OCS, 68000, 1 Mo de mémoire.
Licence : commercial.
Prix : 3990 FF.
|
|