LANGAGES

POV-RAY.

Le lancer de rayons de POV-Ray, en cartouche. On ne dessine pas : on décrit la scène dans le langage de POV-Ray, les objets, leurs matières, les lumières et la caméra, puis la machine calcule l'image point par point dans le mode 640 × 480, en suivant chaque rayon de lumière à travers les reflets et le verre. Une scène écrite pour POV-Ray se colle telle quelle, tant qu'elle s'en tient à ce que la cartouche connaît.

Une boule rouge, une boule de chrome et une bille de verre sur un damier, sous un ciel bleu.
SPHERES. Reflets, verre et ombres portées.
Un cube de marbre creusé par une sphère, un anneau de bois et trois cylindres croisés dorés.
CSG. Des formes combinées : difference, intersection.
Soixante boules de toutes les couleurs en hélice autour d'un mât.
SPIRALE. Soixante sphères posées par une boucle #while.
Un petit temple grec à dix colonnes de marbre sur un dallage, au couchant.
TEMPLE. Les colonnes viennent d'une macro et d'une boucle #for.
global_settings { assumed_gamma 1.0 }
camera { location <0, 2, -6> look_at <0, 1, 0> }
light_source { <-5, 9, -7> color rgb 1 }
plane { y, 0 pigment { checker color rgb 0.9 color rgb 0.2 } }
sphere { <0, 1, 0>, 1
  pigment { color rgb <1, 0.2, 0.2> }
  finish { phong 1 reflection 0.2 }
}

Le langage

  • Les formes : sphere, box, cylinder, cone, plane, torus, disc, triangle
  • Les combinaisons : union, merge, intersection, difference, et translate, rotate, scale
  • Les matières : pigment avec checker, gradient, marble, wood, granite, bozo… et turbulence ; finish avec phong, specular, reflection, metallic ; normal pour le relief ; interior { ior } pour le verre
  • Les directives : #declare, #local, #while, #for, #if, #macro, #include, #debug
  • Les couleurs de colors.inc, les finitions de finish.inc et quelques textures de métal, de verre et de marbre sont déjà là

La cartouche

  • RUN calcule l'image : une première passe grossière en un instant, puis de plus en plus fine, et enfin les bords lissés. L'image reste seule à l'écran ; une touche ramène à l'invite, et VOIR la remontre
  • APERCU donne une image rapide pour cadrer, INFO résume la scène et le dernier calcul
  • EDIT ouvre l'éditeur, avec les couleurs du langage ; une erreur y place le curseur sur sa ligne
  • Ctrl+C arrête un calcul, CONT le reprend où il en était ; Échap le met en pause
  • SAVE "NOM" écrit un fichier .POV ; RUN "3:SPHERES", et de même CSG, SPIRALE, TEMPLE

L'image

  • 640 × 480 points, chacun pris parmi les 4 096 couleurs du mode 20, avec une trame ordonnée qui adoucit les dégradés
  • Ombres, reflets, réfraction dans le verre, projecteurs, brouillard et ciel en dégradé
  • Le gamma de POV-Ray 3.7 : avec assumed_gamma 1.0, les couleurs sont comptées en lumière, comme dans POV-Ray
  • Pas encore : les textes, les isosurfaces, les blobs, les médias, la radiosité et les images plaquées ; la cartouche le dit en nommant la ligne

POV-Ray et le TO2026

POV-Ray, le Persistence of Vision Raytracer, est né en 1991 du programme DKBTrace de David K. Buck ; il est libre, et toujours développé. On y écrit des scènes comme on écrit un programme, et il a servi à des générations d'amateurs pour apprendre la lumière et la géométrie. La cartouche du TO2026 en reprend le langage et la façon de calculer, écrits de nouveau pour la machine : elle n'emploie pas le code de POV-Ray.