Hleb Valoshka
c588f80824
OpenGL ES 2.0 initial support
2020-06-15 19:27:46 +03:00
Hleb Valoshka
541e9d78b3
Use custom RenderContext to create shadow map
2020-05-01 23:31:25 +03:00
Hleb Valoshka
e5d54df6bb
Initial implementation of self shadowing
...
Known bugs and limitations:
* Only the 1st light source casts shadows.
* Thin objects have incorrect shadows, see ISS.
2020-04-03 11:31:09 +03:00
Hleb Valoshka
f8d3815a70
Move duplicated setVertexArrays to RenderContext
2019-08-16 09:49:01 +03:00
Hleb Valoshka
dbd7090117
Make ShaderManager private property of Renderer
2018-12-11 20:32:13 +03:00
Hleb Valoshka
eab70c96cb
Fix more coverity issues
...
Mostly uninitialized variables plus one memory leak
2018-10-30 23:52:19 +03:00
Hleb Valoshka
85f6dad804
Remove code used in old rendering paths
2018-10-30 23:52:19 +03:00
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
Chris Laurel
52b1dccdff
Fixed eclipse shadows on non-spherical planets (especially noticeable on
...
Saturn.) Fix affects the GLSL/OpenGL 2.0 render path only.
2010-04-23 22:14:44 +00:00
Chris Laurel
31a31d4e2f
- Moved cmod code into a separate module celmodel.
...
- Updated cmodtools to use celmodel.
- Improved 3ds file loader to support multiple materials per mesh.
2010-02-05 20:05:18 +00:00
Chris Laurel
afd7c78574
More Eigenization changes.
2009-08-06 00:41:24 +00:00
Chris Laurel
c26ea667f2
Eigenized old sphere mesh code (used only for handling .cms mesh files now.)
2009-07-23 23:19:26 +00:00
Chris Laurel
7911c6ddbe
- Implemented consistent behavior for models with no texture coordinates. Fixes 'flickering' of colors on no-texcoord models used in stc files (and in ssc files with a texture override.)
2009-03-09 19:01:53 +00:00
Chris Laurel
99ee3a4102
Renderer changes:
...
- Added camera orientation property to RenderContext, to be used with software
path for point sprites.
- Enabled location label color overrides
2008-07-25 23:31:00 +00:00
Chris Laurel
36d0299d78
Added limited support for per-vertex colors in meshes.
2007-04-23 17:39:38 +00:00
Chris Laurel
ff179e468b
Added blend type to material definition. Options for blend type are normal and additive.
2007-04-22 04:52:15 +00:00
Chris Laurel
962faa784e
Added unlit render context for GLSL render path: elminates need to revert to fixed function paths when rendering emissive meshes.
2007-04-20 17:52:10 +00:00
Chris Laurel
f833a58ef2
Fixed bug with emissive models.
2007-04-03 18:00:21 +00:00
Chris Laurel
6454b452d4
Mesh rendering bug fixes and improvements:
...
- Defined a sensible lighting model to use when normals are omitted from a model, which should prevent crashes in the Mac version
- Added support for point sprites in cmod meshes
2007-04-02 16:55:32 +00:00
Chris Laurel
bf271f2129
Fixed crash that occurred when rendering meshes with atmospheres in a non-OGL2 render path.
2007-03-05 10:34:49 +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
c23d15a4e4
Made LunarLambert term apply to models instead of just ellipsoid bodies.
2006-08-09 06:12:41 +00:00
Chris Laurel
c5d25dcb32
Added destructor for GLSL_RenderContext with some code to clean up some render state (vertex array enables.) Fixes a crash that occurred in the OpenGL 2.0 render path when viewing a model with tangents.
2006-08-09 05:13:38 +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
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
ee3bea442d
Moved light and shadow state definitions from render.h to rendcontext.h. (part of improved model rendering changes)
2005-02-11 06:11:37 +00:00
Chris Laurel
8a692bc773
Mesh and rendering cleanup:
...
- Add semantic-indexed attribute list to VertexDescription class
- Abstracted RenderContext so that it's an interface with implementations for various render paths.
- Moved all GL code from Mesh class into RenderContext
This work will enable normal and specular maps for meshes (soon)
2004-07-07 09:53:09 +00:00
Chris Laurel
6f2cde6770
- Render antiliased lines for graticules (and any other deep sky objects)
...
- Allow an ssc file definition to override the texture in a model
- When deciding if blending should be turned on when rendering a model, consider whether the texture has an alpha channel
2004-02-22 01:44:38 +00:00
Chris Laurel
af25acd173
Implemented textures, specular color, emissive color, and opacity in mesh materials.
...
Added support for Celestia model files (ASCII only right now)
2004-02-17 09:56:08 +00:00