Celestia Revision History ------------------------- 1.00 * Initial public release 1.01 * Added more realistic and aesthetically pleasing ring illumination function * Made planets project shadows onto their rings (requires multitexturing) * Detect and use ARB_multitexture extension * Some configuration parameters now read from a file * Support for multiple solar system catalog files * Split solar system files into solarsys.ssc and extrasolar.ssc * Added Help/License menu * Added simple camera orbit mode * Fixed up parsing and printing of catalog numbers--still kludgy though 1.02 * Made Celestia icon appear in corner of window. Whee. * Fixed an extremely subtle numerical precision bug which manifested itself in a number of ways: jittering when following small objects, incorrect targeting of small objects with goto, occasional flashes when closely approaching an object, and probably other things as well. * Reversed rotation directions when orbiting--it's much more intuitive now * Added an exponential dolly capability to the camera * Double-clicking will now center on the selected object * Fixed bug in elliptical orbit calculation * When orbits are displayed, the Orbit for the selected object is highlighted * Incorporated Scott Hudson's asteroid geometry data for Toutatis, Kleopatra, and Geographos. * Fixed problems with disappearing labels and with misplaced labels for extrasolar planets * Eliminated 'sticking' when mouse buttons released outside of Celestia window * Added Real Time option to Time menu * Reversed planet rotation direction so it's correct. Oops. * Added about a dozen extrasolar systems from Jean Schneider's catalog * Create two new textures for extrasolar planets * Moved Selection class outside of Simulation, as it's generally useful 1.03 * Rotating the camera is now more responsive to mouse movement * 'Infinite mouse' hack allows rotating and dollying without having to pick up the mouse and reposition the cursor in the window * Fixed z ordering for planets and satellites so small that they only appear as points. Small satellites will no longer get obscured by planets they're in front of. * Apparent magnitude calculation for planets now takes into account phase * At close range, stars are now rendered as textured sphere meshes. * Choosing stars by catalog number no longer selects a star even when the specified star doesn't exist. * Added labels for stars; the list of labelled stars is read from celestia.cfg * Cleaned up vecmath.h, added consts and reference parameters where appropriate * Cleaned up StarNameDatabase 1.04 * Start out at the moon instead of in deep space * Made picking of planets work properly for planets with disc sizes greater than one pixel. * Added call to glDeleteTextures to Texture class destructor * Added bump mapping. Uses DOT3 bump mapping and only works on GeForce cards right now. * Enabled user control of per-pixel lighting. * Menu checked state for label options synced with renderer state. * Added a context menu that appears when an object is right clicked. * Celestia now uses texture coordinates from 3DS files * Added 3DS model of Eros based on NEAR laser rangefinder data * Added 3DS models of Deimos, Phobos, and numerous other asteroids and small moons based on Phil Stooke's models * Replaced TriangleList class with much more flexible VertexList * Introduced support for compressed textures; texture compression is specified on a per texture basis in .ssc files. * Added a reverse time option * Added an OpenGL Driver Info item to the help menu 1.05 * Made per-pixel lighting work for planets without bump maps too * Allow user control of magnitude of faintest visible stars * Added support for PNG textures * Improved console: enabled backspace, relocated text entry, code cleanup, ... * Corrected star positions by converting them from equatorial to ecliptical coordinates. * Eliminated case sensitivity when selecting objects by name * New ring texture for Saturn with separate reflectance and opacity * Ring textures now specified in .ssc files instead of hardcoded * Implemented date/time selector dialog box * Changed the mouse wheel function from zoom to dolly. Zoom is now controlled by shift left-dragging the mouse. For mice without wheels, control left-dragging will dolly. * Fixed orbit and dolly functions to work in follow mode * Improved rendering of objects at close range: less clipping, extra sphere LOD. * Fixed bug that caused irregular objects to be displayed at half their actual size * ESC now cancels goto and follow instead of exiting app. * Fixed orbital calculations for planets so their positions are now closer to reality. * Completed extrasolar planets database; it now contains all known planets around normal stars * Mir! * MeanAnomaly field in .ssc files was incorrectly called TrueAnomaly; this is fixed, and solar system parser now also accepts MeanLongitude in orbital elements section. * Epoch can now be specified for orbital elements. Default is J2000. 1.06 * Made Alt+F4 exit the app. * Fixed text rendering to be pixel-accurate; labels and console text are now crisper and don't have any missing pixels (need to test on more graphics chipsets.) * Updated parser to handle negative numbers. Big oops. * Corrected errors and omissions in extrasolar planets catalog. * Added locations menu for saving and recalling favorite places. * Added intro message. * Removed stars without spectral class info from database. * Included support for cloud maps * Added extrasolar planets from the ESO's April 4th announcement * Axial rotation for stars * Alleviated clipping of very distant stars (Deneb was missing from Earth's sky due to this bug.) * Increased depth buffer precision for planet rendering--this should improve the quality of rendering with 16-bit z buffers * Added option to render constellation diagrams * Use strips instead of lists for rendering spheres * Enabled keyboard control of zoom with home and end * Implemented basics of linear scripting system * Run a script at startup; the script filename can be set in the config file Code revisions: * Converted Simulation class to use Julian days instead of seconds as internal time units. * Eliminated brain damaged observer methods in Simulation * Cleaned up Console class 1.07 * More corrections to planetary orbital calculations * Accept LongOfPericenter as well ArgOfPericenter in solar system catalog files * Updated parser to accept C-style string escapes * Render the Milky Way and other galaxies * Added more constellations * Display constellation names * Cleaned up render menu * Added FPS counter * Implemented basic WWW info feature for planets and stars * New script commands: renderflags, labels, orbit * Implemented a scripted demo mode * Placed ISS in Earth orbit