Christoph Oelckers
d5dceb6874
- changed alpha texture handling to avoid using the deprecated GL_ALPHA8 texture format unless we have a compatibility context of an older GL version.
2014-06-21 12:52:19 +02:00
Christoph Oelckers
59522f7065
- simplified MD2 drawing code as preparation for a buffer based implementation.
2014-06-19 13:37:30 +02:00
Christoph Oelckers
0ce6b40672
- fixed compile error in gl_skydome.cpp
...
- disable GL_ARB_buffer_storage when a -glversion parameter less than 4.0 is given. According to the spec this extension requires 4.0 so if emulating something lower it should not be used.
2014-06-14 14:58:17 +02:00
Christoph Oelckers
8d9a90cd22
- rewrote sky dome rendering to use a static vertex buffer if not on OpenGL 2.x.
2014-06-14 01:24:28 +02:00
Christoph Oelckers
978ace241c
- removed all code that mixes together the different lighting methods. Now everything goes through the 3 different light parameters in the render state.
...
- removed cm parameter from many functions.
2014-05-11 21:47:54 +02:00
Christoph Oelckers
887d35d559
- remove colormap from texture generation parameters. The one remaining special case, alpha texture on old hardware is now handled by the currently set texture mode at the time of use.
...
- use the cleaned up decal lighting code from the first GLEW branch.
2014-05-11 19:44:19 +02:00
Christoph Oelckers
7793bbbcc9
Further cleanup of lighting code.
...
- remove thing color from lighting calculations.
- implement alpha textures and inverse sprites for infrared as texture modes. This still requires some handling for the alpha texture mode for non-shader rendering because there is no way in the fixed pipeline to do it. The inverted texture effect can be done with a texture combiner.
- fixed: ThingColor for sprites was set in the wrong place. It must be in the Process function, not in the lighting calculation.
- added functions for isolated calculation of sprites' dynlight color.
2014-05-11 17:56:38 +02:00
Christoph Oelckers
09f4071436
Ok, it had to be done: Removed shader support for pre GLSL 1.3/GL 3.0 hardware. The compromises needed to accomodate these are just too bad and would block any attempt at streamlining the code.
2014-05-11 13:27:51 +02:00
Christoph Oelckers
92b9814460
Merge branch 'master' into Glew_Version_For_Real
2014-05-11 09:17:46 +02:00
Christoph Oelckers
a42cde0837
- removed #include of glxew.h because it's not used.
...
- removed some unused functions from gl_interface.cpp which were causing problems when compiling on Linux.
2014-05-11 09:17:18 +02:00
Christoph Oelckers
7d3beb665b
- rewrote vertex buffer code to require GL_ARB_BUFFER_STORAGE extension.
...
This means it won't work anymore on anything that doesn't support OpenGL 4.0, but I don't think this is a problem. On older NVidia cards performance gains could not be seen and on older AMDs using the vertex buffer was even worse as long as it got mixed with immediate mode rendering.
2014-05-10 21:47:07 +02:00
Christoph Oelckers
69af73d9b9
- alternative configuration using GLEW to get extension functions. This requires GL 2.0, though so it won't be promoted to the mainline for the time being.
...
- removed all pre GL 2.0 support.
2014-04-06 14:35:44 +02:00
alexey.lysiuk
4b24489393
* fix compilation on non-Windows systems
2013-12-07 12:25:38 +02:00
Christoph Oelckers
e4282d3554
- added error check to GL getProcAddress calls to spot driver errors.
2013-11-30 12:34:55 +01:00
Christoph Oelckers
2885056f46
- moved GLEXT API out of RenderContext struct.
2013-09-03 18:29:39 +02:00
Christoph Oelckers
26943fe3fd
- removed gl interface function pointers for all OpenGL32.dll entry points.
2013-09-03 14:05:41 +02:00
Christoph Oelckers
4dc06cca70
- changed minimum required GL version to 1.3. The only 1.4 feature that's required is mipmap generation which on many older cards is available as an extension. The worst thing that can happen with relaxing the version requirement is that on a few ancient graphics cards the mipmapped texture filtering modes produce garbage.
2013-09-02 08:43:56 +02:00
Christoph Oelckers
737708b635
- fix c++11's compile problems.
2013-08-28 08:33:11 +02:00
Christoph Oelckers
b61ef3a107
- bumped minimum supported OpenGL version to 1.4. The engine was already using several 1.3 and 1.4 features which would have caused problems on 1.2.
...
- removed gl_vid_compatibility. With the bump to 1.4 no hardware requiring this flag is supported anymore.
- disabled 16 bit framebuffers for the same reason. As a conseqence all code for rendering without stencil could also be removed.
2013-08-18 15:41:52 +02:00
Christoph Oelckers
761ab4ab78
- moved all system specific code out of gl_interface.cpp into the respective Video classes (Win32GLVideo andSDLGLVideo.) (SDL side not tested yet!)
2013-08-18 14:16:33 +02:00
Christoph Oelckers
46d203a929
- removed unused variable wgl_extensions.
2013-06-24 00:59:57 +02:00
Christoph Oelckers
399d0974ab
- added GL render as of SVN revision 1600.
2013-06-23 09:49:34 +02:00