Celestia Development Roadmap

The place to discuss creating, porting and modifying Celestia's source code.
Topic author
chris
Site Admin
Posts: 4211
Joined: 28.01.2002
With us: 22 years 9 months
Location: Seattle, Washington, USA

Celestia Development Roadmap

Post #1by chris » 03.05.2007, 16:20

tech2000 asked to see a development roadmap for Celestia. This is the contents of my Celestia todo list, with tasks roughly prioritized highest first.

Code: Select all

1.5.0pre3
- Don't require LuaHook for scripted orbits and rotations
- Fix cloud shadows
- ASAP

1.5.0pre4
- Changes to standard data files:
  - new Eros model
  - new ISS and Mir models
  - new Itokawa model
- Fix stars
- Allow star orbits to be toggled separately from planet orbits
- Eliminate OrbitBarycenter
- Adjust near clip plane for FOV (to preserve depth buffer precision)
- Don't show labels for star system barycenters
- Fix SSC texture override for meshes

1.5.0 final
- Changes to standard data files:
  - Switch to new rotation model forms
- Atmospheres
  - Make dense atmospheres work better
  - Fix artifacts from linear interpolation across triangles
  - Fix too dark sky at zenith
  - Automatic conversion of new style atmosphere parameters to old ones
- Default body frame is based on parent, not center of orbit frame; is this
  right?
- Fix depth sorting of labels

1.5.1
- Script function to show / hide individual objects
- Script menu
- Make quaternion slerp more robust
- Double precision SampledOrbits
- Pulsar catalog?
- Triaxial ellipsoids for solar system bodies
- Fix multiple star handling in star database builder
- Bug fixing

1.6.0
- User-definable object classes
- Orbits:
  - More flexible means to choose which orbits to display (custom classes)
  - Allow orbits to be shown in any reference frame
- Script:
  - Functions to deal with object classes
  - Expose 1.5.0 reference frames in scripts
  - Vector and orientation parameters for ScriptedOrbits and ScriptedRotations
- Markers:
  - Labeled markers
  - Allow different reference frames for markers
- Texture improvements:
  - Use lower resolution virtual texture tiles for surface patches farther
    from camera
  - Improve texture memory management
  - Multithreaded texture loader
- Optimize galaxy rendering: point sprites, vertex buffers instead of
  immediate mode.
- SPICE
  - Allow lists of kernel files
  - Manage loaded kernels
  - C-kernel rotation model
  - Generic frame rotation model
- Goto fixes:
  - Fix center orbit (currently assumes infinitely distant target)
  - Goto barycenter should pick a distance based on size of the orbits around
    the barycenter.
- SampledOrbit / SampledOrientation:
  - Periodic SampledOrbits
  - Support cubic interpolation of SampledOrientation files
- New Earth rotation CustomRotations--precession, nutation, IRTF93
- Internal changes:
  - Implement velocity method for all orbit types
  - Change internal time scale to be Julian days relative to J2000.0
  - Use J2000 ecliptic coordinate system throughout Celestia
  - CachingRotation base class
- More accurate lunar orbit
- Depth sort location labels (new drawable type: label cluster)
- New data:
  - Create model for Comet Temple 1
  - Create model for asteroids KW44 A + B
- Eliminate the .cms format

1.7.0
- Dynamic loading and unloading of add-ons
- Make add-ons easier to install
- Multiple names for solar system objects
- For stars, do antialiased points in shader
- 3D graphic objects in scripts
- Reference frames
  - Named frames
  - Rotation offset frames
  - Two-vector frames: closest point vectors
- Self shadowing for complex objects
- Address 16k light year limit
- Supernova catalog?

2.0
- High dynamic range lighting - photorealism
- Light scattering model for rings
- Major UI improvements


Feel free to comment and make suggestions. I will probably put this on the Celestia Wiki so that updates are visible to everyone.

--Chris
Last edited by chris on 22.06.2007, 22:54, edited 2 times in total.

tech2000
Posts: 258
Joined: 14.02.2006
Age: 52
With us: 18 years 9 months
Location: Skepplanda, Sweden

Post #2by tech2000 » 03.05.2007, 16:27

Thank you very much for that.. please make it a sticky.

And I would like to suggest this:

1. Multithreading support since almost all new processors are quadcore it would be great if Celestia uses abit more of the systems resources.

