Commit Graph

239 Commits (ec0cdec0dd136b958a51cee811fa9dc01920b5b7)

Author SHA1 Message Date
Chris Laurel e00b4a58e1 Fixed problem with bodies rendered as points always appearing in front of larger objects in the old star render path. 2006-09-26 17:30:49 +00:00
Chris Laurel 436cb8e2d6 Fixed another depth sorting issue and eliminated some unused code. 2006-09-22 05:51:51 +00:00
Chris Laurel ffe26c5041 - Changed solar system object rendering so that child objects of barycenters are always rendered.
- Eliminated unused OrbitRenderer class
- Fixed comet tail clipping
2006-09-20 07:40:13 +00:00
Toti 69c6b7834d Commented out unused parameters 2006-09-16 23:02:55 +00:00
Toti f41462740e Fixed warnings about possible uninitialized variable usage 2006-09-15 18:42:37 +00:00
Toti 152627ae29 Disabled blocks of code that caused 'defined but not used' compiler warnings 2006-09-12 21:59:05 +00:00
Toti 3eb580abe9 Commented out unused variables that were causing compiler warnings 2006-09-12 12:56:47 +00:00
Chris Laurel 0e03ec8999 Added polygon offset to cloud layers so they aren't as susceptible to z fighting when depth buffer precision is limited. 2006-09-12 05:27:29 +00:00
Chris Laurel 79232ff174 Fixed depth sorting of comet tails and stars. 2006-09-12 04:38:12 +00:00
Fridger Schrempp e512193c0c galaxy labels with distance dependent transparency 2006-09-11 21:47:01 +00:00
Chris Laurel 76081d6603 Implemented two pass approach for rendering: opaque objects are rendered first, transparent ones second. Subpixel sized objects are also rendered with transparent objects and after orbit paths. This fixes the problem where orbit paths were occluding point sized objects. 2006-09-11 00:37:20 +00:00
Chris Laurel 23b392364d Fixed some broken logic that displayed the orbit of the select object even when orbits paths were turned off. Enabled highlighting for the orbit of a selected star. 2006-09-10 03:54:43 +00:00
Chris Laurel 8c5a08f26a Depth sorting and orbit fixes:
- Show and highlight orbit of selected object
- Show star orbits
- Remove depth sorting debug spew
- Correctly orient orbit paths when the orbit is referred to the ecliptic rather than the parent body's equator
2006-09-08 05:59:38 +00:00
Chris Laurel aa9c6a3c64 - Replaced the old depth sorting algorithm with a new, cleaner, faster, and more robust scheme.
- Overhauled orbit path rendering so that orbit paths get correctly depth sorted
2006-09-07 08:08:32 +00:00
Chris Laurel 08b80c2c89 Worked around a precision problem in the new atmosphere code that appeared when the camera was positioned far from an object relative to the size of that object. 2006-09-02 18:56:41 +00:00
Chris Laurel 097640abc6 Halved the minimum relative occluder radius used to decide whether an object should be considered for eclipse shadows. 2006-09-01 11:14:37 +00:00
Chris Laurel 1fc8c42ecb - Implemented normal maps for cloud layers. The new field CloudNormalMap specifies the texture file to use.
- Don't render ring shadows on cloud layers when ring shadows are disabled
2006-09-01 10:14:08 +00:00
Chris Laurel 1cc0b38fde Enable new atmospheres to work for irregular objects.
Moved parameter setup for atmospheres, lighting, and shadows into the CelestiaGLProgram class.
2006-08-29 06:13:41 +00:00
Chris Laurel 243ba06154 - Split the GLSL code out of render.cpp and placed it in its own file.
- Adjusted the atmosphere extinction threshold upward; slightly improves the appearance of atmospheres without introducing tessellation artifacts
- Fixed some clipping problems with the new atmosphere code (though there are still problems when the camera is very close to a planet's surface.)
2006-08-26 23:58:48 +00:00
Chris Laurel c23d15a4e4 Made LunarLambert term apply to models instead of just ellipsoid bodies. 2006-08-09 06:12:41 +00:00
Chris Laurel 856a05d6f6 Added lunar-Lambert photometric model for much more realistic rendering of the moon and similar bodies. 2006-08-08 17:19:57 +00:00
Chris Laurel 370655d004 Enabled opacity attribute in the OpenGL 2.0 render path. 2006-08-07 17:23:09 +00:00
Chris Laurel 27bfdea411 Added new photometric functions and atmospheric scattering model. 2006-08-07 06:40:45 +00:00
Chris Laurel 9389ea3b78 - Fixed bug in the eclipse shadow test; objects close to the surface of the lit side of a planet were incorrectly rendered with shadows
- Added a render flag for cloud shadows
- Made the OpenGL 2.0 path respect the ring shadow render flag setting
2006-07-26 17:21:23 +00:00
Chris Laurel 29fe230880 Made mesh objects with the emissive flag set render correctly in the OpenGL 2.0 path. 2006-07-17 03:58:19 +00:00
Chris Laurel d9c6dd5544 Turn off cloud shadows when cloud maps are disabled. 2006-07-13 16:23:06 +00:00
Chris Laurel 063ec093d3 - Implemented cloud textures
- Changed eclipse shadow shaders to use just a single interpolant for all shadows rather than one interpolant per shadow. This will prevent Celestia from generating uncompilable shaders when there are many eclipse shadows
2006-07-12 17:39:24 +00:00
Chris Laurel f3326dd39f - Added per-pixel specular lighting for GLSL path; can work either with or without bump mapping
- Turn on separate specular color when rendering models (not required for GLSL path)
- Fixed completely broken calculation of object space eye position for GLSL shaders
2006-07-09 02:03:29 +00:00
Chris Laurel dc7ce8986a Improved rendering of meshes in GLSL path:
- Switched to local viewer model for better quality specular highlights
- Added support for specular and normal maps for meshes
- Implemented shadows for meshes (cast by ellipsoids only, not from other meshes yet.)
2006-07-04 05:03:27 +00:00
Chris Laurel b7cc62512b Fix some depth sorting problems. Coaslescing depth buckets was failing when a coaslesced object was clipped to the near plane. Implemented a partial fix for the problem allows the coalesced depth buckets to have a larger far/near ratio. 2006-06-27 07:51:20 +00:00
Da Woon Jung f3041e349f Localize planet labels 2006-05-20 00:33:32 +00:00
Chris Laurel 2afe62f5a5 Made overlay textures work in the GLSL render path. 2006-05-17 10:21:58 +00:00
Chris Laurel 38ea55eded Fixed a crash that occurred when stars-as-points mode was set while a legacy render path was enabled. 2006-04-20 16:32:05 +00:00
Chris Laurel 1184a99a59 Disable new star rendering code when a pre-vertex shader render path is enabled. Fixes a crash. 2006-03-23 07:31:25 +00:00
Chris Laurel 612419cd2b Fixed point stars in new star rendering path--now they're rendered as points instead of colored squares. 2006-03-15 18:46:34 +00:00
Chris Laurel 4fa5c3475f Enabled new star rendering path as an option--uses point sprite extension, new glare textures (gaussian), and dynamic star labeling. 2006-03-08 18:29:10 +00:00
Fridger Schrempp 03c872017a fixed local brightness flash for Milky Way 2006-01-03 17:22:07 +00:00
Fridger Schrempp 0929f2c684 fix for displaying the furthest galaxies in deepsky.dsc, with distance > 1e9 ly 2005-12-19 23:04:28 +00:00
Fridger Schrempp 0493b69176 add comet tail vanishing code, distance sorted label display 2005-12-11 15:34:35 +00:00
Chris Laurel ffca320843 Use OpenGL point sprite extension for rendering stars (work in progress) 2005-11-25 22:57:20 +00:00
Chris Laurel 974213f905 Integrated changes from Fridger and Toti's Celestia FT 1.2 2005-11-18 09:00:39 +00:00
Chris Laurel f5f14ee5ab Render orbits paths in multiple passes so that they are drawn correctly when they appear in front of a planet or other body (another Joseph Wang fix) 2005-07-25 16:38:09 +00:00
Christophe Teyssier ae7095edd7 Added i18nName to the Asterism class and a renderer label flag to display
localized names of constellations.
Removed some redundant calls to gettext when rendering labels
Added KDE menu entry and preference to toggle I18nConstellationLabels
2005-07-21 22:35:18 +00:00
Chris Laurel 6f037cd9b4 Increased far plane distance by factor of 100 to avoid clipping distant galaxies. 2005-07-21 16:31:43 +00:00
Christophe Teyssier 2318e423a3 Adding support for i18n with gettext. 2005-07-19 21:31:04 +00:00
Chris Laurel 3fb7a9c689 - Add context as a parameter when rendering deep sky objects (required in order to use shaders)
- Add absolute magnitude for deep sky objects
2005-07-12 17:37:00 +00:00
Chris Laurel 5857865126 Added support for emissive textures for mesh objects (and foundation for further improvements for mesh rendering.) 2005-03-09 16:38:45 +00:00
Chris Laurel 57ff878447 Added separate render and label flags for the various types of deep sky objects. This will break some scripts and cel:// URLs that relied on the 'show galaxies' flag to also show nebulae, but this is the inescapable cost of moving to a more flexible set of render settings. 2005-02-11 06:09:37 +00:00
Chris Laurel 3c3425ef60 - Fixed bug in OpenGL 2.0 that was causing planets to appear completely dark when there was an eclipse and more than four light sources
- Use enumerants for the ARB version of the texture_env_dot3 extensions; this fixes bugs with normal maps on some Mac OS X drivers which no longer support the EXT version of the extension.
2004-11-12 06:50:04 +00:00
Chris Laurel 384e3ca8b7 Fixed lighting bug that occurred when multiple solar systems were rendered. Solar system centric light source positions from the wrong solar system were being used, resulting in completely incorrect illumination. 2004-11-11 09:41:51 +00:00