Unfortunately, there seems to be a problem with the way ring textures are being rendered. I realized this while working on the new Saturn ring texture png image ( see http://63.224.48.65/forum/viewtopic.php?t=1248 ).
The transparency map (the alpha channel) is modifying the appearance of the reflective image. For example, areas in the alpha channel that are fully transparent cause the corresponding area in the ring reflectivity image to completely disappear. (This is the cause of the doubled Enke gap in the standard Saturn ring image.)
For rings, this is inappropriate: the main image normally is created from the reflective image that we see. The transparency map is created from the opacity information determined by watching occultations of various types.
In other words, the image of the rings that we see should consist of the main image (appropriately modified by the illumination and viewing angles) plus the light of objects behind the ring appropriately attenuated by the transparency channel. The transparency channel should not be subtracted from the main image.
I realize this subtraction is how alpha channels usually work. In fact, many of the cloud texture maps in Celestia depend on it. For example, the Earth's cloud image is solid white. The planet is visible only because of the transparency settings in the cloudmap's alpha channel.
Chris, is there any chance this could be modified for rings?
Otherwise, a special algorithm will have to be used to create ring image layers. In order for the visible ring to be correct, the values in the transparency channel will have to be added to the ring image when creating the map so that they cancel out when the display is drawn.
I suspect this will cause serious problems for the lighting algorithm.
Problem with all ring textures
-
- Site Admin
- Posts: 4211
- Joined: 28.01.2002
- With us: 22 years 9 months
- Location: Seattle, Washington, USA
Problem with all ring textures
It's not actually subtracted; it's multiplied by the opacity. But I understand what you mean . . .selden wrote:Unfortunately, there seems to be a problem with the way ring textures are being rendered. I realized this while working on the new Saturn ring texture png image ( see http://63.224.48.65/forum/viewtopic.php?t=1248 ).
The transparency map (the alpha channel) is modifying the appearance of the reflective image. For example, areas in the alpha channel that are fully transparent cause the corresponding area in the ring reflectivity image to completely disappear. (This is the cause of the doubled Enke gap in the standard Saturn ring image.)
For rings, this is inappropriate: the main image normally is created from the reflective image that we see. The transparency map is created from the opacity information determined by watching occultations of various types.
In other words, the image of the rings that we see should consist of the main image (appropriately modified by the illumination and viewing angles) plus the light of objects behind the ring appropriately attenuated by the transparency channel. The transparency channel should not be subtracted from the main image.
I realize this subtraction is how alpha channels usually work. In fact, many of the cloud texture maps in Celestia depend on it. For example, the Earth's cloud image is solid white. The planet is visible only because of the transparency settings in the cloudmap's alpha channel.
Chris, is there any chance this could be modified for rings?
This is actually extremely simple to fix--just a one line change. I'll give it a try tonight.
--Chris