2. Start looking at x64 bit migration.

Cheers,
Anders
Last edited by tech2000 on 03.05.2007, 17:08, edited 2 times in total.

Paolo
Posts: 502
Joined: 23.09.2002
With us: 22 years 1 month
Location: Pordenone/Italy

Post #3by Paolo » 03.05.2007, 16:55

:lol:

Asked many times years ago........

Better late than never....

Thank you very much.
Remember: Time always flows, it is the most precious thing that we have.
My Celestia - Celui

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

Post #4by ElChristou » 03.05.2007, 17:19

Yes, Tx Chris! :D
Image

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

Post #5by chris » 03.05.2007, 17:23

tech2000 wrote:Thank you very much for that.. please make it a sticky.

And I would like to suggest this:

1. Multithreading support since almost all new processors are quadcore it would be great if Celestia uses abit more of the systems resources.

Multithreaded texture loading will be start.

2. Start looking at x64 bit migration.


I believe that Celestia can already be built 64-bit for Linux and Mac OS X. You're right that I should add a todo item for Windows, as well as a move to using VS2005.

--Chris

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

Post #6by ElChristou » 03.05.2007, 17:33

Chris, I see for 1.5prev4 newISS and Mir models; are those new models already available? (I'm curious to see the level of optimization of such...)
Image

Paolo
Posts: 502
Joined: 23.09.2002
With us: 22 years 1 month
Location: Pordenone/Italy

Re: Celestia Development Roadmap

Post #7by Paolo » 03.05.2007, 17:43

chris wrote:Feel free to comment and make suggestions. I will probably put this on the Celestia Wiki so that updates are visible to everyone.


Any chance to see a unified UI sooner or later?

What about an improved data format and object model to support add-on management?

I have so many ideas... And now the competence too to help the development... Unfortunately is the time that is lacking...
Remember: Time always flows, it is the most precious thing that we have.

My Celestia - Celui

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

Post #8by selden » 03.05.2007, 18:15

Paolo,

Vincent's Edu Tools provide a platform independent GUI written in Lua. Maybe an extension to that with more functionality plus a flag telling Celestia not to display its default menus would be a reasonable way to go.
Selden

tech2000
Posts: 258
Joined: 14.02.2006
Age: 52
With us: 18 years 9 months
Location: Skepplanda, Sweden

Post #9by tech2000 » 03.05.2007, 18:33

chris wrote:Multithreaded texture loading will be start.


Excellent!

Bye,
Anders

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

Post #10by t00fri » 03.05.2007, 18:56

Chris,

this sounds like a very sensible TODO for you...

Here is something we might not want to forget:

http://www.celestiaproject.net/forum/viewtopic ... c&start=15

My TODO list is short and ends around 1.5.0final. Not that I am running out of ideas...to the contrary ;-)

++++++++++++++++++++++++++++++++++++

1.5.0pre3/4/final:
---------------------

1) commit & further test my vastly upgraded galaxy database including the complete local group of galaxies.

Here is the impressive log. Note the large number of merged catalogs and good distance data ;-)

Code: Select all

 Catalog Input:
---------------
  333 Galaxies in Local Group Volume (d < 10 Mpc)
  717 Averaged distances from NED-1D Distance Data Base
  289 Surface Brightness Fluctuation (SBF) distance data
  544 Tully-Fisher elliptical galaxy distance data
  469 Tully-Fisher spiral galaxy distance data
 7302 ZCAT redshift data
16588 RC3 galaxy distance data
 2416 NED redshift data (batch)

Summary Output:
---------------
10937 Galaxies in Total
10032 with good distance data

  333 with distances from 'catalog of neighboring galaxies'
  718 with NED-1D averaged distances
    1 with Surface Brightness Fluctuation (SBF) distances
  515 with Tully-Fisher distances
   37 with B200 distances
 4672 with distances from Hubble Law (v_CMB, RC3)
 1330 with distances from Hubble Law (ZCAT).
 2426 with distances from Hubble Law (NED, batch).


Before only 60% of the 10000+ galaxies in deepsky.dsc involved good distance measurements.

2) Release my new txtools achieving a completely automatic generation of highest quality monster texture sets (VT's) in cross-platform setting as before

3) Elimination of binary star double from visualbins.stc (Del Equ). Cf. our discussion here:

