Page 1 of 1

Dissapearing Ring Bug

Posted: 06.11.2004, 01:57
by Michael Kilderry
I am here reporting a bug that I have discovered when I was testing new planets for the Lera System project. I have put a ring around a moon instead of a planet, so when the moon orbits, there is a hoola-hoop effect to the ring. The ring surrounds both the moon and the planet, the bug is when the moon goes behind the planet but the ring's still in front, the planet appears to be in front of the ring even when it isn't as the portion of ring in front of it just dissapears.

I am using Celestia 1.3.2, Windows 98, GeForce 4 TI 4800 SE video card if this helps.

Michael Kilderry :)

Posted: 06.11.2004, 02:30
by Evil Dr Ganymede
I can't visualise at all what you're saying there... can you either post the code you're using or post a screenshot anywhere?

For example, how can you have a ring around a moon, but the ring is around the planet too? Do you mean that the moon orbits the planet inside the ring system?

Posted: 06.11.2004, 02:54
by Michael Kilderry
Yes, the moon is inside the ring system, and here's the code:

Code: Select all

"Shebabeba" "The Lera Star"
{
   Texture "shebabeba_surf.png"
   SpecularTexture "shebabeba_spec.jpg"
   NightTexture "shebabeba_night.jpg"

   Color [ 0.60 0.40 0.40 ]
   SpecularColor [ 0.80 0.20 0.20 ]
   SpecularPower 40.0
   HazeColor [ 0.80 0.20 0.20 ]
   HazeDensity 8.0
   Oblateness 0.1
   Radius 62756

   BumpMap "shebabeba_bump.png"
   BumpHeight 0.8

   Atmosphere {
      Height 600
      Lower [ 0.90 0.10 0.10 ]
      Upper [ 0.70 0.10 0.40 ]
      Sky [ 0.66 0.10 0.60 ]
      Sunset [ 1 0 1 ]
   }

   EllipticalOrbit {
      Period         22.75
      SemiMajorAxis      22.75
      Eccentricity      0.328
      Inclination      17.94
      AscendingNode      83.76
      LongOfPericenter   8.86
      MeanLongitude      72.94
   }

   RotationPeriod   13.47
   Obliquity   22.78
   RotationOffset   385.38

   Albedo      0.05
   
}

"Hoola" "The Lera Star/Shebabeba"
{
   Texture "hoola_surf.jpg"
   SpecularTexture "hoola_spec.jpg"

   Color [ 0.10 0.00 0.90 ]
   SpecularColor [ 0 0 1 ]
   SpecularPower 15.0
   HazeColor [ 0 0 1 ]
   HazeDensity 13.0
   Oblateness 0.0
   Radius 927

   BumpMap "hoola_bump.png"
   BumpHeight 1.0

   Atmosphere {
      Height 40
      Lower [ 0.90 0.10 0.10 ]
      Upper [ 0.70 0.10 0.40 ]
      Sky [ 0.66 0.10 0.60 ]
      Sunset [ 1 0 1 ]
   }

   EllipticalOrbit {
      Period         7.0287   
      SemiMajorAxis      70287
      Eccentricity      0.02
      Inclination      1.19
      AscendingNode      5.65
      LongOfPericenter   87.5
      MeanLongitude      357.76
   }

   Rings {
      Inner   157860
      Outer   166740
   }

   RotationPeriod   5.6
   Obliquity   4.56
   RotationOffset   12.67

   Albedo      0.34
   
}


Michael Kilderry :)

Re: Dissapearing Ring Bug

Posted: 06.11.2004, 03:22
by chris
Michael Kilderry wrote:I am here reporting a bug that I have discovered when I was testing new planets for the Lera System project. I have put a ring around a moon instead of a planet, so when the moon orbits, there is a hoola-hoop effect to the ring. The ring surrounds both the moon and the planet, the bug is when the moon goes behind the planet but the ring's still in front, the planet appears to be in front of the ring even when it isn't as the portion of ring in front of it just dissapears.


Hmm . . . My guess is that the rings are not being considered when sorting objects back to front for rendering. I can't promise that I'll have a fix for this right away though . . .

--Chris

Posted: 06.11.2004, 03:38
by Evil Dr Ganymede
Oh, I see now.

