Celestia 1.5.0 prerelease 1

General discussion about Celestia that doesn't fit into other forums.
Topic author
chris
Site Admin
Posts: 4211
Joined: 28.01.2002
With us: 22 years 10 months
Location: Seattle, Washington, USA

Celestia 1.5.0 prerelease 1

Post #1by chris » 05.12.2006, 08:42

The first of the prerelease builds of Celestia 1.5.0 is ready. As usual, this is a Windows binary package. For the time being, Linux and Mac OS X users should sync with the CVS tree and compile the source. I will try to have a Mac OS X binary for 1.5.0pre1 ready soon.

You may download the self-installing package here:
http://www.celestiaproject.net/~claurel/celest ... .0pre1.exe

All of the major new features for 1.5.0 are in the prerelease. Nearly all of the work for the final 1.5.0 will consist of bug fixes and some performance tuning. There are some known bugs with star rendering and cloud shadows, and some work on the new atmosphere code still remains. You should only install 1.5.0pre1 if you need or want to test out the new features; otherwise, it's best to stick with 1.4.1.

Here is the 1.5.0 change log so far, with changes categorized for readability:

Code: Select all

Rendering:
* Improved rendering of meshes in OpenGL 2.0 render path:
  - Switched to local viewer model for better quality specular highlights
  - Added support for specular and normal maps for meshes
  - Enable rendering of eclipse shadows cast onto meshes
* Enabled per-pixel specular lighting in OpenGL 2.0 path
* Made specular lighting work properly with normal maps
* Enabled separate specular color when rendering models in pre OpenGL 2.0
  render paths
* Implemented cloud shadows
* Changed eclipse shadow shaders to use a single interpolant for all
  shadows instead of one per shadow
* Made OpenGL 2.0 render path respect the ring shadow render flag setting
* Improved atmosphere rendering in OpenGL 2.0 path; uses new ssc parameters
  to specify scattering and absorption coefficients
* Added Lunar-Lambert photometric model (linear combination of Lambert and
  Lommel-Seeliger) for much more realistic appearing dusty objects
  (e.g. the Moon)
* Added normal maps for cloud layers
* Allow smaller objects to cast eclipse shadows (e.g. can now see eclipse
  shadows from Miranda on Uranus)
* Added dynamic star labeling
* Made star orbit paths visible
* Added support for compressed normal maps (DXT5nm)
* Enabled new star rendering path: uses point sprite extension, new Gaussian
  glare textures
* Made overlay textures work in GLSL path
* Added support for non-power-of-two textures (newer graphics cards only;
  on older cards the textures will be automatically rescaled to the nearest
  power of two.)


Galaxies:
  -changed galaxy template format to standard (grayscale) PNG
  -allow a custom template for each galaxy in deepsky.dsc
  -new approach to thickness of galaxy (arms): assumed proportional to read-in
   brightness values
  -emulate dust lanes around galactic plane (y=0)
  -considerable improvement of Milky Way appearance as seen from Earth
  -implement galaxy labels of transparency increasing with distance, thus
   providing a neat 3d effect
  - Galaxy templates:
    - designed an entirely new set of PNG templates using a uniform multi-layer
      technique
    - provided a custom Milky Way template including all known arms with
      correct location of the Sun. Supply adapted deepsky.dsc


New depth sorting:
* Fixed some depth sorting problems: coalescing of depth buckets was failing
  when a merged object was clipped to the new plane.
* Implemented a new depth sorting algorithm that fixes many depth sorting
  bugs.
* Rewrote orbit path rendering; orbits are now properly depth sorted


Trajectories and reference frames:
* Added SpiceOrbit interface for trajectories defined in SPICE kernel files
* Improved custom orbits based on JPL ephemerides:
  - Support big endian platforms
  - Fixed Moon orbit
  - Added orbits for Earth-Moon barycenter and sun
  - Added heliocentric and solar system barycentric orbits
  - Added Moon and Earth orbits relative to Earth-Moon barycenter
  - Guarded against crash when the JPL ephemeris file can't be found
* Generalized rotations
  - Clear syntax for ssc files
  - UniformRotation
  - PrecessingOrientation
  - SampledOrientation - interpolated sequence of quaternion key frames