http://www.celestiaproject.net/forum/viewtopic ... sc&start=0

++++++++++++++++++++++++++++++++++++


Here is a no too serious rough time extrapolation until Chris' projected version 2.0

Code: Select all

Celestia 1.3.2       =>  2004-08-23
Celestia 1.4.1       =>  2006-02-17
Celestia 1.5.0pre2   =>  2006-12-21

Celestia 1.5.0pre3
Celestia 1.5.0pre4
Celestia 1.5.0final  =>  2007?

Celestia 1.6.0       =>  2008?
Celestia 1.7.0       =>  2009?
Celestia 2.0.0       =>  2011?


Bye Fridger
Image

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

Post #11by ElChristou » 03.05.2007, 19:25

t00fri wrote:Here is a no too serious rough time extrapolation until Chris' projected version 2.0

Code: Select all

...
Celestia 2.0.0       =>  2011?


Bye Fridger


Are you kinding? Everybody knows 2012 is the end of the world, only one year to play with Celestia at this level would be a real shame... Please guys, 2.0 in 2009! :x
Image

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

Post #12by t00fri » 03.05.2007, 19:31

ElChristou wrote:
t00fri wrote:Here is a no too serious rough time extrapolation until Chris' projected version 2.0

Code: Select all

...
Celestia 2.0.0       =>  2011?


Bye Fridger

Are you kinding? Everybody knows 2012 is the end of the world, only one year to play with Celestia at this level would be a real shame... Please guys, 2.0 in 2009! :x


Really? 2012?? Didn't know. Yet, I felt something bad was approaching...

Cheers,
Fridger
Image

Fightspit
Posts: 510
Joined: 15.05.2005
With us: 19 years 6 months

Post #13by Fightspit » 03.05.2007, 20:04

What's happened in 2012 ? A big solar eclipse or something astrological ?
Motherboard: Intel D975XBX2
Processor: Intel Core2 E6700 @ 3Ghz
Ram: Corsair 2 x 1GB DDR2 PC6400
Video Card: Nvidia GeForce 8800 GTX 768MB GDDR3 384 bits PCI-Express 16x
HDD: Western Digital Raptor 150GB 10000 rpm
OS: Windows Vista Business 32 bits

Paolo
Posts: 502
Joined: 23.09.2002
With us: 22 years 1 month
Location: Pordenone/Italy

Post #14by Paolo » 03.05.2007, 21:15

selden wrote:Paolo,

Vincent's Edu Tools provide a platform independent GUI written in Lua. Maybe an extension to that with more functionality plus a flag telling Celestia not to display its default menus would be a reasonable way to go.


Oh yes I know, I'm using all the Vincent's Edu tools since the first release and I foud them useful.
But I would like to see much much more. More than the KDE interface that since now is the most advanced one.

Several of the tasks planned by Chris will require at least a minimum of GUI, some dialogs and so on. And IMHO the development of 3-4 different versions of the GUI is not very smart.

Merging to a unique GUI perhaps will shorten the development time and we will be able to enjoy Celestia 2.0 for a couple of years before 2012. :lol:
Remember: Time always flows, it is the most precious thing that we have.

My Celestia - Celui

tech2000
Posts: 258
Joined: 14.02.2006
Age: 52
With us: 18 years 9 months
Location: Skepplanda, Sweden

Post #15by tech2000 » 03.05.2007, 22:22

Paolo wrote:
selden wrote:Paolo,

Vincent's Edu Tools provide a platform independent GUI written in Lua. Maybe an extension to that with more functionality plus a flag telling Celestia not to display its default menus would be a reasonable way to go.

Oh yes I know, I'm using all the Vincent's Edu tools since the first release and I foud them useful.
But I would like to see much much more. More than the KDE interface that since now is the most advanced one.

Several of the tasks planned by Chris will require at least a minimum of GUI, some dialogs and so on. And IMHO the development of 3-4 different versions of the GUI is not very smart.

Merging to a unique GUI perhaps will shorten the development time and we will be able to enjoy Celestia 2.0 for a couple of years before 2012. :lol:


Hi Paolo.

If you are able to provide a patch like Vincent and if the community like it Chris would probably integrate it into Celestia. There is no reason for him not to do so..

And ofcourse are you right that the same GUI for all platforms really should be used.

Regards,
Anders

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

