Feature Request: interpenetrating objects

General discussion about Celestia that doesn't fit into other forums.
Avatar
Topic author
selden
Developer
Posts: 10192
Joined: 04.09.2002
With us: 22 years 3 months
Location: NY, USA

Feature Request: interpenetrating objects

Post #1by selden » 07.04.2003, 12:07

It'd be really, really nice if Celestia could draw objects interpenetrating one another with their surfaces partially obscured. Right now, objects are drawn entirely in front of one another. It isn't always obvious what determines which is in front, since sometimes it changes with only very slight (or even no) apparent changes of viewpoint.

I suspect this is one of the harder things to do, though :(
Selden

chris
Site Admin
Posts: 4211
Joined: 28.01.2002
With us: 22 years 10 months
Location: Seattle, Washington, USA

Re: Feature Request: interpenetrating objects

Post #2by chris » 08.04.2003, 05:25

selden wrote:It'd be really, really nice if Celestia could draw objects interpenetrating one another with their surfaces partially obscured. Right now, objects are drawn entirely in front of one another. It isn't always obvious what determines which is in front, since sometimes it changes with only very slight (or even no) apparent changes of viewpoint.

I suspect this is one of the harder things to do, though :(


It's something that I've been planning for quite a while, and I do have a good idea how to make it work. The reason that it's a problem at all is due to the huge range in the sizes of objects rendered by Celestia. The depth buffer used by graphics hardware has limited precision (typically 16 or 24 bits), so Celestia must take special measures when rendering a seen with, say, a 5m space probe, a 100km moon, and the Sun (over one million km) in the background. Celestia sorts objects into 'depth buckets', which are assumed to not overlap; when they do overlap, you get the effect you've described, where one object is always completely in front of the other. The workaround is to merge depth buckets when they overlap (with some constraints--it won't do any good if the objects differ immensely in size.)

--Chris

Avatar
Topic author
selden
Developer
Posts: 10192
Joined: 04.09.2002
With us: 22 years 3 months
Location: NY, USA

Post #3by selden » 08.04.2003, 14:41

Chris,

That'd be great if you can pull it off. It'd make some ad-hoc object assemblies a lot easier -- planet rings with a non-uniform appearance is one I'd like to try.

I fear one of the interesting cases may fall into your "the objects differ immensely in size" category, though: Shoemaker-Levy 9 fragments impacting on Jupiter :(
Selden


Return to “Celestia Users”