Rubrique POV

Les vacances d'été sont terminées. Le climat se refroidie, ca va être plus facile de lancer des calculs longs avec POV, imaginez : il fait 30 degrés dans la pièce, l'ordinateur calcule une image, ça prend du temps, le processeur chauffe, la temperature augmente, pfou...
Bon... je pense que le rédac-chef n'a pas vu l'erreur du dernier STimulus, elle ne vient pas de moi : pourquoi appeler une rubrique "Initiation à EB Model" alors que j'expliquais que ca devenait compliqué pour moi d'utiliser EB Model sur mon simple ST ou sur mon 486 (Note de Rajah : Mea Culpa).
Comme il y a de l'initiation à POV, des includes et des trucs, on va appeler ça la rubrique POV (comme ça le monsieur va plus nous embêter...).

INITIATION A POV3

Au trimestre dernier, nous avons vu quelques trucs sur POV 3 sans aller très loin. Bon, nous allons continuer...

LE PLAN

Le plan est l'objet infini le plus utilisé : on peut l'utiliser pour le sol, le ciel, etc... la syntaxe est :

      plane { <normale>,distance }

Il est vrai que je suis méchant ici... La `normale` est le vecteur perpendiculaire au plan. Imaginons que vous désirez faire un plan dont sa surface est parrallèle aux vecteurs <1,0,0> et <0,0,1> (un sol quoi...), son vecteur normal est le vecteur <0,1,0>.
Et pourquoi pas <0,-1,0> ??? Bon... ca serait pas faux. Même si l'objet est infiniment fin, il faut l'imaginer plein (???). Si notre plan representait réellement le sol, la partie en dessus pourrait être pleine (pleine ou pas pleine, on en saura rien). Le vecteur normal doit se diriger vers la partie creuse de notre plan. Nous voulons représenter un sol, donc la partie pleine est située vers le bas et la partie creuse vers le haut. Donc notre vecteur normal sera dirigé vers le haut donc <0,1,0>.

Pour le moment, le sens du vecteur normal n'a pas trop d'importance mais cela pendra une grande importance lors des CSG (opérations d'unions, différences, de fusions et d'intersections...).
`distance` représente la distance du plan par rapport à l'origine, à condition que votre vecteur normal soit unitaire (que `sqr(x^2+y^2+z^2)=1`).

Nous voulons que notre sol soit placé à un niveau y=-5. La commande sera donc :

      plane { <0,1,0>,-5 }

Vous pouvez remplacer les vecteurs unitaires pour leurs variables :

      plane { y,-5 }

Mettons une petite couleur immonde :

      plane { y,-5
        pigment { Red }
        }

NO_SHADOW

Nous avons vu comment créer un sol mais réflechissons un peu. POV calcule la trajectoire de chaque rayon lumineux. Les rayons interceptés par un object créee une ombre. Les ombres créés par le plan (à part les ombres propres mais elles ne sont pas considerées comme des ombres) ne sont pas visibles : vous pouvez pas voir ce qu'il y a sous le sol.
Pour accelerer un peu les calculs, vous pouvez demander à POV de ne pas calculer les ombres d'un objet (à utiliser dans le cas où on est sûr que les ombres ne seront jamais visibles, c'est le cas avec le ciel ou un sol), la commande est `no_shadow`.
Nous allons l'utiliser avec notre sol precedement créé :

      plane { y,-5
        pigment { Red }
        no_shadow
        }

Suite de notre script :
Au niveau précédent, nous avons commencé à créer une table (pas très belle mais ca va arriver). Complétons le script avec un sol :

      #include "COLORS.INC"              // on lit la bibliotheque de couleurs

      box { <-10,0,-10>,<10,1,10> // on dessine une boiboite
        pigment {color Brown} }         // de couleur Marron

      cylinder { <-8,0,-8>,<-8,-10,-8>,1 //on dessine un cylindre
        pigment {color Brown} }                //de couleur Marron

      cylinder { <8,0,-8>,<8,-10,-8>,1   //un 2eme cylindre
        pigment {color Brown} }

      cylinder { <-8,0,8><-8,-10,8>,1    //un 3eme
        pigment {color Brown} }

      cylinder { <8,0,8><8,-10,8>,1 //une table a 4 pieds donc voici
        pigment {color Brown} }           //un 4eme pied

      plane { y,-10      //le sol est place en -10 car le bas des pieds est en -10
        pigment {Yellow} //on met une couleur jaune car le jaune, c pas bo
        no_shadow }      //on ne calcul pas les ombres du sol...

      light_source { <-10,30,-30> color White }  //ho... deux lampes de
      light_source { <20,40,-50> color White }   //couleurs blanches

      camera { location <10,15,-20>     // et on place la camera
        look_at <0,0,0> }