* Added new solar system object type ReferencePoint, for defining reference
  frame centers.
* Script interfaces for orbits and rotation models (ScriptedOrbit and
  ScriptedRotation)
* Added generalized reference frames for positioning and orienting bodies
  - J2000 ecliptic
  - J2000 equator
  - Body-fixed
  - Body mean equator (with optional freeze epoch)
  - Two-vector (relative position, relative velocity, constant vectors)
* Added FixedPosition trajectory type for making an object stationary within
  its reference frame
* Added FixedRotation rotation model
* Added VSOP87 CustomOrbit for the Sun about the solar system barycenter


Accuracy:
* Established Barycentric Dynamical Time (TDB) as the time scale used
  internally by Celestia
  - Convert to UTC when displaying the time
  - Modified Set Time dialog to convert from UTC to TDB
* Moved origin of coordinate system to the solar system barycenter
* Corrected kilometers per light year constant


Internationalization:
* New translations: Ukrainian, Russian, Arabic, Dutch, Chinese, Korean
* Updated other translations
* Separate i18n domain for constellation names
* Windows: Added support for i18n
* Fixed bugs with UTF-8 in object name completion
* I18n improvements and bug fixes for Mac OS X
* Localized planet labels
* Mac: added Japanese translation
* Modified eclipse finder dialog for i18n
* Display a '?' when glyph is not found in a font texture
* COPYING, controls.txt, start script, and guide can all be localized


Scripting:
* Implemented event handlers for celx scripts
* cel and celx scripting:
  - added openclusters and cloudshadows render flags
  - added location, nebulae, openclusers, and i18nconsteallations label flags
* New celx scripting commands:
  - utctotdb and tdbtoutc
  - gl commands for rendering
* Lua hooks for script extensions to Celestia
* Script interfaces for orbits and rotation models (ScriptedOrbit and
  ScriptedRotation)
* Support Lua 5.1 (5.0 compatibility retained)
* Made celestia:loadtexture use relative file names


UI:
* Added a ReverseMouseWheel option for configuration file


Catalog files:
* Made relative InfoURL relative to current add-on directory instead of main
  data directory.
* Updates to parser:
  - Allow leading + (no effect, just symmetry with - )
  - Allow numbers to begin with a decimal point (e.g. accept .12 as well
    as 0.12)
* Accelerated loading of large catalog files with an improved name index
  (over 100x performance increase for 100k+ object catalogs)


Meshes:
* Added logging of mesh statistics
* Improved load time mesh conditioning: eliminated duplicate materials and
  sort submeshes by material to reduce graphics state changes.
* Fixed bad calculation of specular exponent when converting materials from
  3DS files.


Data file updates:
* New extrasolar planets:
  - XO-1
  - HD 69830 system
  - HD 164922 b, HD 66428 b, HD 99109 b, HD 107148 b, HIP 14810 b
  - HIP 14810 c, HD 185269 b, Gliese 849 b
  - Mu Ara e
* Added stars for new extrasolar planets: GSC 92941-01657
* Revised orbits of many extrasolar planets to reflect new data
* Added Plutonian satellite names: S/2005 P1 -> Hydra, S/2005 P2 -> Nix
* Added 9 new numbered Saturnian satellites
* New RECONS data added to nearstars.stc
* Added moons Daphnis, Perdita, Mab, and Cupid to numberedmoons.ssc
* Switch to barycentric definition for Pluto system
* Use J2000 equator for Moon's reference frame (instead of equator of date;
  allows precession to be included for Earth's rotation.)
* Added asteroid RGB colors integrated from spectra
* Replaced Hubble Space Telescope made with Cham's much improved version
* Switched to improved version of Cassini model from Cham


Miscellaneous bug fixes:
* Fixed bug that caused time scale in celestiacore and simulation to get out
  of sync.
* Fixed bug in eclipse shadow test; objects close to the surface of the lit
  side of a planet were incorrectly rendered with shadows
