New UNOFFICIAL OS X Celestia Build (7-12-05)

The place to discuss creating, porting and modifying Celestia's source code.
Topic author
BlindedByTheLight
Posts: 485
Joined: 19.03.2005
With us: 19 years 8 months
Location: Los Angeles, CA

New UNOFFICIAL OS X Celestia Build (7-12-05)

Post #1by BlindedByTheLight » 13.07.2005, 04:29

Doctorjoe and Dirkpitt have been working on some bug fixes and performance tweaks to their latest patches of Celestia.

The goods are available here:

http://celestiaproject.net/forum/viewtopic.php?t=7457

Please read all the caveats for this UNOFFICIAL build. Hopefully this fixes some of the problems some of you have had. Note this is NOT based on the latest build of the CVS. There was some code uploaded this afternoon that is crashing my compiler.

Also, please feel free to confirm you can no longer reproduce the bug represented here (and post to tell us):

http://www.celestiaproject.net/forum/viewtopic ... highlight=

Thanks,
Steve
Steven Binder, Mac OS X 10.4.10

ElChristou
Developer
Posts: 3776
Joined: 04.02.2005
With us: 19 years 9 months

Post #2by ElChristou » 13.07.2005, 21:50

Hello (again),

Tested the last build?€¦ much better, but still some bugs: orbits depending of the FOV and distance are not drawn in front of planets (see pic with Earth/Moon example), another ?€?Z?€
Image

Avatar
t00fri
Developer
Posts: 8772
Joined: 29.03.2002
Age: 22
With us: 22 years 7 months
Location: Hamburg, Germany

Post #3by t00fri » 13.07.2005, 23:20

ElChristou wrote:I really wondering if the actual method of orbit drawing (by points) is not a dead end?€¦


A valid question it seems to me...

Bye Fridger

Topic author
BlindedByTheLight
Posts: 485
Joined: 19.03.2005
With us: 19 years 8 months
Location: Los Angeles, CA

Post #4by BlindedByTheLight » 16.07.2005, 23:55

Hey doctorjoe... so, as I wrote you elsewhere, the latest patches from July 11th do not alleviate the "jagged orbit problem"...

This is the old nice orbit lines...

Image

This is with the latest (and last few) patches...

Image

Notice how much thicker the 2nd picture's orbit lines are. Especially on the right. Note that this image is not full-sized. Full-sized, the jaggedness is much worse.

This extra thickness also has some interesting properties. With smooth rendering on, the jaggedness appears only on one side (as seen above). As you zoom away - several thousand km, the jaggedness goes away. And this occurs regardless of the rendering settings (basic or otherwise). Changing the rendering settings have no effect.

In terms of how the original orbit lines looked (the older, nice and smooth ones) - I only posted the one screenshot because, again, regardless of rendering options, they always looked nice and smooth. If I turned OFF smooth lines, the orbit lines got a LITTLE worse... but nowhere near as bad as the new patches.

Furthermore, I have noticed (and not sure if reported elsewhere - I haven't been following lately) that Jupiter and Saturn have little extra mini-orbits of something at their center. Looks like moon orbits are getting drawn inside or something.

Image

Mars has it to - but only when you get VERY close... then the orbit lines go haywire. Earth, I've noticed also. You get up close with orbit lines on and weird things start to happen.

Hope this helps,
Steve
Steven Binder, Mac OS X 10.4.10

doctorjoe
Posts: 76
Joined: 23.05.2005
With us: 19 years 6 months
Location: Austin, Texas

Fixes

Post #5by doctorjoe » 17.07.2005, 04:21

The jagged lines are an easy fix. Basically I have to turn off smooth lines for a section of the orbit before it hits the planet. To make it look nice on one of my machines I have to thicken the line, but I think to fix this all I have to do is to use the same line thickness as the rest of the orbits.

Adaptively drawing more points near the planet is something I'm working on, but it is hard. The problem is that right now celestia calculates the orbits once and uses those calculated points to redraw the orbits each time. If you do adaptive drawing, you'll have to recalculate the orbit points as the object moves.

I haven't been able to fix the mini-orbit problem because I don't see it on my machine. Here is a test

go into your patches code, and look for

void Renderer::renderForegroundOrbits(const PlanetarySystem* system,
const Point3f &center, // km
float distance, // km
const Selection& sel,
double t) {
// Render orbit paths

Add a line

void Renderer::renderForegroundOrbits(const PlanetarySystem* system,
const Point3f &center, // km
float distance, // km
const Selection& sel,
double t) {
return;
// Render orbit paths

and let me know if you still see the mini orbits. This line will disable the foreground orbits so that I can figure out if this is the broken code.

doctorjoe
Posts: 76
Joined: 23.05.2005
With us: 19 years 6 months
Location: Austin, Texas

Mini orbit problem

Post #6by doctorjoe » 17.07.2005, 04:23

Also can you zoom in really close to the mini orbits and do a screen shot?

doctorjoe
Posts: 76
Joined: 23.05.2005
With us: 19 years 6 months
Location: Austin, Texas

Some more questions

Post #7by doctorjoe » 17.07.2005, 04:28

1) When you have these mini-orbits, are the moons being drawn with foreground orbits?

What might be happening is that the moon's foreground orbits are being drawn incorrectly on your machine and correctly on mine.

2) Can you e-mail me (joe@confucius.gnacademy.org) a copy of your file render.cpp?

Thanks/

doctorjoe
Posts: 76
Joined: 23.05.2005
With us: 19 years 6 months
Location: Austin, Texas

FYI

Post #8by doctorjoe » 17.07.2005, 05:18

Right now I'm focusing on fixing the mini orbit since I don't understand what is causing that.

As far as what is causing some of the other bugs

z orbit - the z orbit is due to the fact that the orbit equations take into account things like the pertubation of other planets and such resulting in orbits which are not perfect ellipses. So after one orbit the planet doesn't end up where it starts and if the try to draw the orbit as a loop, you get a "kink"

bouncing orbits - appear to be caused by numerical accuracy. You are trying to calculate the location of something 100 million miles across to an accuracy of 100 kilometers. There is roundoff error which causes things to bounce.


Return to “Development”