TRUCS Et ASTUCES POUR POV3

Bon, comme d'habitude, le début est destiné aux débutants, maintenant voici des petits trucs pour les initiés de POV (et n'oubliez pas non plus les includes).

Imaginons que vous voulez créer un include intéressant pour l'envoyer au mag, problème : il faut des paramètres et vous êtes pas sûrs que l'utilisateur va en mettre.

Il y a plusieurs solutions. La première, c'est de mettre des valeurs par défaut. Pour cela, on utilise la directive `ifndef`.

    #ifndef (ma_variable)    // dans le cas ou ma_variable n'est pas definie
      #declare ma_variable=1 // alors ma_variable=1 (c notre valeur par defaut)
    #end                     // fin de la partie conditionnelle

Dans le cas ou ma_variable a déjà été définie, cette partie ne sera pas parsée.
L'autre solution, c'est d'arrêter le parsing pour informer l'utilisateur qu'il a oublié de définir une variable.

    #ifndef (ma_variable)
      #error "\nEhhhhh!!! t'as oublier de definir ma_variable...\n"
    #end

La directive error crée une erreur donc affiche le message "Ehhhhh!!! T'as oublier de definir ma_variable..." et arrête le parsing... Pourquoi "\n" dans le message ??? Cela permet de sauter une ligne. Donc notre message, nous sautons une ligne avant et après le message. Voici les indispensables de ces commandes à utiliser lors de l'affichage d'un texte :

- "\a" : crée un bip
- "\t" : crée une tabulation horitzontale
- "\n" : un retour à la ligne

Il y en a encore d'autres mais ils sont loin d'être indispensable.
Voilà... maintenant passons un peu aux includes de ce numéro

PLUGS-IN FOR POV3

Pour ceux qui ont raté le numéro précédent de STimulus, voilà ce qu'ils ont raté au niveau plugs-in (oh... juste les plugs-in, je vais pas leur expliquer qu'ils ont raté le secret de la fabrication des TWIX).

GALAXY : | un include permettant de créer des scènes interspatiales
LENSFLARE : | des lensflares de bonne qualité
X-WING : | un X-WING (un vaisseau de la guerre des étoiles pour les newbies) non texturé

Cette rubrique est faite pour les initiés de POV, voici des nouveaux includes :

E-TIE-I.ZIP55049 octets Continuons dans le thème de l'espace avec le TIE FIGHTER. Ce vaisseau est l'un des vaisseaux des méchants. A la différence du X-WING du numéro précédent, celui-ci est texturé (chouette) et de bonne qualité. |

SPWEB.ZIP5196 octets Quel est le rapport entre POV et INTERNET ??? Aucun... Cet include permet juste de dessiner des toiles d'araignées (je vous l'avais dit qu'il y avait aucun rapport). Avec cet include, vous pourrez modélisez votre chambre, votre ST ou votre Grand Mere =OP . Si la toile d'araignée de cet exemple ne vous plaît pas, il y a pas mal de paramètres pour modifier notre toile... Pour connaître les différentes options, regardez un peu dans le fichier include, vous verrez un commentaire explicatif. Sinon, les paramètres ne sont que falcultatifs. |