* Fixed a bug in the octree culling code that was causing star culling errors
* Fixed ambient light in OpenGL 2.0 render path to match other render paths
* Fixed bug that causes locations to work improperly in multi-star systems
* Improved vecToVec rotation and quaternion-to-matrix functions


Tools:
* Added cmodsphere, a utility for producing cmod meshes from height samples
  regularly spaced in longitude and latitude.
* Added spectrum2rgb tool for generating RGB asteroid colors from SMASS
  spectra


Miscellaneous platform-specific changes:

Mac OS X:
* Mac: Show menu bar when moving mouse to top of screen in full screen
* Mac: added missing 'Hide Others' menu option
* Mac: cursor now changes on draggable view boundaries
* Mac: middle mouse button implemented (option-click on one button mice)
* Mac: show nearest and brightest stars properly sorted in star browser
* Mac: enabled support for hardware antialiasing

Linux:
* KDE and GTK: added ogg/theora video capture
* Fixed bug in cmod loader that caused binary cmod files to be read
  incorrectly on 64-bit machines.
* KDE: removed a dependency on STL support in Qt
* Fixed gcc 4.1.1 build errors caused by bad constructor declarations in Star
  and CommandGotoLongLat classes
* KDE: improvements to popup menu--orbiting bodies are now sorted by type
* KDE: accept relative dir/files in --conf, --dir, and --extrasdir command
  line options
* KDE: fixed by ing deep sky objects info url where the default url was
  always used.

Windows:
* Windows: generate an accelerate command only when the 'a' key is pressed
  without any modifiers.


--Chris

rthorvald
Posts: 1223
Joined: 20.10.2003
With us: 21 years 1 month
Location: Norway

Post #2by rthorvald » 05.12.2006, 09:03

This is great news.

8O 8O 8O The changelog reads like a christmas wish list...

Particularily, the new catalog parameters offer intriguing possibilities that i can??t wait to try! I look forward to the final, and the OSX version...

-rthorvald
Image

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

Post #3by ElChristou » 05.12.2006, 10:15

Cool, the Change log is now sorted!! :D
Much clearer indeed!
Image

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

Post #4by t00fri » 05.12.2006, 20:32

Here are some more of my (unsorted) Changes that Chris forgot:

Code: Select all

* Added E0.png galaxy template that allows for better En, n=1..7 elliptical
  shapes. 
* Fixed sizes of irregular galaxies (factor of 2!).
* Prevented galaxy code from crashing if a template is missing.
* Added new code featuring varying label transparency for galaxies.
* Added new parameter set for Mie atmosphere display of Titan.


Bye Fridger
Image

julesstoop
Posts: 408
Joined: 27.03.2002
With us: 22 years 8 months
Location: Leiden, The Netherlands

Post #5by julesstoop » 05.12.2006, 23:40

Thanks Chris!
Lapinism matters!
http://settuno.com/

lacy
Posts: 7
Joined: 11.02.2006
With us: 18 years 9 months
Location: West Virginia

Post #6by lacy » 06.12.2006, 02:56

I don't know what is happening, but this pre-release is locking up my system.

First I have no star points in any render options. If I try to do anything like goto an object it just will freeze and my computer will re-boot. Basically, if I try to do anything it does this.l

I am running Windows XP SP2, AMD Athlon 64 Processor at 2.2 Ghz, 512MB RAM.

Just a note. I didn't seem to have a problem with the downloads at
http://www.purebytes.de/stuff/celestia. Of course, I realize this may not have been totally complete.

Let me know if there is something on my end that could be causing a problem (firewalls, virus protection, etc.)

Thanks
L. Winston

Avatar
Cham M
Posts: 4324
Joined: 14.01.2004
Age: 60
With us: 20 years 10 months
Location: Montreal

Post #7by Cham » 06.12.2006, 03:02

I'm unable to compile the CVS code (today). I'm getting one error which stops the compilation. I redownloaded all the code (instead of doing a simple update), and same error. I can't test Fridger's modification of today.
"Well! I've often seen a cat without a grin", thought Alice; "but a grin without a cat! It's the most curious thing I ever saw in all my life!"

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

Post #8by chris » 06.12.2006, 03:44

