La pseudo 3D avec Gimp

Gimp est un logiciel exclusivement 2D mais avec un peu de ruse, grâce aux nombreux outils dont il dispose, il est possible de créer une image en pseudo 3D.

Pour parvenir au résultat de l'exemple en figure 1, quatre étapes sont nécessaires.

  1. Créer un fond avec effet de perspective pour le sol
  2. Créer un texte avec effet de loupe sur le mur vertical
  3. Créer une pseudo-sphère réfléchissante
  4. Peaufiner en ajoutant des ombres, des reflets spéculaires et de lentille.

CREER le FOND

On supposera que le motif "circuit" est disponible dans Gimp. Si ce n'est pas le cas, n'importe quel autre motif (pattern) fera l'affaire. Mais pour reproduire exactement l'exemple, charger dans Gimp le fichier /opt/kde/share/wallpapers/circuit.jpg et sauvegarder le avec l'extension "pat" dans /usr/share/gimp/patterns. Il sera ainsi disponible lors du prochain lancement de Gimp.

Préparation des fonds

- Lancer Gimp.

- Préparer un fichier vide à l'aide de File >New> 640x480 > Background > Ok.

- Remplir le fond blanc par un double-clic sur Fill (pot de peinture) >Pattern fill.

- Ouvrir Dialogs> Patterns et choisir Circuit (ou autre chose).

- Cliquer dans la fenêtre de travail.

C'est fait.

Comme il faudra une image pour le mur et une pour le sol, on sauvegarde le travail en jpg quality 1.00 (sans compression) comme par exemple 1.jpg puis 2.jpg.

On dispose alors de deux images identiques, l'image 2 étant affichée à l'écran. Celle-ci va nous servir à créer le sol.

Création du sol

L'image finale aura une dimension de 400x400 (choix arbitraire). On peut donc déformer 2.jpg, qui est bien plus grande (640x480 actuellement), en s'aidant des guides magnétiques. Ceux-ci sont dissimulés dans les règles bordant l'image. Il suffit de cliquer sur une règle et, en maintenant le bouton gauche de la souris enfoncé, de déplacer le pointeur sur la zone de travail pour voir une ligne pointillée rouge se déplacer. En relâchant la pression sur le bouton, on dépose la ligne à l'endroit voulu et voilà un guide qui devient pointillé bleu lorsqu'il est désélectionné.

- Placer de la sorte un guide horizontal à 300 pixels de l'origine, puis deux guides horizontaux, l'un à 120 et l'autre à 520.

- Sélectionner le calque (layer) par un clic-droit sur l'image : Select> all.

- Double-cliquer sur Transform layer or selection (dans la boîte à outils). Dans la boîte Tools options qui apparait, choisir Perspective.

- Déformer la sélection pour obtenir un trapèze en faisant co-ncider le coin haut/gauche de la sélection avec l'intersection gauche des guides.

- Amener ensuite le coin haut/droite à l'intersection droite des guides.

- On obtient un trapèze isocèle.

- Icônifier l'image ou l'expédier vers un autre bureau.

Création du mur frontal

- Rappeler l'image 1.jpg

- Placer un guide horizontal à 400 pixels, et deux verticaux, l'un à 120 et l'autre à 520.

- Sélectionner le calque par Select> all.

- Sélectionner Transform layer or selection et, dans Tool option, choisir Scaling.

- Déformer le calque de sorte qu'il occupe le carré de 400x400 délimité par les guides.

- Ajouter maintenant un calque transparent avec Layers> Layers & channels . On va positionner le sol sur ce calque, alors autant l'appeler " sol " en double-cliquant sur le nom " new layer ".

Assembler mur et sol

- Copier le sol trapézo-dal de 2.jpg (sélection délicate).

- Le coller dans 1.jpg à l'aide de Edit> paste.

- Le sol se pose sur le calque vide. Le mettre en place de sorte que le bord inférieur de la sélection co-ncide avec le guide horizontal.

- Aplatir l'image par Layers> Flatten image.

- Découper l'image en une taille de 400x400 avec l'outil Crop (il se colle automatiquement aux guides).

- Ajouter un calque "Texte".

- Sauvegarder (par sécurité) sous 3.XCF (format de Gimp conservant les calques).

CREER le TEXTE

- Cliquer sur Xtns> Scripts-Fu> Logos > Crystal.

- Entrer texte "LOUPE" (ou autre chose), Font "Cooper" (ou autre), Font size"105", Background "/opt/kde/share/wallpapers/circuit.jpg", OK.

- Le logo est produit, les lettres sont texturées avec le même motif que le mur mais de taille supérieure puisque le mur, lui, a été réduit. On obtient ainsi un effet de loupe.

- Le logo est constitué de plusieurs calques, dont un appelé "Background". Celui-ci n' ayant plus d'utilité, il faut le supprimer à l'aide de Layers> Layers & channels , en cliquant sur le calque pour le sélectionner puis en cliquant sur la croix au bas de la boîte de dialogue.

- Assembler ensuite les autres calques à l'aide de Layers> Merge Visible Layers (surtout pas Flatten image : on perdrait la transparence du fond).

Assembler le texte

- Copier le texte.

