Page 1 of 1

OpenGL limits, and time-based sequencing

Posted: 18.09.2004, 08:55
by ntavares
Greetings to all,

This is my first participation on this forum, so bear with me as I do have some questions about Celestia development.

Needless to say, I find the software completely astonishing! But I'm interested in a few subjects, that might have been already addressed.... I've been trying to follow some earlier posts, but without success.

I'm also quite new to Astronomy, so apologize if I say some mistake (and please correct).
My questions/suggestions follows:

1) About the OpenGL depth problem (limiting star viewing): Suppose this (simplified) cenario:
I'm at point A, T units away from C, (not) "looking" at object at point B which is beyond the oGL/coordinate limit in K=10 units (suppose that the center of the coordinate system is point C).

Now the equations can be something like this (A to B distance - X - is not known, the limit is L units):
B = L + K , distance vector is BC
A = T , distance vector is AC

Now using projections we can estimate the intersection between BC and the perpendicular of it that crosses A (lets call that intersection point as P).
Using Pythagoras, it's easy to calculate the distance between A to B (X).

At this point we have all the data to convert a unique-centered coordinate system to a moving-projected coordinate system - which would be projected on the observer.

1.1) Since this involves Floating Point calculations, accuracy and performance will probably drop, but it still can be optimized for a) accuracy and b) speed of calculation.
1.2) This might solve the oGL/coordinate system problem and introduce a new concept for another thread: See 2).

2) Setting a relative coordinate system at the observer would allow to clip images beyond the L range from the observer starting point. Still, all objects coordinates should be defined relatively to C. However, this introduces the concept of moving objects, instead of moving camera. While I'm virtually walking ahead, the objects are being really pushed back (as in a FPS game).
But since we can have multiple referencials (coordinate systems), we can map individual objects within a planet, using its relative coordinate system.
Also consequently, we can have a huge database without degrading performance.

3) I wonder why the user manual is in MSWord format... any special reason? I would prefer viewing it in OpenOffice native format, as I have both Windows and Linux versions. Or, at least, a PDF version. Of course, the best would be, perhaps, SGML. Anyway, HTML could be used by KDE/GNOME help systems, I think.

4) Also, I don't know if it's possible to record facts. It would be nice to celestia to allow a sequence of events to occur, so that we could reproduce History. Things like triggering events (speed, angles, etc) based on time.

I do have other questions, I'll post them later. I'm sorry if I did not say anything new, I just wanted to make sure everyone here has thought of these issues.

Posted: 18.09.2004, 14:37
by selden
Nuno,

Chris Laurel, Celestia's primary author, will have to comment on your first two questions/suggestions. My understanding is that some thought has been given to using relative locations in Celestia, but that significant code changes will be required.

3. The User's Guide is in Word format because that's what Frank Gregorio is proficient in. If you'd like to translate it into other formats, please contact him directly. You can use the "PM" link at the top of this page to send a message to his Forum userid fsgregs. It is already available in some other formats. Please see the documentation pages on the Celestia and Motherlode Web sites.

4. You can record static viewpoints using Cel://URLs and you can write scripts to travel between them.

Please visit the Scripting forum for more information.