Cham wrote:I'm unable to compile the CVS code (today). I'm getting one error which stops the compilation. I redownloaded all the code (instead of doing a simple update), and same error. I can't test Fridger's modification of today.


What's the error?

--Chris

Avatar
Cham M
Posts: 4324
Joined: 14.01.2004
Age: 60
With us: 20 years 10 months
Location: Montreal

Post #9by Cham » 06.12.2006, 03:57

My compiler said it's in CelestiaUniverse.mm :

Line 44 : return [[[CelestiaSelection alloc] initWithSelection:[self universe]->pick([origin universalCoord],[direction vec3f],[when floatValue],[faintestMag floatValue])] autorelease];


Error : no matching function for call to 'universe::pick(UniversalCoord, Vec3f, float, float)'

Really, I don't know what this is all about ...
"Well! I've often seen a cat without a grin", thought Alice; "but a grin without a cat! It's the most curious thing I ever saw in all my life!"

Sui Ota
Posts: 75
Joined: 05.10.2005
With us: 19 years 1 month
Location: Saitama, Japan

Post #10by Sui Ota » 06.12.2006, 05:25

I found a crash bug:

Star Browser:
When I select a star (without clicking any of Center, Go To, Refresh), then I click X button upper right of the browser, Celestia chashes.
-Suι

Toti
Developer
Posts: 338
Joined: 10.02.2004
With us: 20 years 9 months

Post #11by Toti » 06.12.2006, 11:47

Cham wrote:My compiler said it's in CelestiaUniverse.mm :

Line 44 : return [[[CelestiaSelection alloc] initWithSelection:[self universe]->pick([origin universalCoord],[direction vec3f],[when floatValue],[faintestMag floatValue])] autorelease];

Error : no matching function for call to 'universe::pick(UniversalCoord, Vec3f, float, float)'

Really, I don't know what this is all about ...

I made a few changes in the picking code, which have not been incorporated into the Mac version yet.

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

Post #12by t00fri » 06.12.2006, 12:10

Toti wrote:
Cham wrote:My compiler said it's in CelestiaUniverse.mm :

Line 44 : return [[[CelestiaSelection alloc] initWithSelection:[self universe]->pick([origin universalCoord],[direction vec3f],[when floatValue],[faintestMag floatValue])] autorelease];

Error : no matching function for call to 'universe::pick(UniversalCoord, Vec3f, float, float)'

Really, I don't know what this is all about ...
I made a few changes in the picking code, which have not been incorporated into the Mac version yet.



Toti's picking code changes compile without problems on my PC.

Bye Fridger
Image

Avatar
dirkpitt
Developer
Posts: 674
Joined: 24.10.2004
With us: 20 years 1 month

Post #13by dirkpitt » 07.12.2006, 02:49

Toti wrote:
Cham wrote:My compiler said it's in CelestiaUniverse.mm :

Line 44 : return [[[CelestiaSelection alloc] initWithSelection:[self universe]->pick([origin universalCoord],[direction vec3f],[when floatValue],[faintestMag floatValue])] autorelease];

Error : no matching function for call to 'universe::pick(UniversalCoord, Vec3f, float, float)'

Really, I don't know what this is all about ...
I made a few changes in the picking code, which have not been incorporated into the Mac version yet.


Fixed.

Avatar
Cham M
Posts: 4324
Joined: 14.01.2004
Age: 60
With us: 20 years 10 months
Location: Montreal

Post #14by Cham » 07.12.2006, 03:25

Thanks, Dirkpitt

I recompiled Celestia 5 min ago, and it works. Fridger's latest correction to the galaxies appears to be fine.
"Well! I've often seen a cat without a grin", thought Alice; "but a grin without a cat! It's the most curious thing I ever saw in all my life!"

symaski62
Posts: 610
Joined: 01.05.2004
Age: 41
With us: 20 years 6 months
Location: france, divion

Post #15by symaski62 » 07.12.2006, 03:25

windows 10 directX 12 version
celestia 1.7.0 64 bits
with a general handicap of 80% and it makes much d' efforts for the community and s' expimer, thank you d' to be understanding.

AlexChan
Posts: 33
Joined: 29.09.2004
With us: 20 years 2 months

