Hleb Valoshka
bd7f9ebc9b
Use libepoxy instead of GLEW
...
Unlike GLEW libepoxy supports OpenGL ES and better handles cases with
functions provided by different extensions, e.g. the same functions
provided by vendor/EXT/ARB/core.
2020-03-26 11:24:56 +03:00
Hleb Valoshka
32eaa68d0a
Remove fixed pipeline calls
2019-12-05 11:37:33 +03:00
Hleb Valoshka
a93befe941
Remove uneeded #include "vecgl.h"
2019-07-09 23:38:41 +03:00
Hleb Valoshka
f3a73dae71
Move math code into celmath namespace
2019-05-20 10:48:04 +03:00
Hleb Valoshka
b95bdee04c
Pass tangents vector to shaders ( Closes : #240 )
2019-03-22 16:31:12 +03:00
Hleb Valoshka
81aa6f43bc
Remove support for old vector math
2019-03-16 18:21:50 +03:00
Hleb Valoshka
ea3988b6f3
Remove unused GLContext
2018-12-11 20:32:13 +03:00
Hleb Valoshka
6653929310
Remove ARB programs support completely
2018-10-23 00:03:39 +03:00
Hleb Valoshka
b9d532a902
Disable ancient ARB vertex programs
2018-10-23 00:03:39 +03:00
Hleb Valoshka
73a869c137
Use core OpenGL2 functions instead of their ARB versions
2018-10-07 20:45:01 +03:00
Hleb Valoshka
85829063e0
Finish eigenization
2018-10-07 13:38:24 +03:00
Hleb Valoshka
4bdfe271e5
Remove C++14-isms
...
Some day this commit will be reverted.
2018-09-22 23:42:03 +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
5a5b06481f
Fix the most serious fixes found by coverity
...
… resource leaks, null pointers dereference
2018-09-22 23:41:58 +03:00
Chris Laurel
f5d97be5c9
More GLEW-related cleanup.
...
- Added missing GLEW_STATIC define to VC++ project file
- Fixed Qt4 build to use GLEW
- Stripped out more references to old glext functions
- Fixed miscellaneous compiler warnings.
2009-08-15 00:48:42 +00:00
Chris Laurel
9d373fd041
Switched from using custom GL extension handling code to GLEW library.
2009-08-14 22:39:54 +00:00
Chris Laurel
1843572c97
Enabled vertex buffer objects for planet rendering.
2009-08-06 02:54:03 +00:00
Chris Laurel
7272945657
First round of Eigen-izing the core Celestia code.
2009-07-15 03:06:30 +00:00
Chris Laurel
a2565ed16b
Removed bad assertion in lodspheremesh.cpp that was causing crashes with virtual texture levels 11 and greater.
2009-02-10 02:01:22 +00:00
Chris Laurel
697b5e1c7a
Add vertex buffer discard hint in sphere renderer. Should result in higher performance when this code path is enabled.
2007-05-14 18:02:57 +00:00
Toti
3eb580abe9
Commented out unused variables that were causing compiler warnings
2006-09-12 12:56:47 +00:00
Chris Laurel
acfc71ddc4
Enable virtual texture levels 11 and 12.
2006-02-14 18:47:13 +00:00
Chris Laurel
ebeddb9f65
Disable vertex array after rendering; leaving this on appears to have been the cause of many difficult to reproduce crashes.
2004-03-15 08:53:13 +00:00
Chris Laurel
50227bf26d
Got rid of extra LOD bias that was only supposed to be used for perf testing. Oops.
2004-02-24 12:24:47 +00:00
Chris Laurel
e2702dedae
Use an index buffer when GL_vertex_buffer_object extension is present.
2004-02-24 12:13:48 +00:00
Chris Laurel
d0b28cf317
Enabled use of ARB_vertex_buffer_object extension for rendering planet spheres.
2004-02-24 11:43:28 +00:00
Chris Laurel
716c10ece4
Attempted to improve performance by using the ARB_vertex_program_object
...
extension for planet meshes. Disabled for now, as it doesn't seem to work yet. As part of this change, the planet vertex data is now interleaved rather than being spread across several separate arrays. This should make better use of the cache.
2004-02-24 10:16:48 +00:00
Chris Laurel
df98cc39cd
Improved mesh support:
...
- Use more efficient and flexible internal representation
- Added code to convert 3DS meshes to new structure
- Support new Celestia mesh format (ASCII-only right now)
2004-02-17 09:58:52 +00:00
Chris Laurel
fc82dcef5b
Eliminated flashing when loading normal map virtual texture tiles.
2003-11-30 22:05:33 +00:00
Chris Laurel
5669f72ed3
Use the right step size when calculating the index array sizes. Oops.
2003-09-20 23:02:28 +00:00
Chris Laurel
86cd9c7547
Permit virtual texture levels up through and including 10.
2003-09-20 22:07:30 +00:00
Chris Laurel
38406c187a
Fixed crash that occurred when multiple virtual textures with different tile sizes were used.
2003-09-16 17:40:51 +00:00
Chris Laurel
66d7c1c160
Actually compute the texture LOD.
2003-07-31 10:19:30 +00:00
Chris Laurel
b9da43799b
Made virtual textures actually work, modulo LOD calculation and eviction.Delegated the task of computing sphere LODs to LODSphereMesh.
2003-07-30 17:07:46 +00:00
Chris Laurel
62792a9db0
Complete rewrite of texture handling code for cleanup and in order to support virtual textures. What was the texture class is now split between Texture and Image. There are several subclasses of Texture, including ImageTexture, TiledTexture, CubeMap, and VirtualTexture.
2003-07-30 05:34:04 +00:00
Chris Laurel
d29afcd164
Removed leftover debugging output.
2003-07-24 17:57:05 +00:00
Chris Laurel
c0c96a44f2
Vastly improved culling for sphere patches by using a hierarchy of bounding spheres.
2003-07-23 18:07:20 +00:00
Chris Laurel
ae4d0382dc
Fixed bump/normal maps.
2003-04-25 09:06:02 +00:00
Chris Laurel
866caeaf41
Corrected sign error so that inverting red channel of normal maps is no longer required.
2003-04-08 08:29:07 +00:00
Chris Laurel
c8f5f22446
Fix support for ARB_vertex_program render path--requires passing context around, and abstraction of vertex attribute array calls.
2003-03-28 18:39:23 +00:00
Chris Laurel
78117e1aa1
Corrected tangents used for bump mapping.
2003-03-05 09:31:44 +00:00
Chris Laurel
e14dbf8677
After rendering, disable texture units other than 0.
2003-02-21 07:59:18 +00:00
Chris Laurel
6a744941f8
Removed assumption that multitexture is supported; fixes crash with MS in the box OpenGL driver.
2003-02-14 18:10:10 +00:00
Chris Laurel
873bfd115b
Moved all OpenGL extension functions into the namespace glx. This protects against possible linker confusion if a library happens to export the extension functions. Also added ARB_vertex_program and NV_fragment_program extensions to glext.{h,cpp}
2002-11-23 18:25:28 +00:00
Chris Laurel
698712ad30
Handle different sized base, bump, and specular mask textures correctly.
2002-08-20 09:09:35 +00:00
Bob Ippolito
646ecf860f
Changes to allow compile on OS X and to be wrapped with Objective C++, please let me know if this had any adverse effects on other platforms. Don't expect much out of this from OS X, because these are only changes that affect the celestia base.
...
bob@redivi.com
2002-06-14 15:34:22 +00:00
Chris Laurel
4d7dbc7515
Fixed assert so modules compiles in debug version.
2002-03-05 01:24:48 +00:00
Chris Laurel
ed00f18a11
Fixed to properly handle textures where the number of rows of subtextures does not equal to the number of columns.
2002-03-04 22:39:25 +00:00
Chris Laurel
5485de6217
Added support for texture splitting.
2002-02-25 20:29:32 +00:00
Chris Laurel
4ac519e781
Changed class definition so that LODSphereMesh is no longer a subclass of Mesh.
2002-02-08 21:52:59 +00:00