BEND2.ZIP6666 octets POV ne propose pas énormement d'outils de transformations. Le seul permettant réellement de transformer un objet, c'est la fonction matrix mais cette fonction est très peu conviviale. Ceci nous oblige à utiliser des modéleurs à base de meshs comme RHINO (PC). Un programme comme RHINO permet énormemement de transformations sur des objets à base de meshs. Dans ces transformations, il y a le BENDING (comprenez ici le pliage). "Mouais.... mais nous on a un ATARI avec EB Model, ça nous permet pas de faire un pliage d'objets...". Mais si, vous pouvez avec cet include qui permet de plier un objet sur axe (ce qui est normal). Regardez l'animation, le résultat est assez bon ("Tiens Mr Baranger, pourquoi ne pas inclure cette fonction dans EB Model ???). Il vous reste à regarder les 2 scripts fournis et la documentation. |

Voilà... 3 includes qui vous permettront de vous donner quelques idées de scripts. Dans le cas ùu vous créez des includes, on est preneur... Si vous avez des idées, des remarques, on est toujours preneurs.

Maxx Fly
maxxfly@altern.org

Et puis comme d'habitude, le greetz et le karaoké...
Coucou à Bouh, Zoe, Tilou, Footz, Osmose (eh oui, ça fait longtemp qu'on c vu), Rajah (prochainement, ta boîte aux lettres va exploser : peut-être un mail bomb), Sex Killer, etc...
Comme je n'ai pas eu de nouvelles idées pour le karaoké (même pas d'observations, pfou...), je vais continuer mon plaisir. Personnellement j'aurais mis les paroles de "Tchaou et Grodo" (desole pour l'ortho), mais comme peu de personnes connaissent (Osmose ??? Tu connais ??? Pourtant c un manga des annees 80... Mais oui... l'histoire d'un petit chien abandonné qui cherche sa maman, si tu veux, je te passerais un snap), j'ai préféré mettre les paroles de quelquechose de bien français: TELECHAT.
Si vous connaissez pas, la seule excuse qui vous reste, c l'âge. RAppelez vous : un chat journaliste avec le bras dans le plâtre, une autruche journaliste aussi, des trous, des singes qui font de la pub... Ca y est ??? Vous etes prêts ??? C'est parti...
The GiZmO's GeNeRiKz Collection
TELECHAT
Y a bien trente-six sortes de chats
Des petits, des gros, des angoras
Chats de gouttière et chats Siamois
Y'a qu'une télé, c'est Téléchat
Télévision de premier choix
Faîte à la main comme autrefois
La seule qui soit au beurre d'anchois
Y'a qu'une télé, c'est Téléchat
Y'a qu'une télé, c'est Téléchat, Téléchat !!
Programmes variés et délicats
Pour tous les âges sur tous les toits
Avec un gout de chocolat
Y'a qu'une télé, c'est Téléchat
Presentée par ce cher Groucha
Avec le concours de Lola
C'est le couple le plus sympa
Y'a qu'une télé, c'est Téléchat
Y'a qu'une télé, c'est Téléchat, Téléchat !!
*** Break musical ***
Y'a des images qui font le poids
Des chansons, des jeux, des exploits
Des interviews de petits pois
Y'a qu'une télé, c'est Téléchat
Pour savoir qui, pour savoir quoi
Connaître les choses sur le bout des doigts
Y'a que Lola, y'a que Groucha
Y'a qu'une télé, c'est Téléchat
Y'a qu'une télé, c'est Téléchat, Téléchat !!
Y'a des images qui font le poids
Des chansons, des jeux, des exploits
Des interviews de petits pois
Y'a qu'une télé, c'est Téléchat
Pour savoir qui, pour savoir quoi
Connaître les choses sur l'bout des doigts
Y'a que Lola, y'a que Groucha
Y'a qu'une télé, c'est Téléchat
Y'a qu'une télé, c'est Téléchat, Téléchat !!

Crédits
Série :

Première diffusion : 3 Octobre 1983
Chaîne(s) de diffusion : Antenne 2, Canal J, RTL, La Cinquième
Origine : Belgique / France
Nombre d'épisodes : 234 x 5'

Générique :

Interprète : Philippe DUMAT, Valérie KLING, Maria LABORIT
Paroles : Roland TOPOR
Musique : Pierre PAPADIAMONDIS
Éditions : Y.C. Aligator film

Petite observation: il y a quand meme 234 episodes... Pfou....