Zack Middleton
d861a4f427
Load OpenGL ES 2.0 function procs
...
Load functions procs supported by OpenGL ES 2.0, though there is not a
compatible renderer yet. Change argument for GLimp_Init from coreContext
to fixedFunction.
2018-07-20 23:40:21 -05:00
Zack Middleton
7391215bd4
Don't load non-core GL functions for OpenGL 3.2 core context
...
Also declare the GL functions in tr_local.h so there is compile error
for non-core GL functions instead of SEGFAULT from dereferencing a NULL
pointer.
Disable the non-functional stencil shadow code that hasn't been updated
to use OpenGL 3.2 core compatible drawing.
2018-07-20 23:40:17 -05:00
Zack Middleton
ae9edd1491
Fix shifting bits out of byte in tr_font.c
...
Found using LLVM sanitizer. Reported by Dominic "lonkamikaze" Fandrey.
2018-04-08 21:41:31 -05:00
Edward Betts
fe42b8653d
Correct spelling mistakes.
2017-11-22 01:40:20 -06:00
Zack Middleton
a83ae01d93
Load OpenGL ES 1.1 function procs
2017-10-02 04:48:07 -05:00
Zack Middleton
da07a6dbd9
Support parsing OpenGL ES version strings
...
The renderers don't support OpenGL ES though.
2017-10-01 23:09:20 -05:00
Zack Middleton
c9d12aa3f3
Add common OpenGL version parsing + OpenGL 3 fixes
...
- Parse OpenGL version in sdl_glimp.c to share with both renderers.
- Add GL_VERSION_ATLEAST(major, minor) macro.
- Get address of glGetStringi if using OpenGL 3.
- Fix glConfig.extensions_string when using GL3 core context in
opengl2 renderer.
- Make opengl1 renderer's gfxinfo support qglGetStringi too.
2017-10-01 23:09:20 -05:00
Zack Middleton
20573bce43
Don't link to libGL at compile time
...
Get all OpenGL functions using SDL_GL_GetProcAddress(). This makes it
easier to cross-arch compile on Linux and add support for OpenGL ES
in the future.
Users still have to supply their own libSDL2 for cross-arch compiling
on Linux. But now the user does not have to re-install libgl1-mesa-dev
package for i386 or amd64 on Debian when switching between compiling
ioquake3 for x86 and x86_64.
2017-10-01 23:07:33 -05:00
SmileTheory
3f415abe61
OpenGL2: Use extension functions with OpenGL versions before 3.0.
2017-08-07 18:00:00 -07:00
Zack Middleton
59b1262b82
Fix floating point precision loss in renderer [part 2]
...
Fix floatTime using float precision instead of double using GCC.
Fix R_BindAnimatedImage to be in sync with function table.
Fix vertexDeform bulge, vertexDeform normals, noise wave function
at high level time.
Revert unnecessary float -> double conversions.
2017-08-03 00:14:22 -05:00
Zack Middleton
e62941396d
Remove unused imgFlag_t value IMGFLAG_SRGB
2017-07-30 15:39:32 -05:00
SmileTheory
d549b642bc
OpenGL2: Use an OpenGL 3.2 core context if available.
2017-07-13 12:03:10 -07:00
SmileTheory
c65d2c2657
Add vao cache for static surfaces.
...
Remove support for draw range elements, multi draw arrays, world vao creation, surface merging.
2017-04-28 02:13:25 -07:00
SmileTheory
0672905ef1
OpenGL2: Detect Intel graphics and avoid/use certain operations there.
...
Also use qglCopyTextureSubImage2DEXT instead of qglCopyTextureImage2DEXT.
2016-12-07 22:30:55 -08:00
SmileTheory
e022abeebb
OpenGL2: Fix GL_EXT_direct_state_access function names.
2016-07-28 20:04:25 -07:00
SmileTheory
716438168f
OpenGL2: Use loader for all extension funcs.
2016-07-26 00:41:31 -07:00
SmileTheory
f0086e8c2a
OpenGL2: Add new GL function loader.
2016-07-25 06:30:25 -07:00
SmileTheory
251c983681
OpenGL2: Require OpenGL 2.0.
2016-07-24 21:29:13 -07:00
Zack Middleton
420bd09164
OpenGL2: Remove loading (unused) glDrawBuffersARB
2016-06-15 13:58:26 -05:00
SmileTheory
28ff383061
OpenGL2: Direct state access, part 3: Framebuffers.
2016-01-20 06:32:50 -08:00
SmileTheory
f70e9dac01
OpenGL2: Direct state access, part 2: Uniforms.
2016-01-18 23:30:36 -08:00
SmileTheory
275317fefb
OpenGL2: Direct state access, part 1: Texture binds
2016-01-18 04:46:01 -08:00
SmileTheory
e25035672d
Fix error handling in RE_SaveJPGToBuffer().
2015-12-21 01:05:55 -08:00
SmileTheory
d8fd07b69a
Make jpeg loading errors non-fatal.
2015-12-20 03:08:50 -08:00
SmileTheory
cbfc3471bc
OpenGL2: Switch to RGTC from LATC for normal maps.
...
Also added a RGTC compressor as a workaround on Intel graphics.
2015-12-15 03:23:55 -08:00
Zack Middleton
f110f668bf
Move image load function prototypes to tr_common.h
...
The functions themselves are in code/renderercommon/tr_image_*.c
2015-06-12 14:22:37 -05:00
Zack Middleton
08ddb99732
Fix saving/loading glyph 255 in RegisterFont
...
The glyph for character 255 (lower case y with two dots above it) was
rendered, but it's glyph information was not stored in fontInfo_t and
not saved into .dat file (including the ones in Team Arena).
Attempting to load it from existing .dat font files is fine because
shader name is "" and gets 0 handle. The handle was already 0 anyway.
2014-12-01 22:04:40 -06:00
SmileTheory
84206c8598
OpenGL2: Vertex array object support.
2014-10-14 01:50:44 -07:00
Tim Angus
f83334d81b
Add facility to describe cvars
2014-09-26 14:29:51 +01:00
Tim Angus
cf7004ffb2
Fix OSX build
2014-08-25 12:03:10 -04:00
Tim Angus
7d026177ad
Fix assorted warnings
2014-08-25 14:48:49 +01:00
Zack Middleton
73aa7ef2c7
Merge branch 'master' (early part) into sdl2
2014-03-24 17:51:57 -05:00
Tequila
baca82d64e
Bunch of comment fixes
2014-03-13 02:20:54 +01:00
Zack Middleton
ed087bb89e
Merge branch 'master' into sdl2
2014-02-07 23:24:12 -06:00
robo9k
1611188ef7
Fix check for jpeg_mem_ to work with libjpeg-turbo
2014-01-27 23:41:51 +01:00
Zack Middleton
fda03ee4ca
Fix PNG tRNS length checks
2014-01-10 12:34:48 -06:00
Tim Angus
76e49b668e
Merge branch 'master' into sdl2
2013-09-16 22:34:51 +01:00
SmileTheory
7e875c6941
#5979 : Cubemap support for opengl2.
2013-09-16 00:54:26 -07:00
Tim Angus
bde7665462
Merge branch 'master' into sdl2
...
Conflicts:
code/sdl/sdl_input.c
2013-08-16 23:34:08 +01:00
morturp
7b47c6cf36
out seems to be unnecessarily large for one byte per pixel
2013-07-18 03:00:39 +03:00
Zack Middleton
608e852ac6
Free Team Arena fonts/fontImage_X.dat buffer
...
Caused temp memory to be present all the time, so Hunk_Alloc ignored memory low/high preference.
May have caused other issues as well.
2013-07-04 15:34:05 -05:00
morturp
213b8e2435
Prevent the skip of the glyph if it does not fit
2013-06-26 11:42:59 +03:00
/dev/humancontroller
830d93aa38
add some noreturn annotations
2013-05-30 15:39:22 -05:00
Tim Angus
ab4c602374
Fix Freetype build problems
2013-05-27 20:45:42 +01:00
Tim Angus
d9d52f0306
Merge branch 'master' into sdl2
...
Conflicts:
Makefile
code/renderercommon/qgl.h
code/renderergl1/tr_local.h
code/sdl/sdl_glimp.c
2013-05-08 14:27:15 +01:00
Tim Angus
98360bcd57
Fix some of the things clang --analyze flagged
2013-03-26 16:50:03 +00:00
Tim Angus
3e92679100
Fix USE_FREETYPE breakage
2013-03-12 19:41:52 +00:00
Tim Angus
37c69a8009
Move renderers a bit closer together
2013-03-12 17:52:29 +00:00
Zack Middleton
c7059fbf28
Move noise function declations to tr_common.h
...
tr_noise.c is in renderercommon directory, so declare them in header there too.
2013-02-27 15:35:02 -06:00
Zack Middleton
f4d56e5429
Add GPL header to tr_common.h
2013-02-16 15:46:09 -06:00