Post #16by AlexChan » 07.12.2006, 15:14

Planets & Moons are look like a star when zoom out from they....
I think they are too bright... I still can see light points inside atmosphere at daytime...

the texture of sun also too dark..
in the old version, the harsh light always hurt my eyes XD

Avatar
PlutonianEmpire M
Posts: 1374
Joined: 09.09.2004
Age: 40
With us: 20 years 2 months
Location: MinneSNOWta
Contact:

Post #17by PlutonianEmpire » 10.12.2006, 13:11

Our sky under open GL 2.0 is too dark. can this be changed in the SSC to brighten the sky, or does it require code changes?

EDIT: ignore the brightened area. that's just the footprint of the "save screen cap to" dialog box.
Terraformed Pluto: Now with New Horizons maps! :D

Sui Ota
Posts: 75
Joined: 05.10.2005
With us: 19 years 1 month
Location: Saitama, Japan

Post #18by Sui Ota » 10.12.2006, 14:46

There are some bugs with localization. I tested after adding res_xx.dll and .mo files.

In "Target name: " mode:
1. Typing "Sol", and "/"
2. Selecting planets with tab key
3. Then pressing enter, and in case selected object name is translated, the object is not selected.

And similar problem is in Celestia Browser, under Mac OS X (current CVS).
I can't select satellites nor locations of planets or satellites whose name is localized. And no buttons are invalid.

These problems occur with recent CVS....
-Suι

Avatar
dirkpitt
Developer
Posts: 674
Joined: 24.10.2004
With us: 20 years 1 month

Post #19by dirkpitt » 10.12.2006, 15:42

Sui Ota wrote:And similar problem is in Celestia Browser, under Mac OS X (current CVS).
I can't select satellites nor locations of planets or satellites whose name is localized.


This patch seems to fix the problem. Apparently the objectIndex of PlanetarySystem objects is not being initialized with localized names.
This ought to be affecting other platforms (Windows, Linux) too...? Any confirmation?

Code: Select all

Index: body.cpp
===================================================================
RCS file: /cvsroot/celestia/celestia/src/celengine/body.cpp,v
retrieving revision 1.49
diff -d -p --unified=3 -w -r1.49 body.cpp
--- body.cpp   7 Dec 2006 05:43:15 -0000   1.49
+++ body.cpp   10 Dec 2006 15:38:38 -0000
@@ -654,7 +654,7 @@ PlanetarySystem::PlanetarySystem(Star* _
 void PlanetarySystem::addBody(Body* body)
 {
     satellites.insert(satellites.end(), body);
-    objectIndex.insert(make_pair(body->getName(), body));
+    objectIndex.insert(make_pair(body->getName(true), body));
 }
 
 
@@ -707,7 +707,7 @@ void PlanetarySystem::replaceBody(Body*
     }
 
     // Add the replacement to the object index
-    objectIndex.insert(make_pair(newBody->getName(), newBody));
+    objectIndex.insert(make_pair(newBody->getName(true), newBody));
 }
 
 


Edit: please ignore this patch - it appears to break things.
Last edited by dirkpitt on 11.12.2006, 15:05, edited 1 time in total.

Vincent
Developer
Posts: 1356
Joined: 07.01.2005
With us: 19 years 10 months
Location: Nancy, France

Post #20by Vincent » 10.12.2006, 16:08

dirkpitt wrote:This patch seems to fix the problem. Apparently the objectIndex of PlanetarySystem objects is not being initialized with localized names.
This ought to be affecting other platforms (Windows, Linux) too...? Any confirmation?

In Windows, children objects and their parent can be selected from their localized name in the Text Input Console. Isn't it the expected behaviour ? As for locations, their name appears in the console as soon as you enable their rendering.

Dirkpitt, after applying your patch, children objects can be selected neither from their localized nor from their english name. Moreover, object are not found anymore in scripts.
@+
Vincent

Celestia Qt4 SVN / Celestia 1.6.1 + Lua Edu Tools v1.2
GeForce 8600 GT 1024MB / AMD Athlon 64 Dual Core / 4Go DDR2 / XP SP3


Return to “Celestia Users”