• Entretien avec le créateur du Bottin des jeux linux
    Le site « Le Bottin des jeux linux » recense les jeux vidéo sous Linux. Il a été créé en 2007 par Serge Le Tyrant. Celui-ci, en voulant mettre un peu d’ordre dans sa base de données de jeux, a fini par en effectuer la refonte complète. Après un travail important de mise en forme et de mi... (Lire l'article)
  • Conférences audio et vidéo
    Retrouvez les conférences données lors des Ubuntu party ou d'autres événements, ainsi que les interviews par OxyRadio. (Lire l'article)
  • Entretien avec Aviv de l'équipe de Wildfire Games
    Pour ceux qui ne le savent pas encore, 0 A.D. est un jeu de stratégie en temps réel de guerre antique, développé par l'équipe de Wildfire Games, et qui a été complètement libéré en 2009. (Lire l'article)
  • Entretien avec Quentin Bolsée, le développeur de ColorCube
    Très récemment, Quentin a annoncé la disponibilité de son jeu : ColorCube, un jeu basé sur le Blender Game Engine. Entretien d'un jeune et talentueux développeur. (Lire l'article)
  • Pourquoi devriez-vous utiliser OpenGL et non DirectX ?
    Il y a quelques jours, sur le blog de Wolfire Games, est apparu un intéressant point de vue sur les raisons d'utiliser OpenGL. L'article étant fort intéressant, nous vous l'avons traduit, pour qu'il profite au plus grand nombre. (Lire l'article)
  • Entretien avec l'équipe des Landes Eternelles
    Suite à la sortie, il y a un peu plus d'un mois, de la nouvelle version du client de Landes Eternelles, un mmorpg multi plateforme, nous avons voulu interroger Ackak & Nati, deux des administrateurs du serveur. (Lire l'article)
  • Entretien avec l'équipe de Smokin'Guns
    Si vous nous lisez régulièrement, vous savez que toute l'équipe de jeuxlinux.fr est fan de Smokin'Guns. Plusieurs questions nous trotté dans la tête concernant la suite de ce jeu, et ce n'est autre que ReD NeCKersoN et Téquila, les deux piliers de l'équipe, qui vont nous donner les réponses. (Lire l'article)
  • Créer une course pour Tux Racer
    La création de nouvelles pistes dans les Tux Racer libres est une chose qui a été vraiment bien pensé. Même si elle ne permet pas de creuser des sous-terrains ou de régler l'orientation des objets par exemple, elle vous permettra de modéliser assez facilement et plutôt rapidement des courses... (Lire l'article)
  • Entretien avec Frictional Games
    Ce mois-ci, les développeurs de Frictional Games, à l'origine de la série des Penumbra, nous parlent de leurs jeux, de leur modèle de développement ainsi que de leur projets futurs. La série des Penumbra contient des jeux d'horreur d'une excellente qualité vous plongeant dans un univers noir... (Lire l'article)
  • Open Transport Tycoon
    Les jeux de gestion sont rares sous linux, trop rares au point qu'il n'existe même pas de catégorie gestion sur jeuxlinux. Ce genre de jeu demande de la profondeur et un sens du détail hors du commun. (Lire l'article)

Créer une course pour Tux Racer


Auteur(s) de l'article : Nicosmos - Date de parution : 18 mai 2009

La création de nouvelles pistes dans les Tux Racer libres est une chose qui a été vraiment bien pensé. Même si elle ne permet pas de creuser des sous-terrains ou de régler l’orientation des objets par exemple, elle vous permettra de modéliser assez facilement et plutôt rapidement des courses totalement intégrés dans le jeu, réellement jouables, et cela sans aucune connaissance en infographie 3D, en programmation, et sans logiciels particuliers.



Présentation Présentation

Nous verrons pas à pas dans ce didacticiel comment réaliser une course pour Tux Racer (excepté sa version commerciale) et ses dérivés. Certains points ne concernent que les versions plus avancés (PlanetPenguin Racer, Extreme Tux Racer) : ce sera précisé.

Pour commencer

Tout d’abord, munissez vous de :

  • Tux Racer, bien entendu
  • Un logiciel de graphisme, tel que The Gimp
  • Un éditeur de texte

Premièrement, créez un dossier portant le nom de la piste (vous pourrez le changer après), en évitant tout accents et caractères spéciaux (évitez même les espaces, on ne sait jamais). Si vous voulez tester votre course pendant sa création, commencez par les étapes de paramétrage et d’installation (à la fin de cet article).

Attention, le format d’image utilisé dans ce didacticiel est le PNG. Cependant, il est à noter que si vous créez votre piste pour le Tux Racer original (et OpenRacer), vous devez enregistrer toutes les images au format RGB. Les pistes dans cet ancien format ne devrait pas poser de problème si vous les importez dans des versions plus récentes du jeu.

Modélisation

Tout d’abord, créez un fichier elev.png dans le répertoire de votre course. Cette image, n’acceptant uniquement les niveaux de gris, représente le relief de la piste. Une fois interprété par le jeu, c’est ce fichier qui définira la forme 3D du terrain.

La taille de cette image déterminera également les dimensions et le format de la course, qui ne pourra que difficilement être modifié par la suite. En général, une piste ne dépasse pas quelques centaines de pixels de largeur et longueur. Habituellement, on considère que chaque pixel représente un "mètre² virtuel".

Le départ est en haut de l’image, l’arrivée est en bas. Pour peindre le relief, le principe est simple : plus le gris utilisé est clair, plus le terrain sera haut. Plus il est foncé, plus le terrain sera bas. Par conséquence, le blanc représente l’élévation maximale, et le noir est le niveau minimal.

Pour une meilleure compréhension, voici un exemple. Une pente a été obtenu par un dégradé horizontal, et les bords surélevés ne sont que deux fins dégradés verticaux. Enfin, vous pouvez également voir comment obtenir un tremplin basique.

elev.png

Application des matières

Le deuxième fichier à créer se nomme terrain.png et il s’agit de l’image qui déterminera quels matériaux seront appliqués sur telle ou telle zone de la piste. Ses dimensions doivent être exactement les mêmes que celles de elev.png.

Voici les différentes couleurs à utiliser pour ce fichier. On utilise souvent un gris 50% pour ajouter de la pierre. En réalité, n’importe quel gris fera l’affaire.



Si vous créez votre piste pour PlanetPenguin Racer et Extreme Tux Racer, elles sont beaucoup plus nombreuses :



Appliquez ces couleurs comme bon vous semble sur votre image. Le plus simple est de superposer dans un premier temps ce nouveau fichier à elev.png, afin de pouvoir suivre le relief de la course.

Il est important de noter qu’il n’est pas la peine (et même très déconseillé) d’utiliser des fondus et des transitions entre les différentes couleurs. Au contraire, il est mieux de n’utiliser que des bords nets et aucun dégradés, au risque d’un rendu non satisfaisant. Le jeu s’occupera lui même des fondus.

Voici donc le fichier terrain.png associé à l’exemple précédent. Les bords de la pistes sont en terre, le tremplin est recouvert de glace, tandis que le reste est enneigé.

terrain.png

Placement des objets

Il faut maintenant placer les objets de la course (poissons, arbres …) : pour cela, créez une troisième image trees.png aux dimensions précédentes. Appliquez lui un fond noir.

En suivant les couleurs suivantes, placez les objets sur l’image (vous pouvez comme précédemment la superposer sur le reste). Chaque objet est représenté par un seul et unique pixel d’une couleur précise.



Pour PlanetPenguin Racer et Extreme Tux Racer, il y a bien entendu de nouveaux objets :



Le départ et l’arrivée ne sont en réalité ici que les banderoles. Ils sont donc facultatifs comme les autres et vous pouvez en placer autant que vous voulez (ce qui est tout de même généralement assez inutile !). Le point de retour n’est pas un objet, mais le lieu où sera redirigé le joueur lors d’un appui sur la touche de retour. À noter que cette option n’est pas fonctionnelle dans toutes les versions (mais ne posera pas de problème de compatibilité).

Finissons avec notre exemple :

trees.png

Des poissons alignés tout le long, des drapeaux au bord du chemin (et deux de chaque côté en haut du tremplin), deux banderoles, une au départ et une à l’arrivée, un point de retour vers le milieu, des arbres variés sur les bords et des arbustes éparpillés.

Paramétrage

Passons au fichier de configuration. Créez-le sous le nom de course.tcl toujours dans le même répertoire. Ce fichier contient plusieurs attributs et leurs valeurs :

  • tux_course_name, suivi du nom de la course entre guillemets.
  • tux_course_author, suivi du nom du créateur entre guillemets. Cette option n’est pas fonctionnelle dans toutes les versions.
  • tux_course_dim, suivi de quatre valeurs. La première est la largeur totale de la course (la taille en pixels de vos images. Vous pouvez jouer sur cette valeur pour la déformer, mais il semblerait cependant que ce n’est pas la meilleure solution, certaines versions du jeu ayant tendance à crasher lors de ce redimensionnement), la deuxième est la longueur totale (idem). La troisième est la largeur sans les marges. Concrètement, cela permet d’afficher des "murs invisibles" sur les bords de la course avec une valeur plus petite que la largeur réelle. La quatrième permet de définir la distance de la ligne d’arrivée depuis le haut de la piste.
  • tux_start_pt, la position du point de départ, défini en deux valeurs (depuis la droite de l’image d’abord, puis depuis le haut).
  • tux_angle, l’inclinaison du terrain, en degrés.
  • tux_elev_scale, qui permet de déterminer l’intensité avec laquelle elev.png forme votre terrain : il s’agit en fait de la différence d’altitude, en "mètres virtuels", entre les points le plus bas (noirs) et les plus hauts (blancs). La "hauteur de vos montagnes" concrètement.
  • tux_base_height_value, dont je n’ai pas encore compris le rôle. Sa valeur reste habituellement au maximum, 255.
  • tux_elev et tux_terrain, qui ne font qu’appeler respectivement les fichiers elev.png et terrain.png.
  • tux_theme_init, introduit à partir de PlanetPenguin Racer, qui permet de sélectionner le thème utilisé : common si vous utilisez uniquement les matières et les objets de base, ppracer si vous piochez dans toutes les ressources.

Tous ces attributs sont suivis directement de leurs valeurs, séparés par un simple espace. La majorité, mais pas tous, acceptent des valeurs décimales (le point remplaçant alors la virgule). Sauf pour les deux premiers, terminez chaque ligne par un point virgule (bien qu’il semblerait que ce ne soit pas une nécessité). Le fichier se termine par tux_course_init pour lancer le jeu.

Pour mieux comprendre le système des marges, voici un schéma (visualisant tux_course_dim et tux_start_pt) :



Enfin, voici un exemple de fichier de configuration :

tux_course_name        "Test de course"
tux_course_author      "Qui ?"
tux_course_dim         100 200 80 180 ;
tux_start_pt           50 10          ;
tux_angle              20             ;
tux_elev_scale         30             ;
tux_base_height_value  255            ;
tux_elev               elev.png       ;
tux_terrain            terrain.png    ;
tux_theme_init         ppracer        ;
tux_course_init

Il est à noter que dans les versions d’Extreme Tux Racer supérieures à la 0.4 (c’est à dire les versions actuellement en développement, qui sortiront prochainement), le système a légèrement changé : un nouveau fichier info.tcl est ajouté.

C’est lui qui contient désormais le nom de la course et son auteur, ainsi que la description de la course : tux_course_name et tux_course_author deviennent alors obsolètes dans course.tcl. Ce nouveau fichier se présente comme ceci :

set course_name        "Test de course"
set course_author      "Qui ?"
set course_description "Description de la course"

Il peut contenir aussi les informations supplémentaires pour intégrer la piste dans une compétition (temps à ne pas dépasser, nombre minimum de poissons à attraper …). Nous ne verrons cependant pas cet aspect dans ce didacticiel, consacré uniquement aux courses et non à la création de coupes.

Installation de la course

Pour finir, il faut mettre en place la course dans le jeu. Ici, nous la feront simplement apparaître dans le menu Entraînement ("Practice"), et non pas dans une compétition.

Rendez-vous donc dans le dossier ou sont installées les données de votre version de Tux Racer, par exemple /usr/share/games/etracer/ pour Extreme Tux Racer. Naviguez jusque au sous-dossier courses/contrib/ et déplacez-y le répertoire de votre course. Et c’est tout. Démarrez le jeu, votre course devrait se trouver parmi les autres.

Et maintenant ?

Que faire une fois fini ? Jouer déjà ! Ensuite, pensez à faire une capture d’écran de votre piste, puis à la redimensionner (traditionnellement en un carré de 128px de côté, même si elle se trouve écrasée), avant de la placer dans le dossier contenant les autres fichiers sous le nom de preview.png.

Enfin, vous pouvez partagez votre course : sur ce forum prévu à cet effet ou même dans la bonne catégorie du forum d’Extreme Tux Racer (qui sait, peut être que votre création sera intégrée dans une version future ?).

Liens

- Fiche d’Extreme Tux Racer
- Article Wikipédia sur Tux Racer (historique du jeu, liste des dérivés …)
- Emplacement original de ce didacticiel