There is something odd going on here.

See the screenshots below. Now, when I look in Celestia, in views 1 and 2 both arcs of the the ring are actually behind the big red planet - but as the third view shows, the big red planet is always within the ring system.

The odd thing is that in the screenshots you CAN actually see the ring in front of the red planet (in the first view anyway). The second view shows the ring in front of the planet, but it's being 'clipped' somehow.

Image
Image
Image

If you experiment with Saturn's rings, it's even worse. The red planet is superimposed over the rings and keeps switching back and forth behind them.

I even tried rearranging things so that the small blue object was the planet (with the rings) and the big red world was the moon. I got the same problem with that set up... The larger world doesn't actually intersect with the rings at all at any point of its orbit, yet it seems to go in front of the rings. So this problem isn't related to rings being around a moon.


I get this on Basic, Multitexture, OGL, and OGL/NVidia Combiner paths, on an ASUS 128 MB Geforce4 TI4200 card.

Is this a videocard issue? I don't spot anything wrong with the code...

Posted: 06.11.2004, 03:40
by Evil Dr Ganymede
Oh, Chris - any idea what's up with the screenshot issue? The screenshot seems to sort things vaguely correctly (but still appears to have trouble, see shot #2), but Celestia itself doesn't...

EDIT: Er, and I just noticed that I can see stars through the big red planet in the screenshots...

Posted: 06.11.2004, 04:42
by Michael Kilderry
The stars don't show through the red planet in my Celestia, but that may be just a screenshot issue, did you actually notice any stars showing through the planet in the actual simulation?

By the way, it's great how you put screenshots of my solar system on the forum, I can't do it myself, since I don't have webspace, so I appreciate it when other people do it. :D

When you make the time faster and look at the planets, do you think it has the effect of a hoola hoop going around the planet Dr. Ganymede?

Michael Kilderry :)

Posted: 06.11.2004, 04:53
by Evil Dr Ganymede
It's definitely odd. I must admit it does look kinda cool.

And no, I can only see the stars through the planet in the screenshots, not in Celestia itself...

Posted: 06.11.2004, 05:04
by Michael Kilderry
So, do you think I'm going in better directions with my solar system? :D

Michael Kilderry :)

Posted: 06.11.2004, 05:17
by Evil Dr Ganymede
Michael Kilderry wrote:So, do you think I'm going in better directions with my solar system? :D


Let's stay on topic here. This is a board for posting bugs, not assessment of people's work.

Posted: 06.11.2004, 10:53
by ANDREA
Evil Dr Ganymede wrote:Let's stay on topic here.

Going on with rings problems, here is another strange one:
using Rassilon's Muphrid system in a script, with 2 planets used as stars (emissive true), with .ssc:

Code: Select all

"Muphrid B" "Muphrid"
{
   Texture "mstar-dark.jpg"
   Emissive true
   Color [ 0.5 0 0 ]
   BlendTexture true
   Radius     60000
   Atmosphere {
      Height 30000
      Lower [ 0.5 0 0 ]
      Upper [ 0.4 0 0 ]
      Sky [ 0.3 0 0 ]
   }
   EllipticalOrbit {
      Period         2000
      SemiMajorAxis  20
      Eccentricity   0.001
      Inclination    0.5
   }
   Rings {
      Inner   80000
      Outer   200000
      Texture "muphrid_b-rings.png"
      Color  [ 0.7 0.2 0.1 ]
   }
   RotationPeriod 5000
   Albedo         0.5
}

"Muphrid C" "Muphrid/Muphrid B"
{
   Texture "white-dwarf.jpg"
   Emissive true
   Color [ 0.9 1 0.9 ]
   BlendTexture true
   Radius     6000
   Atmosphere {
      Height 15000
      Lower [ 0.95 1 0.95 ]
      Upper [ 0.35 0.35 0.35 ]
      Sky [ 0.3 0.3 0.3 ]
   }
   EllipticalOrbit {
      Period         50
      SemiMajorAxis  220000
      Eccentricity   0.001
      Inclination    0.001
   }
   RotationPeriod 1000
   Albedo         0.9
}


I have such results:

light ring

Image
dark ring

Image
black ring

Image

