Script

De Celestia wiki

Qu'est-ce qu'un script Celestia ?

Un script Celestia est un fichier texte (enregistré au format .cel ou .celx) représentant une liste de commandes qui permettent d'exécuter automatiquement la plupart des fonctions habituellement accessibles à travers les différents menus. Les scripts offrent donc la possibilité d'enchaîner automatiquement (sans intervention de l'utilisateur) des déplacements, des mouvements de caméra, des changements de textures de planètes, bref de réaliser l'équivalent d'une véritable séquence vidéo dans Celestia. Ils permettent aussi d'afficher des commentaires textuels au cours de ces séquences.
Il est donc possible de "programmer" Celestia pour visualiser de nombreux objets célestes (sous toutes les coutures), tout en affichant simultanément des commentaires, ce qui fait de celestia un outil pédagogique de premier ordre. A ce titre, un "script" Celestia peut être considéré comme un véritable "scénario".

Comment ouvrir un script dans Celestia ?

Les scripts sont accessibles à partir du Menu "File" ("Fichier") > "Open script" ("Ouvrir script")

Quelle est la différence entre les fichiers .cel et .celx ?

Ces 2 types de scripts n'utilisent pas le même langage de programmation.

- Les fichiers .cel utilisent un langage basique propre à Celestia. Ils ne permettent aucune interaction avec l'utilisateur.

- Les fichiers .celx utilisent une partie des fonctions du langage Lua. Plus complexes, ils autorisent un traitement mathématique et logique des valeurs, et offrent une forme d'interactivité avec l'utilisateur : par exemple, il est possible de demander le nom d'une planète pour pouvoir s'y rendre, de proposer des menus pour pouvoir passer directement à la 2ème partie d'un script, ou de demander la distance à laquelle on veut s'approcher d'un objet, etc.

Comment modifier un script ?

Un script peut être écrit ou modifié comme tout autre fichier texte, en utilisant votre éditeur de texte préféré (Notepad, ...). Il vous suffit ensuite de l'enregistrer au format .cel ou celx (exemple : MonScript.cel). Voir aussi l'article traitant des fichiers en format "texte".

Quelles sont les principales commandes .cel ?

Cancel
Annuler les commandes goto et track, et réinitialiser le Système de Coordonnées sur universal.

Center
Centrer l'objet sélectionné sur l'écran.

Changedistance
Changer la distance entre la caméra et l'objet sélectionné.

Chase
Régler le Système de Coordonnées sur chase.

Follow
Suivre l'objet sélectionné - Régler le Système de Coordonnées sur ecliptical.

Goto
Déplacer la caméra et la positionner face à l'objet sélectionné sans changer le Système de Coordonnées.

Gotoloc
Déplacer la caméra et la positionner aux valeurs spécifiées de position et d'orientation de l'objet sélectionné sans changer le Système de Coordonnées.

Gotolonglat
Déplacer la caméra et la positionner aux valeurs spécifiées de longitude et de latitude de l'objet sélectionné.

Labels
Activer ou désactiver l'affichage des noms pour les différentes classes d'objets.

Lock
Verrouiller 2 objets par rapport à la position de la caméra - Régler le Système de Coordonnées sur lock.

Lookback
Changer instantanément (sans mouvement de caméra) le champ de la caméra de 180°.

Mark
Activer le marquage d'un objet avec le symbole spécifié.

Move
Déplacer la caméra à la vitesse spécifiée.

Orbit
Se déplacer en orbite autour de l'objet sélectionné sans changer le Système de Coordonnées.

Orbitflags
Activer / désactiver l'affichage des orbites pour les différentes classes d'objets.

Preloadtex
Pré-charger en mémoire une texture avant son affichage à l'écran.

Print
Afficher un message à l'écran sous forme de texte.

Renderflags
Activer / désactiver l'affichage des différentes classes d'objets.

Rotate
Effectuer une rotation du champ de la caméra.

Select
Selectionner un objet (planète, satellite, galaxie, etc...).

Set
Régler les valeurs de Min Orbit Size, Ambient Light Level, Field Of View, Star Distance Limit, Star Style.

Setfaintestautomag45deg
Régler la magnitude minimale des étoiles à afficher lorsque l'option Auto-Magnitude est activée.

Setframe
Choisir le Système de Coordonnées à utiliser.

Setorientation
Régler l'orientation de la caméra.

Setposition
Régler la position de la caméra dans l'espace.

Setsurface
Choisir une texture alternative pour l'objet sélectionné.

Setvisibilitylimit
Régler la magnitude minimale des étoiles à afficher lorsque l'option Auto-Magnitude est désactivée.

Seturl
Placer la caméra à la position définie par une fonction Cell://URL.

Synchronus
Se placer en orbite autour de l'objet sélectionné en mode Synch Orbit - Régler le Système de Coordonnées sur geographic.

Time
Régler la date et l'heure en utilisant les formats JulianDay ou UTC.

Timerate
Régler la vitesse d'écoulement du temps.

Track
Fixer la caméra sur l'objet sélectionné pour le garder centré sur l'écran.

Unmark
Désactiver le marquage d'un objet.

Unmarkall
Désactiver le marquage de tous les objets.

Wait
Insérer une pause dans l'exécution du script (du nombre de secondes spécifiées).

Quelques exemples de scripts décortiqués

Après la théorie, la pratique... Les quelques scripts qui suivent exposent des exemples concrets qui permettront de se faire une idée plus précise du sujet. Si vous êtes vous-même auteur d'un script pour Celestia, n'hésitez pas à en faire profiter les lecteurs de ce wiki.

  • Spoutnik 1. Commandes utilisées : time, select, goto.
  • Start. Commandes utilisées : preloadtext, select, follow, goto, wait, print.