Post #16by chris » 03.05.2007, 22:35

tech2000 wrote:
Paolo wrote:
selden wrote:Paolo,

Vincent's Edu Tools provide a platform independent GUI written in Lua. Maybe an extension to that with more functionality plus a flag telling Celestia not to display its default menus would be a reasonable way to go.

Oh yes I know, I'm using all the Vincent's Edu tools since the first release and I foud them useful.
But I would like to see much much more. More than the KDE interface that since now is the most advanced one.

Several of the tasks planned by Chris will require at least a minimum of GUI, some dialogs and so on. And IMHO the development of 3-4 different versions of the GUI is not very smart.

Merging to a unique GUI perhaps will shorten the development time and we will be able to enjoy Celestia 2.0 for a couple of years before 2012. :lol:

Hi Paolo.

If you are able to provide a patch like Vincent and if the community like it Chris would probably integrate it into Celestia. There is no reason for him not to do so..

And ofcourse are you right that the same GUI for all platforms really should be used.


Maintaining the four separate GUIs has become a real obstacle. It's prevented new UI features from being introduced because it's so difficult. Qt seems like the best one to use, and that toolkit also provides a lot of other useful functionality.

A Lua based approach like Vincent's Edu tools is another possibility. They have the advantage of working even when Celestia is running in full-screen mode.

--Chris

tech2000
Posts: 258
Joined: 14.02.2006
Age: 52
With us: 18 years 9 months
Location: Skepplanda, Sweden

Post #17by tech2000 » 03.05.2007, 23:25

chris wrote:Maintaining the four separate GUIs has become a real obstacle. It's prevented new UI features from being introduced because it's so difficult. Qt seems like the best one to use, and that toolkit also provides a lot of other useful functionality.

A Lua based approach like Vincent's Edu tools is another possibility. They have the advantage of working even when Celestia is running in full-screen mode.

--Chris

Okay, that sounds great, but in that case I think Vincent's lua edu tools should be better integrated into Celestia, that would also make it very easy to translate Celestia's GUI.

Chao,
Anders

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

Post #18by ElChristou » 03.05.2007, 23:36

chris wrote:...A Lua based approach like Vincent's Edu tools is another possibility. They have the advantage of working even when Celestia is running in full-screen mode...


Yep, I find Vincent's UI quite promising; I wonder about the possibility to remove completly the hard coded UI and release Celestia with a simple Lua UI similar to the actual one, then some specialized UI(s), for education, DSO survey or else...
Image

tech2000
Posts: 258
Joined: 14.02.2006
Age: 52
With us: 18 years 9 months
Location: Skepplanda, Sweden

Post #19by tech2000 » 03.05.2007, 23:45

ElChristou wrote:
chris wrote:...A Lua based approach like Vincent's Edu tools is another possibility. They have the advantage of working even when Celestia is running in full-screen mode...

Yep, I find Vincent's UI quite promising; I wonder about the possibility to remove completly the hard coded UI and release Celestia with a simple Lua UI similar to the actual one, then some specialized UI(s), for education, DSO survey or else...

ElChristou,
I agree with you on that.

And I have a small request for Vincent: why not change the naming of the direcory that contains the language files to this ISO standard (I can't remember which ISO number :oops: ) sv_SE, en_US and es_ES...

Cheers,
Anders

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

Post #20by t00fri » 04.05.2007, 08:23

I doubt that Lua can handle all the forthcoming GUI tasks that eventually need to be incorporated.

E.g. we do need to integrate a graphical data-set manager such that one may select, load and unload more specialized catalogs of DSO's , radio sources,...whatever /on the fly/. Same for managing specialized textures! Moreover, we urgently need (to integrate) a further browser for binary/multiple stars with complete orbits. Same for stars with exoplanets.

Then there are the existing GUI browsers that we don't want to miss. Then there is the bookmark facility, including a special toolbar, which the Linux guys are tremendously enjoying since a long time etc.

Personally, I find vincent's overlay way too crowded already NOW, since proper widgets are missing in Lua.

Already more than 5 years ago, I was advocating the Qt toolkit (I still got that mail ;-) ).

Chris dismissed it at the time, with the (sensible) argument that it was "early times" for the free Qt version. It's future was admittedly uncertain at that time. This is all different 5 years later...

Bye Fridger
Image


Return to “Development”