Strange, do you agree? :roll:
Practically the ring blinks from black to orange and viceversa, and this happens in 1.3.2 final release, not checked with 1.3.4 release, sorry. :oops:
Any idea on reasons?
Thank you

Andrea :D
[/url]

Posted: 06.11.2004, 13:22
by selden
Andrea,

The "changing darkened rings" problem also exists in v1.4.0pre5.

It goes away when I comment out "Emissive true" from the definition for Muphrid B.

Posted: 06.11.2004, 14:04
by selden
Michael and EDG,

To try to clarify what Chris wrote, Celestia has to "depth sort" objects so that they get drawn in front of, behind or around one another. It seems that the sorting doesn't properly handle the case when rings that are around a satellite are larger than the planet that the satellite orbits around.

Are the surface textures that were used for the screenshots of Shebabeba publicly available?

Does Shebabeba's Texture PNG image include an Alpha channel?

(I'm wondering if the screenshot transparency problem may be a bug that somehow is related to the fact that both a PNG surface texture image and a separate specularity texture image are being used. Normally when a PNG image used as a surface texture includes an Alpha channel, that Alpha channel is used for the specularity texture. I dunno what happens if two specularity textures are used simultaneously.)

Posted: 06.11.2004, 14:31
by Evil Dr Ganymede
Actually, I didn't use any textures for the screenshots, I just deleted the texture lines (since I don't have the textures myself), I was just testing the code. Could that be a problem?

Posted: 06.11.2004, 15:04
by ANDREA
selden wrote:Andrea, The "changing darkened rings" problem also exists in v1.4.0pre5. It goes away when I comment out "Emissive true" from the definition for Muphrid B.

But if I do this I will loose my dark star and its surrounding white dwarf. :evil:
So even OpenGL 2.0 cannot solve it.
I was about changing my card with the new 6800, but I will wait for news on this subject. 8O
Thank you Selden. :wink:
By

Andrea :D

Posted: 06.11.2004, 15:26
by selden
EDG (I hope you don't mind me using initials),

Unfortunately, Celestia does seem to have problems when drawing objects which have no surface textures specified. I know there are errors in how illumination and eclipse shadows are handled, for example. There may be others.

Chris has improved this somewhat in the new OGL2 Render path. However, since blank textures are relatively easy to create, I suspect that fixing these kinds of problems are low priority for him.

Posted: 06.11.2004, 18:51
by Evil Dr Ganymede
selden wrote:EDG (I hope you don't mind me using initials),

That's fine :)

Unfortunately, Celestia does seem to have problems when drawing objects which have no surface textures specified. I know there are errors in how illumination and eclipse shadows are handled, for example. There may be others.

I noticed that increasing the ambient light to maximum didn't seem to affect the big red planet in OGL/NVIDIA path, but it worked on Basic and Multitexture.


Chris has improved this somewhat in the new OGL2 Render path. However, since blank textures are relatively easy to create, I suspect that fixing these kinds of problems are low priority for him.


Either way, it all looked fine in the view seen in Celestia - it's just in the screen shots that it looks screwy. Which implies that there's something up with the screen capture process. I'll try it again with a texture though, and see what happens.

Posted: 07.11.2004, 09:51
by Michael Kilderry
selden wrote:Michael and EDG,

To try to clarify what Chris wrote, Celestia has to "depth sort" objects so that they get drawn in front of, behind or around one another. It seems that the sorting doesn't properly handle the case when rings that are around a satellite are larger than the planet that the satellite orbits around.

Are the surface textures that were used for the screenshots of Shebabeba publicly available?

Does Shebabeba's Texture PNG image include an Alpha channel?

(I'm wondering if the screenshot transparency problem may be a bug that somehow is related to the fact that both a PNG surface texture image and a separate specularity texture image are being used. Normally when a PNG image used as a surface texture includes an Alpha channel, that Alpha channel is used for the specularity texture. I dunno what happens if two specularity textures are used simultaneously.)


I have made PNG textures for Shebabeba and it's moon, but they do not include alpha channels. They may take a while to be available on the Celestia Motherlode in an updated Lera1.zip as I am making other planets to be included as well and the Shebabeba system needs fixing up anyway.

Michael Kilderry :)