CelestiaProject / Celestia

Real-time 3D visualization of space.
https://celestiaproject.space
GNU General Public License v2.0
1.81k stars 304 forks source link

New functionality request: Spherical Mirror Projection #572

Closed ImmersiveTheatres closed 3 years ago

ImmersiveTheatres commented 4 years ago

Hello Celestia development community

I own and operate my own mobile planetarium business and Celestia 1.4.1 (spherical mirror projection version) has for many years been as important to me as Stellarium plus my catalogue of fulldome (360°) films.

In fact, many mobile planetarium operators like me have delighted audiences with Celestia 1.4.1 adapted for spherical mirror projection - immersing them with Celestia in 360°.

Spherical mirror projection is simply an inexpensive way of projecting in 360°. All you need is a projector, a spherical mirror and 'warping' of digital content so it looks correct on the dome (see diagram here).

The 1.4.1 spherical mirror version of Celestia was commissioned by mobile planetarium sales company Discovery Dome many years ago and made available free to its customers.

Of course 1.4.1 is very old now and no longer works with the latest operating systems (with OS X anyway, which is what I use). Plus it has always carried a number of bugs.

It would be wonderful if a spherical mirror projection option was incorporated into the current version of Celestia. This would make Celestia of great value and interest to the large and growing number of small and medium digital dome operators around the world.

Have you perhaps considered adding spherical mirror projection functionality, like Stellarium has done for many years now?

I'm not a programmer, but would love to help where I can. Please let me know if any developers would like to see a copy of the 1.4.1 spherical mirror version (I am a Discovery Dome sales agent, so I am allowed to share this version with you). Perhaps if you create a repository on here I can upload this version for those interested to examine? I have both Mac and Windows versions.

Also, Paul Bourke (the inventor of spherical mirror projection in 2005) is an academic who makes all the information and support you require as regards spherical mirror projection freely available on his website eg http://paulbourke.net/dome/stellarium/ He would be delighted to help you achieve spherical mirror projection in Celestia.

Please let me know if I can help in any other way?

By allowing Celestia to be projected in 360° inside digital planetariums, you will be introducing hundreds of thousands of people (mainly schoolchildren) to the magical universe of Celestia - and then operators like me will encourage these children to download Celestia at home for themselves (as we do with Stellarium).

Thanks very much.

Mario

SevenSpheres commented 3 years ago

One thing I've just noticed is this version is not removing the Venus clouds to show the surface ie. the I key is not removing the clouds, the way it does for Earth. Also: 9 + G takes us to Pallas - not Pluto (?). Is that intentional?

This should be fixed in this PR to CelestiaContent, but I've never finished it...

dpentecost commented 2 years ago

Picking up this thread in 2022 - The Google Drive files from levinli303 are no longer on Drive, and I also need a spherical mirror solution. Does anyone have a working version of this that they can share? If so, please contact me at dave.pentecost@gmail.com

Thanks!

levinli303 commented 2 years ago

@dpentecost this is already merged to mainline Celestia. just download Celestia from App Store, then read and change the last few lines in celestia.cfg inside the app (you might need to duplicate celestia.cfg in another place)

dpentecost commented 2 years ago

Thanks for the quick reply and the tip.

ImmersiveTheatres commented 2 years ago

May I ask for clarification please: the latest version for Mac is 1.6.2 - but it does not appear to be warped for fisheye?

I've added the following three lines to the end of celestia.cfg, and it makes no difference?

ProjectionMode "fisheye" ViewportEffect "warpmesh" WarpMeshFile "warp.map" }

What am I doing wrong?

Thanks

levinli303 commented 2 years ago

@ImmersiveTheatres you should either use https://github.com/levinli303/CelestiaApp/releases or download from the Mac App Store. 1.6.2 has no support for this

pdbourke commented 1 year ago

An update on this ... my current recommended approach to using any software that creates fisheye (Stellarium, Celestia...) is to use my new screen warping tool. It captures a region of the primary, warps it and presents on the secondary display. It wasn't so cool in the past but is more viable now with the resolution of retina displays. Details can be found here http://paulbourke.net/dome/fishwarp/#screen including some comments on configuring Stellarium so it opens correctly and in the same location.