Thanks Fridger,
I read the discussion and like the idea of co-moving coordinates. Indeed, you bring up a few fascinating issues that remind me how interesting things could be. Namely, I think that your Gott et al. -style 3D transform sounds cool, although I'd probably not set the origin at the center of Earth as the crust of the Earth would obscure your view. I would not set it at the surface either as I think the correct transform from the surface would implicitly have the Earth as a warped spheroid blocking your view, similarly to how it does in a 120* view in the existing Celestia. Rendering a log(r) with 360* view would however be cool from say an L3 point between the Sun and Earth.
That having been said, I'm less concerned with the static rendering in Celestia (except for Gravatational Lensing) and more concerned with NON-inertial reference frames for the observer. More specifically, I want to assume the ship is 0-mass -- so it's gravity does not effect observation -- but allow transforms on dy, dy, dz and dt. In other words, I want to emulate accelerated reference frames with full Lorentz transforms on both the view screen, the blue and red shift of objects and time dialation. I especially would like to generate a warp matrix view such that one could actually SEE what it is like to travel at near the speed of light. That is something that I thing would be very cool and is hard to find demonstrated.
As I see it, this is my priority of tasks:
1) Transform Time-Cordinates to allow for Years between 2**63 - 1 and -2**63.
2) Allow for logrithmic time for y (year) > 2**63 - 1.
3) Split time into 3 concepts:
a) Duration or Ship Time is the amount of time the simulation has been running, regardless of time on Earth.
b) Time on Earth to fix observational.
c) Time since Big Bang as universal time for cosmological observation. Unfortunately, this would be something like +/- 100Myr and thus could not be very well related to b) Earth time.
4) Add Time Dialation due to Acceleration / Deceleration in Celestia (adjusting time on Earth and universal time).
5) Display velocity in terms of ship-time, so that distance (dx[Universe], non-transformed) over time (dt[Ship], ship time) can exceed c (similar to how it is done now).
a) Allow the user to switch between dx[Universe]/dt[Universe], dx[Ship]/dt[Ship], dx[Universe]/dx[Ship] and dx[Ship]/dx[Universe] for velocity.
6) Contract the display for a given velocity based on the lorentz transforms.
7) Apply red/blue shift to lorentz-contracted transform.
8) Apply Gravatational Lensing
9) Allow planetary evolution by making an add-on for geologic transforms of Earth in ~50Myr intervals.
10) Allow stellar evolution by giving definite lifetimes of stars.
11) Provide estimates of unknown quantities:
a) What existed before the Solar System.
b) What will exist after the sun dies.
c) Randomly generate stars in distant galaxies that can be visited.
d) Generate the universe at 10*100yr.
12) Make it impossible to visit the edge of the universe as we see it without moving back in time and by moving back in time, make the observable universe restricted by what could be observed for the given era. (This is where co-moving co-ordinates make the most difference.)
13) Add supernovae and other 1-time events.
14) Allow infra-red view, ultra-violet view, radio, micro, x-, gamma- and other light filters with frequency transforms into the visible spectrum.
All of this would be independent of the Observation matrix specified in Gott et al. I think that would be a very nice user option in addition to all of what I specified above. Most of what I specify above would also be optional features.