Commit graph

40 commits

Author SHA1 Message Date
Robert Beckebans
42874cfd05 Added graphics option to make soft shadows optional 2014-05-15 12:14:37 +02:00
Robert Beckebans
0eaaea4b96 Improved shadow mapping performance using the shadow LOD and tweaked
polygon offsets to fight shadow acne
2014-05-11 22:30:01 +02:00
Robert Beckebans
5153422d0d Added shadow LOD calculation 2014-05-11 17:24:24 +02:00
Robert Beckebans
5c0fedf190 Patched GLEW to get the extensions with OpenGL >= 3.2 for the case that glGetString(GL_EXTENSIONS) fails 2014-05-11 12:19:10 +02:00
Robert Beckebans
f72d98a1eb Disabled shadow mapping for Mesa drivers fixes #103 2014-05-11 11:49:14 +02:00
Robert Beckebans
11456a231d Changed Mesa backend to output GLSL ES 3.00 in order to support shadow mapping 2014-05-11 11:30:56 +02:00
Robert Beckebans
14f87fe9db Added support for loading .png image files as textures and changed screenshot command to write in .png format 2014-05-10 18:15:33 +02:00
Robert Beckebans
277964f074 Because I can :)
- Implemented soft shadows using PCF hardware shadow mapping

  The implementation uses sampler2DArrayShadow and PCF which usually
  requires Direct3D 10.1 however it is in the OpenGL 3.2 core so it should
  be widely supported.
  All 3 light types are supported which means parallel lights (sun) use
  scene independent cascaded shadow mapping.
  The implementation is very fast with single taps (400 fps average per
  scene on a GTX 660 ti OC) however I defaulted it to 16 taps so the shadows look
  really good which should you give stable 100 fps on todays hardware.

  The shadow filtering algorithm is based on Carmack's research which was
  released in the original Doom 3 GPL release draw_exp.cpp.

- Changed interaction shaders to use Half-Lambert lighting like in HL2 to
  make the game less dark

- Fixed some of the renderer debugging/development tools like r_showTris
2014-05-10 14:40:01 +02:00
RobertBeckebans
60ccf3567b Merge branch 'master' into glew 2014-04-25 20:24:30 +02:00
Robert Beckebans
d326d49cf0 Merge pull request #93 from dekadenZ/fix-renderer-string-cmp
Fix length error in prefix comparison
2014-04-25 11:07:12 +02:00
dekadenZ
20e5cf5ae2 Fix length error in prefix comparison 2014-04-25 02:39:49 +02:00
RobertBeckebans
8018378c3c Merge branch 'master' into glew
Conflicts:
	neo/renderer/OpenGL/glext.h
	neo/renderer/OpenGL/qgl.h
	neo/renderer/OpenGL/wglext.h
	neo/renderer/RenderProgs.cpp
	neo/renderer/RenderProgs_GLSL.cpp
	neo/renderer/RenderSystem_init.cpp
	neo/renderer/tr_backend_draw.cpp
	neo/sys/win32/win_qgl.cpp
2014-04-21 15:01:50 +02:00
RobertBeckebans
b0b0d8ed76 gfxInfo Typo 2014-04-20 17:55:03 +02:00
Robert Beckebans
a8cda090c1 Disabled timing queries when using the Mesa driver #90 2014-04-20 17:50:37 +02:00
Robert Beckebans
3b19aa7991 Added glConfig.vendorType settings for Linux and disabled unused shaders. #90 2014-04-20 17:20:50 +02:00
RobertBeckebans
cce21e0d76 Added GLSL ES 1.0 backend for Mesa drivers #90 2014-04-20 16:29:58 +02:00
Andreas Bergmeier
f66591f244 Force format invocations to be correct (on gcc and clang) and fix them. 2014-02-23 19:16:23 +01:00
Robert Beckebans
573905e295 Compile fix 2014-01-09 17:53:30 +01:00
Robert Beckebans
7690fb4b8e Merge branch 'master' into glew
Conflicts:
	neo/renderer/OpenGL/glext.h
	neo/renderer/RenderSystem_init.cpp
2013-12-24 15:49:06 +01:00
Jonathan Young
bb2e41b5d7 Added r_useVirtualScreenResolution cvar to control whether to do 2D rendering at 640x480 and stretch to the current resolution (default), or render at the current resolution. 2013-09-21 22:12:42 +10:00
Jonathan Young
b3983e582a astyle 2013-09-21 19:37:12 +10:00
Jonathan Young
a1776a22d0 r_vidMode sanity check was off by 1. 2013-09-18 12:39:31 +10:00
Daniel Gibson
9372fddabb Fix compile when system GLDEBUGPROCARB signature is without const
.. by just casting our DebugCallback to GLDEBUGPROCARB.
It shouldn't make a difference ABI-wise, if there is a const at
a parameter or not.

Fixes #61
2013-08-31 19:23:45 +02:00
Robert Beckebans
d3ddf61d9c Changed signature of GLDEBUGPROCARB to match OpenGL GL_ARB_debug_output specs 2013-08-29 09:38:52 +02:00
Robert Beckebans
fe22638fdd Merge branch 'master' into glew and fixed a crash on Intel HD drivers 2013-04-23 00:43:00 +02:00
Robert Beckebans
c038a836f2 Merge branch 'master' into glew 2013-01-14 17:33:25 +01:00
Daniel Gibson
d6c32cd49b Support resizing windows + improve fullscreen for SDL2
By implementing GLimp_SetScreenParms() and enhancing the
event handling
2013-01-04 14:40:35 +01:00
Daniel Gibson
876aa96637 Fix messed up view angle after taking screenshots
Pretty much like https://github.com/dhewm/dhewm3/issues/18
but here it took some more changes
2012-12-23 06:43:20 +01:00
Robert Beckebans
dd9b8a8710 Added support for precompiled headers for MSVC which reduced the compiled time from 4 minutes to 67 seconds. 2012-12-22 16:18:19 +01:00
Robert Beckebans
ff531907c7 Replaced QGL with GLEW. 2012-12-17 17:30:59 +01:00
Robert Beckebans
d7888cf99d Added support for SDL 2.0 2012-12-14 19:03:30 +01:00
Robert Beckebans
8b8cfe7d25 Small changes to pthreads. 2012-12-14 13:10:52 +01:00
Daniel Gibson
67d6a5a1fa Make sure SDL_Init() was called before SDL_VideoInfo()
by adding GLimp_PreInit()
2012-12-14 00:51:22 +01:00
Robert Beckebans
86deed26b8 Merged 64 bit fixes. 2012-12-12 12:11:55 +01:00
Daniel Gibson
9eeea7adf3 Fix tons of compiler warnings
mostly -Wreorder, use const char* instead of char* for "static strings",
fix inappropriate usage of NULL (e.g. instead of '\0' or (int)0)
2012-12-11 23:57:05 +01:00
Robert Beckebans
a1730fa430 Supplemented Linux backend with missing functions. -> [100%] Built target RBDoom3 on Kubuntu 12.10 2012-12-11 23:17:23 +01:00
Robert Beckebans
3b0dabe30a Formatted code. 2012-12-08 18:20:13 +01:00
Robert Beckebans
948865123d More Linux specific fixes, especially 64 bit 2012-12-07 17:06:44 +01:00
Robert Beckebans
f55a763ca4 Formatted code using Artistic Style for better readability. 2012-11-28 16:47:07 +01:00
Brian Harris
5016f605b8 Initial commit 2012-11-26 12:58:24 -06:00