Christoph Oelckers
60aebff4a1
- starting separation of hardware dependent and hardware independent code, starting with aabbtree, because it was easy.
2018-04-02 15:58:28 +02:00
Christoph Oelckers
1fc4c9801b
- moved all GLDEFS parsing into a dedicated source file.
...
- split gl_postprocessshader.h in two so that the hardware independent part can be used by GLDEFS without pulling in all of OpenGL.
2018-04-02 12:28:20 +02:00
Christoph Oelckers
fd6fbc76c6
- moved the ZDoomGL texshader files to 'unused', where they belong. It is very unlikely that this code will ever be revisited.
2018-04-02 10:24:27 +02:00
Christoph Oelckers
248a29bf06
- resorted portal render data.
...
Compiles but does not work...
2018-04-01 22:26:57 +02:00
Christoph Oelckers
a40e085a46
- 2D drawer implementation complete for hardware renderer.
...
This also replaces DTA_ColormapStyle with proper implementations of its components. As implemented it was a very awkward mixture of various effects that already existed in a separate form. As a result of its implementation it required additional but completely redundant shader support which could be removed now. As a side effect of this change a new DTA_Desaturate option was added.
2018-03-29 16:21:21 +02:00
Christoph Oelckers
e89a598b31
- renamed FTexture's UseType flags and gave them a dedicated type.
...
This was done mainly to reduce the amount of occurences of the word FTexture but it immediately helped detect two small and mostly harmless bugs that were found due to the stricter type checks.
2018-03-25 20:26:16 +02:00
Magnus Norddahl
07fa310f23
- move material light modes to their own subshader lumps
2018-02-20 00:13:05 +01:00
Magnus Norddahl
e2cab652d0
- Improve the "#line 1" directive insertion so that errors in all the shaders use line numbers relative to the lump they are referring to
2018-02-10 14:46:43 +01:00
Magnus Norddahl
5528d4157b
- Make uniform removal a little bit more robust by only searching for known legacy uniforms
2018-02-10 14:06:17 +01:00
Magnus Norddahl
f01ef3d7a7
- Remove uniforms from user shader code
2018-02-10 12:52:59 +01:00
Magnus Norddahl
3207d8aef7
- generate uniform declarations from c++
2018-02-09 23:29:31 +01:00
Magnus Norddahl
7a59bcde4c
- move glossiness and specular level to GLDEFS
2018-01-25 19:53:55 +01:00
Magnus Norddahl
0855418475
Merge branch 'gzdoom' into materials
...
# Conflicts:
# src/gl/shaders/gl_shader.cpp
# src/gl/shaders/gl_shader.h
2018-01-25 19:21:19 +01:00
Magnus Norddahl
0f69778e23
- Add new material shader entries for specular and PBR light modes
2018-01-21 01:53:44 +01:00
Magnus Norddahl
4dd2d789f4
- Rename mTextureEffects to mMaterialShaders to help distinguish between those and effect shaders (mEffectShaders)
...
- Add MaterialShaderIndex enum
2018-01-21 01:19:16 +01:00
Magnus Norddahl
a23e5f49f6
- Add "fuzz software" to GL that renders fuzz like the scaled fuzz mode in the software renderer
2018-01-07 02:29:55 +01:00
Christoph Oelckers
836970f012
- moved the matrix code out of 'gl' because the model code also needs it.
2017-11-25 13:51:09 +01:00
Christoph Oelckers
f0dc619b5b
- fixed bad use of FScanner::GetNumber and GetFloat in code inherited from ZDoomGL.
...
This could lead to bad error messages if some malformed definitions were used.
2017-11-19 15:30:45 +01:00
Rachael Alexanderson
de19efa79d
- trying again: fix shader targets being case sensitive
2017-11-19 04:48:30 -05:00
Rachael Alexanderson
351de94311
- fixed: Accidentally committed in-progress work... again
...
Partial Revert "- fixed: Made shader targets not case sensitive"
This reverts commit 2c24d2e047
.
2017-11-19 04:46:52 -05:00
Rachael Alexanderson
2c24d2e047
- fixed: Made shader targets not case sensitive
2017-11-19 04:41:07 -05:00
Rachael Alexanderson
0ccd388d91
- reverted the texture flip from the previous commit
2017-10-12 12:44:00 -04:00
Rachael Alexanderson
1b6f77a473
- fixed: inverted vertically texture uniforms for custom post-process shaders, and also changed their input format to BGRA to match the standard.
2017-10-12 11:54:56 -04:00
Magnus Norddahl
04be9fe6f2
- Remove test code committed by accident
2017-07-31 20:09:45 +02:00
Magnus Norddahl
d5733f515c
- Support binding textures for custom PP shaders
2017-07-30 13:59:25 +02:00
Rachael Alexanderson
b30b93f40f
- made postprocess shader parsing a little more strict, will error out more frequently with common mistakes.
2017-07-23 06:11:04 -04:00
Rachael Alexanderson
7728875a7f
- Added 'enabled' property for PP shaders, to automatically enable them without ZScript
2017-07-13 05:57:12 -04:00
Rachael Alexanderson
e1b4bb11ba
Merge https://github.com/coelckers/gzdoom
2017-07-09 20:09:12 -04:00
Magnus Norddahl
ddd1b629c3
- Calculate globvis/r_visibility in r_utility and use it in GL and poly renderers
2017-07-09 19:01:34 +02:00
Magnus Norddahl
00893763ed
Merge branch 'custom_postprocess' into qzdoom
2017-07-08 14:44:30 +02:00
Magnus Norddahl
a38de996e7
- Move uniform declarations to the GLDEFS lump to make it Vulkan safe (a vulkan implementation can then declare them in an uniform block)
...
- Change SetUniform functions to be clearscope as they can be safely called from both play and ui
- Add PlayerInfo argument to SetUniform functions to force the modder to take network play into account
- Add enabled flag on custom postprocess shaders
- Removed custom texture support until a more clean implementation is written
2017-07-08 14:44:07 +02:00
Magnus Norddahl
69a3d10cb6
Merge branch 'custom_postprocess' into qzdoom
...
# Conflicts:
# src/gl/renderer/gl_postprocess.cpp
2017-07-06 05:41:16 +02:00
Magnus Norddahl
8a0e801cb5
- Move custom postprocess shader to its own file
2017-07-06 05:36:01 +02:00
Rachael Alexanderson
2bfd7859e4
Merge remote-tracking branch 'origin/custom_postprocess'
2017-07-03 17:17:17 -04:00
Magnus Norddahl
e161bba146
- Specify shader uniforms from ZScript
2017-07-03 22:30:49 +02:00
Rachael Alexanderson
edb45cd70d
Merge remote-tracking branch 'origin/custom_postprocess'
2017-07-02 19:56:57 -04:00
Magnus Norddahl
ee6d7cf17e
- Add initial postprocess shader support to GLDEFS file
2017-07-03 01:26:02 +02:00
Rachael Alexanderson
0d8b7c55ef
- added a grayscale formula selector
2017-07-02 16:45:06 -04:00
Rachael Alexanderson
63da6e70c0
- added a vid_saturation control - works in postprocessing, only.
2017-07-02 16:45:06 -04:00
Magnus Norddahl
7acb492852
- Add gl_shadowmap_quality cvar that controls the resolution of the 1D shadow map texture
2017-06-04 00:44:49 +02:00
Magnus Norddahl
f049e6145b
- remove all usage of std::make_unique to keep things C++11 compliant
2017-04-11 01:25:44 +02:00
Rachael Alexanderson
b1e1f25218
- detect gl es shaders and request them
2017-04-06 23:34:50 -04:00
Magnus Norddahl
85a9984807
- Add OpenGL ES 3 support to GL renderer
2017-04-06 23:34:42 -04:00
Christoph Oelckers
ef3421eee5
- moved dynamic lights out of the GL code into the common game code.
...
Since the true color software renderer also handles them there is no point keeping them on the GL side.
This also optimized how they are stored, because we no longer need to be aware of a base engine which doesn't have them.
2017-03-12 19:57:06 +01:00
Christoph Oelckers
9e70771da3
- Added a check to allow shader storage buffers on GL 4.3 Intel drivers. It doesn't work if GLSL version is set to 4.0 and the feature activated via extension.
2017-03-11 20:14:18 +01:00
Christoph Oelckers
9eae422dab
Merge branch 'shadowmaps' of https://github.com/raa-eruanna/qzdoom into 3.0_work
...
# Conflicts:
# src/CMakeLists.txt
# wadsrc/static/language.enu
2017-03-11 19:55:43 +01:00
Magnus Norddahl
b660493051
Add menu option for disabling shadow maps and detecting if storage buffers are available or not
2017-03-10 19:10:40 +01:00
Christoph Oelckers
a4710bcdb0
- did a bit of header cleanup to reduce the dependency on dobject.h.
2017-03-09 23:30:42 +01:00
Magnus Norddahl
0d1deddae5
Bind shadow map texture for main.fp and sample from the shadowmap texture
2017-03-02 19:10:57 +01:00
Magnus Norddahl
6363c6cf58
Add a shadowmap shader
2017-03-02 16:19:06 +01:00