★ wanayoo — archive 1999 http://tuxracer.sourceforge.net/Nouvelle recherche | Portail wanayoo
Tux Racer
Generously hosted by: SourceForge

News | About | Status | Screenshots | Requirements | Download | Installation
Mailing Lists | Contribute | Links | SourceForge
News
18 April 2000: RPMs now available; Tux Racer 0.12.1 Released

I've created Tux Racer RPMs. These are still experimental and may not work for you. I recommend trying the SRPM if the RPM doesn't work.

I've also released version 0.12.1. This release fixes a bug that caused the RPM version to fail on its first run, and it also adds a cool new course.

As usual, everything is available from the Download section.

By the way, development has slowed this month as I finish up course projects at school. I should be able to spend more time on development in May.


2 April 2000: Tux Racer 0.12 Released

I've released Tux Racer 0.12 -- you can get it from the Download section. The main changes in this release are:

  • Four new courses, other courses improved
  • Additional Tux animation
  • Tux now slides on belly, by popular demand (old style is now an option)
  • Added "paddling" action so Tux can push himself along ("k" key by default)
  • Performance enhancements:
    • Tux model simplified
    • View frustrum culling
    • Adaptive level-of-detail terrain rendering
    • Now use OpenGL vertex arrays
  • Pause key ("p" by default)
  • Configure enhancements
  • Other minor enhancements

Enjoy!


2 April 2000: Level-Loader Script-Fu Script

Ingo Ruhnke has created another Script-Fu that loads an existing level into a multi-layered Gimp image. It's in the Download section.


19 March 2000: KDE GUI Installer Updated

Steffen Sobiech has updated his GUI installer for Tux Racer 0.11.1. You can get it from the Download section.


15 March 2000: Terrain LOD and other performance enhancments

Based on user feedback, I've recently been working on enhancing the performance of Tux Racer. One of the things that I've done is to render the terrain with varying levels of detail (LOD) -- roughly speaking, terrain that is closer to the camera is rendered with more detail. Combined with some other performance enhancements (view frustum culling, optimization of the Tux model), I've been able to improve framerates by 30-40% on my system (more if I sacrifice some detail).

