Hleb Valoshka
b082d5f47f
Automatically convert to c++11 using clan-tidy
...
+ manual cleanups
2018-09-22 23:42:02 +03:00
Hleb Valoshka
882e4ecf28
fix whitespaces and indents
...
trailing spaces are removed
tabs are replaced with 4 spaces
# Conflicts:
# src/celengine/cmdparser.cpp
# src/celengine/command.cpp
# src/celestia/celestiacore.cpp
# src/celestia/celestiacore.h
# src/celestia/qt/qtappwin.cpp
# src/celestia/qt/qtglwidget.cpp
# src/celestia/win32/winmain.cpp
2018-09-22 23:41:57 +03:00
Dmitry Brant
a25d26720c
Adapt code to Eigen 3.3
...
No functional changes, just adapting to API changes in Eigen.
2018-09-22 17:08:07 +03:00
Alexell
c102af525c
Added configuration options
...
Added ReverseMouseWheel option (existing in source) in celestia.cfg
file, added new orbit rendering parameters.
2018-09-22 17:08:06 +03:00
Andrew Tribick
069a61b3af
Expanded preferences dialog box for Qt; added ability to turn off tinted illumination.
2012-05-23 21:28:37 +00:00
Vincent Giangiulio
38b6e23c6f
- Fixed i18n issue about truncated labels with East Asian locales:
2010-03-07 20:19:17 +00:00
Chris Laurel
dcf9232c08
Refactored some shadowing/eclipse code in the renderer
...
- Enabled ring shadows on moons and other objects that aren't themselves surrounded by
ring systems.
- Use texture LOD bias to add blurriness to ring shadows (a result of the finite
size of the light source.)
- Calculate ring phase function per-pixel instead of per-vertex
- Implemented more realistic rendering of unlit side of ring systems
- Used new Eigen's NewStdVector for vectors containing fixed-sized vectorizable
objects.
2009-10-27 22:02:01 +00:00
Chris Laurel
c835491ddc
Rewrote orbit drawing code to fix multiple shortcomings. New orbit code uses adaptively subdivided cubic curves to draw orbits more accurately and without numerical precision artifacts. The orbit rewrite uses Eigen throughout (instead of the Celestia vector classes.)
2009-08-07 03:15:26 +00:00
Chris Laurel
89d0ef130a
Eigenized all orbit and trajectory calculations.
2009-07-23 01:40:17 +00:00
Chris Laurel
479ef22e15
Eigenized reference mark, label, and marker code.
2009-07-21 04:04:26 +00:00
Chris Laurel
5a31a08df9
Eigenized galaxy rendering and more of the core renderer.
2009-07-21 03:14:29 +00:00
Chris Laurel
5de792f64a
Eigenized lighting and shadow calculations in renderer.
2009-07-18 05:50:56 +00:00
Chris Laurel
40fade9aac
Eigenized and cleaned up more of the renderer code.
2009-07-17 06:15:25 +00:00
Chris Laurel
b42accebaf
More Eigenization of render.cpp. Changed a temporary variable in staroctree.cpp from double to float (back to the way it was in 1.6.0)
2009-07-16 20:18:48 +00:00
Chris Laurel
37a46a4eff
Eigenized portions of the renderer that draw stars and DSOs.
2009-07-16 05:32:55 +00:00
Chris Laurel
7272945657
First round of Eigen-izing the core Celestia code.
2009-07-15 03:06:30 +00:00
Chris Laurel
a79d7ac479
Fixed placement of glare sprite when rendering stars in legacy render paths. Positioning is now consistent with OGL 2.0 path and avoids artifacts caused by glare geometry intersecting the star geometry.
2009-03-20 18:02:14 +00:00
Chris Laurel
3d66a67f7a
Bug fixes:
...
2557612: sun, planets and orbits disappear. This was caused by bad handling of the selection marker when the camera positioned inside a large DSO (e.g. the Milky Way)
2392876: Atmosphere draw for unilluminated planets
2009-02-18 01:39:43 +00:00
Chris Laurel
9d55c56382
Committed Julien's patch to fix the animation rate of the selection cursor
...
when recording movies.
2008-10-10 22:43:02 +00:00
Chris Laurel
301a74e16a
Improved selection cursor:
...
- Animation effect to make it easier to notice
- Pointer shown at view border when selection is off screen
- Cursor has different appearance when selection object is occluded
- Cursor doesn't interfere with markers
2008-09-25 18:31:48 +00:00
Chris Laurel
58a634722c
Implemented NormalizeMesh property for solar system bodies. This property makes it easier to build assemblies from several bodies with mesh geometry.
2008-09-22 21:03:43 +00:00
Fridger Schrempp
c46e6c41fd
Implement globular clusters
2008-09-20 14:17:39 +00:00
Chris Laurel
41efec9e08
- Added abstract class Geometry; this will permit geometry other than
...
static models to be used for objects.
- Replace body, star, and DSO instances of Model with Geometry
- Renamed ModelManager to GeometryManager
- Fixed a GeometryManager bug that was triggered by multiple uses of a mesh
file with different MeshCenters.
2008-07-23 21:54:53 +00:00
Chris Laurel
c00a2a0f47
Added rendering of ecliptic line and support for turning it on and off via
...
script.
2008-06-07 01:35:24 +00:00
Chris Laurel
ace6dfea21
Fixed a bug that caused objects to be incorrectly culled at small fields of view. Changed type of Renderer::cosViewConeAngle from float to double; using single precision floats was causing the value of cosViewConeAngle to be rounded to 1.0, making the view cone effectively just a line.
2008-05-30 06:37:37 +00:00
Chris Laurel
d838a9e4d5
Enabled new sky grid code.
2008-05-29 21:52:27 +00:00
Chris Laurel
f9975120d9
Location fixes:
...
- Added symbols for locations.
- Fixed visibility calculation for locations on ellipsoidal, non-spherical
bodies.
- Allow location labels to be occluded by foreground objects.
- Added new location types: eruptive center, insula (islands), and
tholus (domical hills and mountains)
2008-05-22 20:30:45 +00:00
Chris Laurel
d97a73a05b
Constified Renderer::getResolution and Renderer::getFaintestAM45deg to fix
...
compiler errors.
2008-05-01 22:25:20 +00:00
Chris Laurel
1604d97697
Fixed depth sorting of long/lat labels for planetographic grids.
2008-04-30 18:31:30 +00:00
Vincent Giangiulio
f2f9931c62
Fixed bug with dwarf planet and minor moon labels.
2008-04-16 09:07:05 +00:00
Chris Laurel
cc1fa6a80c
Added minormoon and dwarfplanet classes.
2008-04-15 18:31:53 +00:00
Chris Laurel
889046a12d
Removed some redundant calculation in renderer to speed up creation of render lists.
2008-04-05 23:22:39 +00:00
Chris Laurel
d216a98755
Implemented secondary illumination (e.g. planetshine.) Rewrote much of the code that contructs render lists to make it possible to do compute secondary illumination efficiently. This patch fixes two other bugs. The orbit of barycenters is shown when they have children that are planets, moons, or asteroids. And, an incorrect frame release was fixed in solarsys.cpp.
2008-04-03 17:46:45 +00:00
Da Woon Jung
e59f4b4b54
HDR bloom, adaptive exposure, calibrated nightlights - disabled by default, enable with USE_HDR and HDR_COMPRESS. 4 new vertex programs added.
2008-03-25 00:23:16 +00:00
Chris Laurel
9303aa6028
Fixed broken rendering of background markers. Markers behind the viewer were
...
being rendered. Added code to cull markers outside the field of view, fixing
the bug and improving performance when lots of markers are enabled.
2008-03-21 23:38:05 +00:00
Chris Laurel
e4a28ef68a
Implemented more flexible system for reference marks. Reference mark objects lists are maintained instead of simple bitfields, allowing customization of reference mark parameters (e.g. arrow size, planet grid style, etc.) There are three new reference mark types: planetographic grid, spin vector, and body-to-body vector. The Qt4 and Win32 front ends have been updated; Gtk, KDE, and Mac interfaces need to be updated to use the new code for toggling reference marks.
...
This change also includes a fix for two problems with Replace:
- objects were being reordered so that selection with the 1-9 keys no longer worked as expected.
- children of Replaced bodies were being deleted
2008-03-20 21:36:17 +00:00
Chris Laurel
c7dae56a84
Eliminated the 16k light year distance limit for stars. The limit is increased
...
to 10 million light years, large enough to contain local group of galaxies. It
should be possible to increase this further by simply changing the setting
of STAR_OCTREE_ROOT_SIZE in stardb.cpp, but the performance implications need
to be investigated.
2008-03-15 00:19:27 +00:00
Chris Laurel
7f0e7b12d0
Fixed bug 1828935 (low albedo prevents drawing of child objects) and improved performance of visibility culling code. The new code uses the frame hierarchy introduced with Timelines to cull subtrees based on apparent brightness and position with respect to the view frustum.
2008-02-28 20:04:52 +00:00
Chris Laurel
eba1b9940c
- Implemented framework for Orbit and RotationModel subclasses to implement their own velocity and angular velocity methods to use instead of numerical differentation. Actual implementation of velocity methods will wait until further discussion on the developers list.
...
- Implemented Timelines for solar system bodies. A timeline allows a body to have different reference frames, orbits, and rotation models over time.
2008-02-21 02:25:48 +00:00
Chris Laurel
ed9b33dab0
Implemented depth sorting for markers, with option to specify non-occludable
...
markers.
2008-02-13 21:49:53 +00:00
Chris Laurel
39041826d8
Fixed problems building with VC++ 9.0 (Visual Studio 2008) Made comparison operators for nested classes member functions so that they work as predicates for STL algorithms. The VC9.0 compiler seems to have stricter argument dependent lookup.
2008-02-04 09:37:55 +00:00
Chris Laurel
f22a02b423
Added missing virtual destructor for RendererWatcher
2008-01-24 08:39:30 +00:00
Chris Laurel
4439a6e333
- Adjusted constellation label and boundary fade distance
...
- Fixed incorrect occluding of labels by irregular objects
- Implemented renderer watchers (currently not used, so this change is a noop)
2008-01-19 22:21:56 +00:00
Chris Laurel
2832a3e275
Removed limit on maximum number of nearby solar systems when rendering. Fixes
...
crashing bug reported by Martin.
2007-12-18 01:54:17 +00:00
Chris Laurel
68eb351b56
Fixed depth sorting of labels for solar system objects. The labels are now
...
correctly ordered with respect to other objects, and there's some special
handling to prevent labels of low-orbiting objects from being partially
occluded.
2007-12-06 17:15:53 +00:00
Chris Laurel
edc7576e97
Added code to track changes to renderer settings.
2007-11-15 20:08:24 +00:00
Chris Laurel
baad1b6f26
Fixes for orbit rendering:
...
- Transform and z clip orbit paths on CPU at double precision to avoid jittering, holes,
and other problems caued by single precision arithmetic.
- Use cubic interpolation to smooth sections of orbits that are close to the camera
- Added bounding volume culling for orbits to avoid rendering sections outside
the view frustum.
2007-11-11 01:58:05 +00:00
Chris Laurel
72e59b8afb
Brightened grid and constellation border colors.
2007-11-08 20:50:37 +00:00
Chris Laurel
73e3cb81f6
Renderer changes:
...
- Rewrote orbit cache for efficiency, to avoid thrashing when multiple
views are active, and to eliminate unnecessary recalculation of orbits
- Added method to invalid orbit cache
- Cleaned up render list processing by replacing convoluted checks with
a single switch on the new member renderableType
- Always use two digits for minutes in RA labels on equatorial grid
2007-10-25 07:18:53 +00:00
Christophe Teyssier
c6b9d10888
Fixed compilation with gcc
2007-10-13 11:08:13 +00:00