- Le coller dans 3.XCF (qui n'a pas été fermé) sur le calque "texte"

- Le positionner à la demande (ce qui est vu en transparence correspondra plus ou moins à ce qui se trouve dessous).

- Créer un calque "sphère"

- Sauver sous 3.XCF

CREER la SPHERE réfléchissante

Créer la sphère :

La sphère doit réfléchir le texte, c'est-à-dire que celui-ci doit apparaitre inversé par rapport au texte du mur.

- Supprimer le calque "sphère", inutile pour l'opération qui suit (mais toujours présent dans 3.XCF).

- Sélectionner le texte, puis le déplacer en symétrie verticale par un double-clic sur Flip layer or selection> Vertical.

Maintenant, c'est plus délicat :

- Effectuer une sélection circulaire (appuyer sur Shift en même temps que le déplacement de la souris), de telle sorte que 3 lettres au moins soient concernées par la sélection et qu'elles se situent dans la partie supérieure du cercle.

- Déformer la sélection à l'aide de Filters> Distorts> Whirl and Pinch avec les options suivantes : "whirlangle:0", "Pinch amount:-1" "Radius:2" (ce sont des valeurs maxi choisies en fonction du résultat prévisualisé).

- Valider et recommencer l'opération (2 fois donc, 3 fois déformant beaucoup trop).

- La sélection étant toujours active, la copier et fermer le fichier sans sauvegarder.

Assembler sphère et décor

- Rappeler le fichier 3.XCF

- Se positionner en travail sur le calque sphère (on doit y être par défaut).

- Coller la sphère et la positionner pour que les lettres réfléchies correspondent aux lettres du mur.

- Sauvegarder le travail.

PEAUFINER le travail

C'est la partie qui reflète le plus la sensibilité ainsi que le doigté du créateur. Aussi, ne donnerai-je que des conseils généraux afin que la créativité de chacun s'exprime...

Les lettres du logo reçoivent un éclairage horizontal venant du coté gauche (observer les ombres). La sphère doit donc être éclairée de la même manière et doit projeter une ombre sur le sol.

Créer une ombre sur la sphère

- Ajouter un calque "ombre sphère", transparent, opacity 80 (il y a toujours possibilité de revenir sur la valeur).

- Placer 4 guides tangents à la sphère.

- Effectuer une sélection circulaire à l'aide des guides.

- Choisir l'outil Fill with a color gradient.

- Remplir la sélection, couleur noir et blanc mode ...., gradient... Faire des essais jusqu'à satisfaction en changeant l'option mode (par défaut : mode " normal ") : la partie droite de la sphère devrait être plus sombre que la partie gauche supposée éclairée. Si la boîte de dialogue Layers & channels est ouverte lors de cette manipulation sur la miniature du calque "sphère", la forme de l'ombre et sa position apparaissent.

Créer une ombre projetée sur le sol

- Ajouter un calque "ombre sol", transparent, opacity 80.

- Effectuer une sélection elliptique (sans appuyer sur shift) et la positionner de telle sorte que l'extrémité gauche de son grand axe co-ncide avec le point de contact sphère/sol.

- Choisir l'outil Fill with a color or pattern.

- Remplir la sélection d'un vert très sombre.

- Selon la transparence voulue, jouer sur la valeur Opacity.

- Une ombre est toujours plus diffuse sur les bords qu'au centre. Il convient donc de la diminuer sur le pourtour grâce à Filters> Blur> Motion Blur> Zomm> Ok.

- Commencer avec les valeurs par défaut, recommencer avec d'autres valeurs jusqu'à satisfaction.

Ajouter un reflet (spéculaire) à la sphère :

- La lumière venant de gauche, toute la bordure gauche de la sphère doit être plus lumineuse.

Ajouter un calque "reflet" :

- Effectuer une sélection au lasso sur la bordure gauche de la sphère. La peindre avec du blanc, en mode overlay ou screen (faire des essais), jouer avec le degré d'opacité.

Ajouter un effet de lentille

- La lumière frappant la sphère est projetée dans l'objectif sensé photographier la scène.

- Ajouter un calque "lentille".

- Sélectionner Filters> Light Effects> Flare FX.

- Et pour fignoler encore davantage, des points lumineux peuvent être ajoutés grâce à Filters> Light Effects> SuperNova et des paramètres tels que Radius 2 ou 3, Spoke 50 sur les lettres proches du rayon lumineux. Quant aux couleurs de ces points lumineux, c'est affaire de goût.

Voilà. L'oeuvre est presque terminée. Je dis presque parce qu'en regardant bien dans les coins, il doit sûrement subsister des défauts. Tout créateur ne pourra en détacher son regard et il n'aura de cesse, grâce à ses recettes personnelles, de les gommer autant que faire se peut. Que chacun s'y amuse. Car Linux, plus Gimp, plus l'envie de créer, est une source d'amusement à ne pas négliger.

André Pascual

La lampe a été entièrement réalisée sous LINUX, avec Moonlight Creator et Gimp. Comme elle date de plusieurs mois et que je n'avais pas pris la peine à ce moment là de noter point par point la procédure d'élaboration, je ne me souviens plus des détails, mais je pourrais en décrire les étapes. Bien qu'il s'agisse d'une image de synthèse confectionnée à partir d'un wireframe libre de droit livré avec Moonlight, le plus gros du travail est le montage multi-calques dans Gimp. Cette image a été publiée dans la galerie digitale de Studio Multimédia, mais, produit LINUX 100%, elle aurait davantage sa place dans un magazine LINUX.


© Copyright 2000 Diamond Editions/Linux magazine France. - Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1or any later version published by the Free Software Foundation; A copy of the license is included in the section entitled "GNU Free Documentation License".