« Script : Start » : différence entre les versions

De Celestia wiki
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 1 : Ligne 1 :
A chaque démarrage de [[Celestia]], le Soleil s'affiche, puis la Terre. C'est du moins le cas des dernières versions du logiciel. Cette séquence est le fait d'un script nommé "start.cel", placé dans le dossier "Celestia\".
A chaque démarrage de [[Celestia]], le Soleil s'affiche, puis la Terre. C'est du moins le cas des dernières versions du logiciel. Cette séquence est le fait d'un script nommé "'''start.cel'''", placé dans le dossier "Celestia\".
<br/><br/>Ce script est à la fois un peu particulier et tout à fait banal !
<br/><br/>Ce script est à la fois un peu particulier et tout à fait banal !
*Particulier dans le sens où il est lancé à chaque démarrage de [[Celestia]].
*Particulier dans le sens où il est lancé à chaque démarrage de [[Celestia]].

Version du 1 mars 2006 à 05:48

A chaque démarrage de Celestia, le Soleil s'affiche, puis la Terre. C'est du moins le cas des dernières versions du logiciel. Cette séquence est le fait d'un script nommé "start.cel", placé dans le dossier "Celestia\".

Ce script est à la fois un peu particulier et tout à fait banal !

  • Particulier dans le sens où il est lancé à chaque démarrage de Celestia.
  • Banal dans le sens où il est rédigé exactement comme n'importe quel autre script.



Que contient-il ?

{

preloadtex { object "Sol/Earth" }
preloadtex { object "Sol/Earth/Moon" }

select {object "Sol"}
goto {time 3.0 distance 30}
wait {duration 3.0}

select {object "Sol/Earth"}
follow {}
goto {time 3.0 distance 6.0}
wait {duration 2.0}

print {text "Welcome to Celestia!" row -3 column 1 duration 3}
wait {duration 3.0}

}


NB. Les très nombreux commentaires de ce script ont été supprimés. Il s'agit en fait d'un véritable lexique des commandes que je vous invite à lire si vous avez quelques notions d'anglais.

Notons d'emblée que, comme tous les scripts au format .cel, celui-ci débute par une accolade ouvrante ({) et s'achève par une accolade fermante (}).
Détaillons maintenant les commandes :

 preloadtex { object "Sol/Earth" }
preloadtex { object "Sol/Earth/Moon" }

Les textures de la Terre (Earth) et celles de la Lune (Moon) sont d'emblée chargées en mémoire. Du coup, l'affichage de ces objets sera plus rapide le moment venu.

 select {object "Sol"}

L'objet "Sol" (notre Soleil) est sélectionné.

 goto {time 3.0 distance 30}

Ordonne à Celestia de se rapprocher de l'objet précédemment sélectionné (le Soleil). Ce "voyage" durera 3 secondes ("time 3.0"). Quant à la "caméra" de Celestia, elle se positionnera à une distance égale à 30 fois le rayon de l'objet à partir de son centre ("distance 30") ou encore 29 fois ce même rayon à partir de sa surface. Comme le rayon du soleil est de 696 000 km, Celestia se positionnera donc à 30 x 696 000 km comptés à partir du centre de notre chère étoile, soit environ 20 millions de km (ou à peu près 0,13 unités astronomiques). En ce qui concerne les unités utilisées par Celestia, rendez-vous sur la page Unités utilisées.

 wait {duration 3.0}

Celestia marque une pause de 3 secondes avant de passer à la commande suivante...

 select {object "Sol/Earth"}

Sélectionne la Terre (Earth).

 follow {}

Ordonne à la caméra de Celestia de suivre l'objet précédemment sélectionné. Avec cette option, la "caméra" de Celestia sera fixe, ce qui permettra d'observer la rotation de ce dernier.

 goto {time 3.0  distance 6.0}

Commande identique à celle décrite plus haut, sauf que, cette fois, l'objet séléctionné est la Terre. Le temps de déplacement par rapport à la position précédente est à nouveau de 3 secondes ("time 3.0"). La caméra se positionnera à une distance équivalente à 6 fois le rayon terrestre (6 x 6 378 km) à partir de son centre ("distance 6.0"), soit 5 fois (5 x 6 378 km) à partir de sa surface.

 wait {duration 2.0}

Marque une pause de 2 secondes.

 print  {text "Welcome to Celestia!"  row -3  column 1  duration 3}

Affiche en bas et à gauche de l'écran le texte "Welcome to Celestia!" ("Bienvenue dans Celestia !"). Ce texte restera à l'écran durant 3 secondes.

 wait {duration 3.0}

Une dernière pause de 3 secondes...