This code is only in CVS at the moment; if you're adventurous you can get it from SourceForge. Here's a wireframe screenshot showing the terrain LOD code in action. (Update 19-Mar-2000: here's a screenshot with the LOD code turned off, for comparison.)

I believe that this makes Tux Racer the first open-source game to feature adaptive LOD terrain. Many thanks to Thatcher Ulrich, whose code was used (see Thatcher's excellent Gamasutra article for a description of the algorithm and a link to the demo code).


09 March 2000: Tux Racer Development Plan

I've sketched out a development plan for Tux Racer 1.0. Feedback is welcome.


06 March 2000: Do You Script-Fu?

(Wow, busy news day!) Ingo Ruhnke has created another Script-Fu helper script for the Gimp; this one creates a new image with the correct layer names and useful default colours. It's in the Download section.


06 March 2000: KDE GUI Installer Available

Steffen Sobiech has created GUI installer for Tux Racer 0.10.1. It requires KDE. You can get it from the Download section.


06 March 2000: Script-Fu Helper Script

Ingo Ruhnke has created a nice Script-Fu helper script for the Gimp; this should be useful to level designers. Grab it from the Download section.


06 March 2000: Tux Racer 0.11.1 Released

Well, at the last minute I introduced a silly bug into 0.11, so I've released Tux Racer 0.11.1 (ChangeLog). If Tux Racer 0.11 coredumped on you, this should fix it.


06 March 2000: Tux Racer 0.11 Released

I've released Tux Racer 0.11 (ChangeLog) -- Enjoy! This release introduces several changes for the benefit of course designers; they can now customize lighting, fog, and particle colour to their liking.

The biggest change to gameplay is that courses can now be played in "mirrored" mode, for added variety.

Two new user-contributed courses are also included -- keep them coming!

I'd also like to take this opportunity to thank everyone who's offered feedback on Tux Racer so far -- the response has been incredible! 1600 downloads already, and it's only been a week. Wow!

About Tux Racer

Tux Racer is a simple OpenGL-based racing game featuring Tux, the Linux Penguin. I wrote it as a final project for a graphics course I took in 1999. While I've made a few enhancements since then, the basic game hasn't changed much, which is to say it still needs a lot of work.

Tux Racer was inspired by games such as 1080° Snowboarding for the N64. The object of the game is to slide down a snow- and ice-covered mountain as quickly as possible, avoiding the trees and rocks that will slow you down.

The game is currently incomplete, but is still playable. We've sketched out a development plan that outlines what will go into version 1.0 of Tux Racer; feedback on it is welcome.

Tux Racer is licensed under the terms of the GNU General Public License.

Status

Tux Racer is incomplete, but is playable enough to provide some enjoyment, I hope. Tux can turn, brake, and jump. Collision detection with trees works. The physical model is fairly well tuned.

Check out our development plan to see what we hope to include in version 1.0 of Tux Racer.

Screenshots

Requirements

To compile and run Tux Racer you need the following:

  • The Tux Racer data files. This should be available from the same place that you got the Tux Racer source from.
  • A UN*X-like system (I've compiled previous incarnations of Tux Racer under Irix, Solaris, and -- of course -- Linux).
  • X11 libraries and include files.
  • An implementation of the OpenGL API version 1.1 or greater (Mesa 3.0 and 3.1 will both work; see http://mesa3d.sourceforge.net).
  • The GLUT library, version 3.7 beta or greater. This is distributed in the MesaDemos package, so if you have installed Mesa you probably also have GLUT. Otherwise, see http://www.opengl.org.
  • Tcl Version 8.0 or greater.
  • An accelerated 3D video card. On Linux/i386, 3dfx cards seem to work best (since they have the best Linux support, currently). It seems that Tux Racer is very slow (i.e., unplayable) on cards without direct rendering support (e.g., TNT, TNT2, GeForce). I hope to optimize the rendering loop to improve performance on these cards.
  • GNU make (gmake).

My development platform for Tux Racer is a Linux 2.2 system (RedHat 6.0) running on an Intel Celeron 366@525MHz, with a 3dfx Voodoo3 2000 video card, XFree86 3.9.16, and Mesa 3.1. I can make no guarantees about other configurations. Patches that allow Tux Racer to compile and run on other platforms are much appreciated!

Download

The current release of Tux Racer is version 0.12.1. Note that this is still a very early release, so some things may not work as they should. If you experience any problems with this release, please report them to the tuxracer-main mailing list.


Source

Previous release:

RPMs

Source RPM:

(I didn't upload an SRPM for tuxracer-data, since no compilation occurs in the creation of the RPM. If someone wants the .spec file, let me know.)

Note: I created these RPMs on my system, so therefore they are only guaranteed to work on my system. If the tuxracer RPM doesn't work, I recommend using the SRPM and following these steps:

  1. If you haven't already done so, install the latest tuxracer-data RPM.
  2. Download the latest tuxracer SRPM (i.e., tuxracer-XXX-X.src.rpm) somewhere.
  3. Become root.
  4. rpm --rebuild /path/to/tuxracer-XXX-X.src.rpm
  5. If something blew up in the previous step, you'll need to fix it. (See the RPM-HOWTO or other RPM documentation if you're unsure how to do this. Most people will just need to pass extra options to configure in the .spec file.)
  6. rpm -Uvh /usr/src/redhat/RPMS/i386/tuxracer-XXX-X.i386.rpm
    (if non-Intel, replace i386 with the appropriate architecture)
  7. You should now be able to start Tux Racer with the tuxracer command. See the README for information on configuring and playing Tux Racer.


Other Binaries


Level Design Tools

Ingo Ruhnke has created some Gimp Script-Fu scripts that are useful for level designers:

  • tuxracer-create-level.scm: creates a new image of the specified size with the correct layer names and useful default colours. This is especially useful when combined with the following script. The script is accessed using the <right-click on image> -> Script-Fu -> Tuxracer -> Save Image as RGBs menu item.
  • tuxracer-save-as-rgbs-1.0.scm: takes a multi-layer image and saves it as a set of RGB images, using the layer names as filenames (e.g., elev, trees, terrain). This is very useful for maintaining levels (i.e., create and maintain the level as a multi-level .xcf file, and export the separate RGB images using this script). There is also a Gimp 1.1 version: tuxracer-save-as-rgbs-1.1.scm. The script is accessed using the Xtns -> Script-Fu -> Tuxracer -> New Level menu item.
  • tuxracer-load-level-1.1.scm: loads an existing level (assuming filenames elev.rgb, trees.rgb, terrain.rgb) into a multi-layered image. The script is accessed using the Xtns -> Script-Fu -> Tuxracer -> Load Level menu item. Note: this script only works with Gimp 1.1.
To use these scripts, strip off the .txt extension and place them in your ~/.gimp/scripts or ~/.gimp-1.1/scripts directory and restart Gimp.

Installation (From Source)

Full installation and configuration instructions are in the README file. Here's a summary:

  1. Install the tuxracer-data package somewhere (/usr/local/share/tuxracer is the default path used by the tuxracer program)
  2. ./configure
  3. gmake
  4. make install (as root)
That should do it for most people. If that doesn't work, try ./configure --help for a list of options. If that still doesn't work, please fix it and send me a patch. ;-)

Once you've got the tuxracer executable compiled, try running it. This will fail if you've installed the data files someplace other than the default location. To fix this, edit ~/.tuxracer (which has just been created) to set the data_dir variable to the directory where you installed the Tux Racer data files. Then try running tuxracer again.

Instructions for playing Tux Racer are in the README file.

Mailing Lists

There are three mailing lists for Tux Racer. They are set up so that you must be subscribed in order to post to the list. To subscribe, use the following links:

  • tuxracer-main: This list is for Tux Racer users. If you have a question about Tux Racer that's not related to Tux Racer development, this is the place for it.
  • tuxracer-devel: This list is for people who wish to contribute to Tux Racer development.
  • tuxracer-announce: This is a very low-volume list where I'll announce new versions of Tux Racer.

How to Contribute

If you'd like to contribute to Tux Racer development, please join the tuxracer-devel mailing list and send us a message stating what you'd like to do.

I'm currently looking for more Tux Racer developers, so if you think you have some good ideas and the skills to implement them, I encourage you to contribute!

Tux Racer also needs more courses! If you create a new course, post a message to tuxracer-main to announce it. We can then include it in the next Tux Racer release.

Links

The following people/projects contributed to Tux Racer development in some way (the list is incomplete, I'm sure):

  • XRacer: A clone of the Psygnosis game WipeOut. I shamelessly stole some `configure'-related stuff, as well as ideas on keyboard configuration, from XRacer. I also discovered Alan Levy's web site (see below) via the XRacer site.
  • Alan Levy's Home Page: The background textures in Tux Racer were taken (with permission) from the beautiful photographs on Alan's site.
  • Texture Land: The snow, ice, and rock textures in Tux Racer were obtained from this site.
  • Samba: What's Samba got to do with games? Well, not much. But I stole some ideas for the run-time game configuration from the Samba code (in particular, the stuff in game_config.c).
  • Thatcher Ulrich: Code for adaptive LOD terrain (see Thatcher's excellent Gamasutra article).
  • Mesa
  • GLUT
  • The people in the Computer Graphics Lab at the University of Waterloo -- for providing helpful advice and encouragement
  • Last but not least, my thanks to Larry Ewing, creator of Tux!
My sincere thanks to all of these people and projects!

Other games starring Tux:

(If you know of others that I've missed, please let me know).


Copyright (c) 1999-2000 Jasmin F. Patry (jfpatry at cgl.uwaterloo.ca, http://www.cgl.uwaterloo.ca/~jfpatry/)
Last modified Thu Apr 20 12:19:31 2000.