Rachael Alexanderson
30087f7cd7
- cleaned up the video scale mode code a bit, in order to increase future flexibility.
2017-07-27 03:05:01 -04:00
Magnus Norddahl
cbda6e9427
- Improve dynamic lights for the HUD model
2017-07-26 09:18:05 +02:00
Magnus Norddahl
0c0f0789c2
- Improved dynamic lights on models
2017-07-25 23:00:09 +02:00
Magnus Norddahl
d2e0933a81
- Fix packed normal order bug
2017-07-25 20:20:13 +02:00
Magnus Norddahl
4e14ed4e9e
- Hook up model normals
2017-07-25 20:20:12 +02:00
David Carlier
64e96c5f46
OpenBSD support
2017-07-25 07:56:19 -04:00
Magnus Norddahl
e06f87cf10
- Added 0.75x scale mode
2017-07-24 08:35:27 +02:00
Magnus Norddahl
18f0f6be4b
- Pixel stretch for 320x200 and 640x400 in glswfb
2017-07-23 17:26:55 +02:00
Rachael Alexanderson
2f37c4b272
- added vid_scalemode == 4 to super-sample the screen
2017-07-23 11:24:04 -04:00
Magnus Norddahl
449c4cb711
- Pixel stretch 320x200 and 640x400 scale modes in the GL renderer
2017-07-23 17:18: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
Magnus Norddahl
370e53befe
- Replace vid_max_width and vid_max_height with vid_scalemode for the GL software framebuffer backend
...
- Fix a crash if the window was resized before creating a game
- Fix main menu scaling being wrong if the video mode didn't match the unscaled screen size
2017-07-23 04:23:13 +02:00
Magnus Norddahl
c3702ae9e7
Add vid_scalemode support to GL framebuffer
2017-07-23 00:33:56 +02:00
Rachael Alexanderson
d020ec68d2
Merge branch 'master' into qzdoom-merge
2017-07-20 06:43:03 -04:00
Rachael Alexanderson
bc38f7f776
- changed gl_ssao_portals default to 1
2017-07-20 06:41:34 -04:00
Rachael Alexanderson
77617a2757
Merge branch 'master' into qzdoom-merge
2017-07-19 17:32:41 -04:00
alexey.lysiuk
bbb8374b06
Fixed applying of color to untranslated fonts in hardware renderer
...
https://forum.zdoom.org/viewtopic.php?t=57268
2017-07-19 15:00:55 +03:00
Rachael Alexanderson
a383dacbe6
Merge https://github.com/coelckers/gzdoom
2017-07-16 01:38:25 -04:00
alexey.lysiuk
490e873602
Moved parallel_for() function template to own header file
2017-07-15 12:16:06 +03:00
Rachael Alexanderson
a3e782a164
Merge https://github.com/coelckers/gzdoom
2017-07-15 03:48:13 -04:00
Christoph Oelckers
98124c8049
- avoid using plain chars as variables.
...
This is all I found with a quick search, there's probably more...
2017-07-15 09:01:02 +02:00
Rachael Alexanderson
c1e3f10802
Merge https://github.com/coelckers/gzdoom
2017-07-15 00:24:25 -04:00
alexey.lysiuk
970adff5e7
Use multiple threads for xBRZ upscaling
...
Implementation relies on Concurrency Runtime, Grand Central Dispatch aka libdispatch or OpenMP depending on their availability
2017-07-14 16:01:38 +03: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
d2c8a5c33d
Revert "Merge commit 'refs/pull/338/head' of https://github.com/coelckers/gzdoom "
...
This reverts commit 65bb8a5185
, reversing
changes made to 619281de64
.
2017-07-10 11:29:58 -04:00
Rachael Alexanderson
26355ece82
Revert "Merge commit 'refs/pull/338/head' of https://github.com/coelckers/gzdoom "
...
This reverts commit 035c036eb2
, reversing
changes made to 61660bf147
.
2017-07-10 11:29:30 -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
a4b96f7673
- Fix linker error
2017-07-06 18:02:27 +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
1cfaae78d9
- Add new "scene" target for custom postprocess shaders
...
- Add "gl_custompost" cvar to turn off custom postprocess shaders completely
- Made "scene" affect the screen before 2D drawing, made "screen" affect the entire screen after 2D drawing
2017-07-06 04:45:51 +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
5c87cdd786
- Add new "scene" target for custom postprocess shaders
...
- Add "gl_custompost" cvar to turn off custom postprocess shaders completely
- Made "scene" affect the screen before 2D drawing, made "screen" affect the entire screen after 2D drawing
2017-07-02 21:04:22 -04:00
Rachael Alexanderson
edb45cd70d
Merge remote-tracking branch 'origin/custom_postprocess'
2017-07-02 19:56:57 -04:00
Magnus Norddahl
1b5f3da9c5
- Fix lump lookup
2017-07-03 01:50:51 +02:00
Magnus Norddahl
befe081683
- Upload custom texture
2017-07-03 01:29:03 +02: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
bd02893ce7
- expanded hard limits for saturation to -15.0/15.0
...
- added menu option for saturation
- tried to get the new saturation shader to consume less GPU power by turning it off when it is 1.0
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
Rachael Alexanderson
17aceac912
Merge https://github.com/coelckers/gzdoom
2017-06-29 03:50:22 -04:00
Christoph Oelckers
c74356a1c0
- made OpenGL 3.3 a requirement for running the modern render path. Also force '-glversion 3' to use the modern render path, even though actual OpenGL 3.0 won't support it.
...
This will exclude Intel HD3000 and many obsolete drivers for NVidia and ATI which should have been updated long ago.
2017-06-28 17:57:04 +02:00
Rachael Alexanderson
c15880a2fc
Merge https://github.com/coelckers/gzdoom
2017-06-27 17:38:26 -04:00
Christopher Bruns
e9f03102f4
Update fixed color map for each eye, so light goggles would work in both eyes in stereo 3d modes.
2017-06-27 17:55:11 +02:00
Rachael Alexanderson
cf400ba2db
Merge https://github.com/coelckers/gzdoom
2017-06-25 23:44:33 -04:00
Magnus Norddahl
b6e035e796
- Implemented radial fog support in software light mode
2017-06-25 15:02:34 +02:00
Rachael Alexanderson
9001009fcf
Merge https://github.com/coelckers/gzdoom
2017-06-22 01:42:33 -04:00
Rachael Alexanderson
f49794d6c6
- fixed: Due to recent changes, textures now use 'bgra' format in OpenGL. The palette tonemap shader had not yet been updated to reflect this.
2017-06-21 19:00:51 -04:00
Rachael Alexanderson
ff257fcfd7
Merge https://github.com/coelckers/gzdoom
2017-06-20 09:39:12 -04:00
Christoph Oelckers
f909b82074
- fixed: Blood translations did not properly treat color 0 as transparent.
2017-06-20 09:10:19 +02:00
Rachael Alexanderson
d454fafc9e
Merge https://github.com/coelckers/gzdoom
2017-06-19 03:22:23 -04:00
Christoph Oelckers
3b024c347b
- use a dedicated flag word for the dynamic light flags instead of piggybacking on some flags4 bits.
2017-06-18 10:15:31 +02:00
Christoph Oelckers
cf1d94c9bb
- fixed blood translation's alpha so that CreateTexBuffer can assume that all palette entries in translations are correct.
2017-06-18 09:23:56 +02:00
Christoph Oelckers
a1694a79c6
- removed the FGLBitmap class and replaced all uses with the regular FBitmap.
...
The only reason this ever existed is that the GL renderer used RGBA instead of BGRA but there's no reason why this is even necessary.
2017-06-18 09:14:33 +02:00
Rachael Alexanderson
717e9dd0d8
Merge https://github.com/coelckers/gzdoom
2017-06-07 16:46:21 -04:00
Christoph Oelckers
8b19ae98ea
- consolidated the two averageColor instances.
2017-06-07 22:42:59 +02:00
Rachael Alexanderson
921ce9247e
Merge https://github.com/coelckers/gzdoom
2017-06-05 10:40:15 -04:00
svdijk
c698f10257
Fix setting of the gl_legacy_mode cvar.
2017-06-05 14:45:24 +02:00
Rachael Alexanderson
c340a6f794
Merge branch 'master' of https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/gl/scene/gl_sprite.cpp
# src/polyrenderer/scene/poly_sprite.cpp
# src/r_data/r_vanillatrans.cpp
# src/r_data/r_vanillatrans.h
# src/swrenderer/things/r_sprite.cpp
2017-06-04 07:24:35 -04:00
Rachael Alexanderson
c18134dbd3
- r_vanillatrans: Cache the cache! Transform the function into a global variable and recheck at the start of D_Display
2017-06-04 12:30:35 +02:00
Rachael Alexanderson
68b6f922f7
- Added auto-detection scheme for r_vanillatrans
...
It now works the following way:
(0) - Force off (ZDoom defaults)
(1) - Force on (Doom defaults)
(2) - Auto off (Prefer ZDoom defaults - if DEHACKED is detected with no ZSCRIPT it will turn on) (default)
(3) - Auto on (Prefer Doom defaults - if DECORATE is detected with no ZSCRIPT it will turn off)
2017-06-04 12:30:35 +02:00
Rachael Alexanderson
2997f31f9f
- removed ZDOOMADD and updated actors in question with ZDOOMTRANS
2017-06-04 12:30:35 +02:00
Rachael Alexanderson
89b372cb01
- Changed MF7_SPRITEFLIP, MF8_ZDOOMTRANS to RenderFlags
...
- Added RF_ZDOOMADD
- renamed r_canontrans to r_vanillatrans
- this developer's insanity level has increased by 231%.
2017-06-04 12:30:35 +02:00
Rachael Alexanderson
01f88cfb16
- Added 'canonical transparency' cvar r_canontrans - this simply turns off transparency for Doom objects that were marked as transparent sometime in ZDoom's development cycle
2017-06-04 12:30:35 +02:00
Rachael Alexanderson
64b22f6cb3
Merge https://github.com/coelckers/gzdoom
2017-06-03 22:34:13 -04:00
Rachael Alexanderson
deb62ee156
Merge commit 'refs/pull/340/head' of https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/gl/scene/gl_sprite.cpp
# src/polyrenderer/scene/poly_sprite.cpp
# src/swrenderer/things/r_sprite.cpp
# wadsrc/static/language.enu
# wadsrc/static/menudef.txt
2017-06-03 20:06:28 -04:00
Rachael Alexanderson
9af370f51e
- Added auto-detection scheme for r_vanillatrans
...
It now works the following way:
(0) - Force off (ZDoom defaults)
(1) - Force on (Doom defaults)
(2) - Auto off (Prefer ZDoom defaults - if DEHACKED is detected with no ZSCRIPT it will turn on) (default)
(3) - Auto on (Prefer Doom defaults - if DECORATE is detected with no ZSCRIPT it will turn off)
2017-06-03 20:00:53 -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
265df4b797
- Change shadowmap resolution from 1024 to 128
2017-06-03 21:19:34 +02:00
Magnus Norddahl
797cb94b4f
- Add stat shadowmap to get performance for the upload part of the shadow maps
2017-06-03 19:24:54 +02:00
Magnus Norddahl
7edb75d299
- The mandatory include compile error fix for unix
2017-06-03 18:28:12 +02:00
Magnus Norddahl
d38dae5de8
- Add gpu stat that displays how much time the GPU spent on named GL groups
2017-06-03 18:14:24 +02:00
Rachael Alexanderson
6605bd70df
Merge https://github.com/coelckers/gzdoom
2017-06-02 14:23:30 -04:00
Rachael Alexanderson
b240ad0814
- removed ZDOOMADD and updated actors in question with ZDOOMTRANS
2017-06-02 12:24:03 -04:00
Rachael Alexanderson
00bfee8b1e
- Changed MF7_SPRITEFLIP, MF8_ZDOOMTRANS to RenderFlags
...
- Added RF_ZDOOMADD
- renamed r_canontrans to r_vanillatrans
- this developer's insanity level has increased by 231%.
2017-06-02 12:24:03 -04:00
Rachael Alexanderson
daad76547d
- Added 'canonical transparency' cvar r_canontrans - this simply turns off transparency for Doom objects that were marked as transparent sometime in ZDoom's development cycle
2017-06-02 12:24:03 -04:00
Kirill Gavrilov
2a8ebc6c27
Fixed broken Interleaved 3D output when GL Sampler objects are used
2017-06-02 09:10:38 +02:00
Rachael Alexanderson
bf12d38afd
- removed ZDOOMADD and updated actors in question with ZDOOMTRANS
2017-06-02 01:10:46 -04:00
Rachael Alexanderson
aa93990d3b
- Changed MF7_SPRITEFLIP, MF8_ZDOOMTRANS to RenderFlags
...
- Added RF_ZDOOMADD
- renamed r_canontrans to r_vanillatrans
- this developer's insanity level has increased by 231%.
2017-06-02 01:10:46 -04:00
Rachael Alexanderson
813b321c45
- Added 'canonical transparency' cvar r_canontrans - this simply turns off transparency for Doom objects that were marked as transparent sometime in ZDoom's development cycle
2017-06-02 01:10:45 -04:00
Rachael Alexanderson
e72ae3f266
Merge ../gzdoom
...
# Conflicts:
# src/version.h
# wadsrc/static/compatibility.txt
2017-05-31 09:08:13 -04:00
Christoph Oelckers
977d5988c5
- fixed weapon sprite light calculation for low light levels.
2017-05-31 09:27:50 +02:00
Rachael Alexanderson
e1a2de4989
Merge https://github.com/coelckers/gzdoom
2017-05-30 12:43:14 -04:00
alexey.lysiuk
0c90253a5d
Fixed potentially broken portal rendering after OpenGL context change
...
https://forum.zdoom.org/viewtopic.php?t=56393
2017-05-30 13:01:51 +03:00
Rachael Alexanderson
2f7d512acf
Merge commit 'refs/pull/335/head' of https://github.com/coelckers/gzdoom
2017-05-29 04:53:39 -04:00
Rachael Alexanderson
035c036eb2
Merge commit 'refs/pull/338/head' of https://github.com/coelckers/gzdoom
2017-05-28 10:50:24 -04:00
Christopher Bruns
9db4dfd963
Link to platform specific openvr library, and install it, and update license headers.
2017-05-28 10:28:07 -04:00
Rachael Alexanderson
65bb8a5185
Merge commit 'refs/pull/338/head' of https://github.com/coelckers/gzdoom
2017-05-28 07:13:27 -04:00
Rachael Alexanderson
619281de64
Revert "Merge commit 'refs/pull/336/head' of https://github.com/coelckers/gzdoom "
...
This reverts commit a05c38fefd
, reversing
changes made to 0fb1a0604c
.
2017-05-28 07:12:41 -04:00
Christopher Bruns
a49afd5bfc
Initial OpenVR mode.
...
Second attempt: clean up commit, and avoid messing with HDR framebuffer format.
2017-05-28 06:20:32 -04:00
Rachael Alexanderson
a05c38fefd
Merge commit 'refs/pull/336/head' of https://github.com/coelckers/gzdoom
2017-05-28 01:33:59 -04:00
Christopher Bruns
a149b54226
Maybe avoid gcc compile problem with forward declared enum.
2017-05-27 20:16:00 -04:00
Christopher Bruns
c1bacdbf92
Create initial rotation-tracking-only implementation of OpenVR mode for VR headsets.
2017-05-27 19:42:49 -04:00
Rachael Alexanderson
872db304f0
Merge https://github.com/coelckers/gzdoom
2017-05-27 04:31:53 -04:00
Magnus Norddahl
b111a708da
- Fix compile error and some warnings
2017-05-27 06:27:36 +02:00
Magnus Norddahl
3f991429d1
- Reduce the number of naked new/delete calls in OpenGLSWFrameBuffer
2017-05-27 02:31:15 +02:00
Major Cooke
35583621cf
PSPF_MIRROR now corrects the bobx direction.
2017-05-26 18:28:09 -05:00
Major Cooke
636e36b90d
Clean-up.
2017-05-26 11:34:26 -05:00
Major Cooke
a25a536c9f
Removed the auto PSPF_FLIP implimentation.
2017-05-25 20:40:54 -05:00
Major Cooke
a111c59286
Added PSPF_MIRROR.
...
- Flips the sprite's drawing and position over entirely. Automatically implies PSPF_FLIP.
2017-05-25 19:46:36 -05:00
Rachael Alexanderson
7600fdb200
Merge https://github.com/coelckers/gzdoom
2017-05-22 13:10:19 -04:00
Christoph Oelckers
7bc5573baa
- call P_FindParticleSubsectors before rendering a save picture in OpenGL.
...
This entry point was the only one missing that call.
2017-05-21 12:45:49 +02:00
Christoph Oelckers
fc0855fac7
- fixed size of particles in the hardware renderer.
...
From the look of it the scale was changed in the software renderer several years back but the hardware renderer never got adjusted for it.
This also adds a bit of compensation to round particles so that they get rendered a bit larger than square ones.
2017-05-21 12:36:34 +02:00
Rachael Alexanderson
fd0602a163
Merge https://github.com/coelckers/gzdoom
2017-05-19 23:40:51 -04:00
Christoph Oelckers
a4231ffd00
- more handling of some very broken old ATI drivers.
2017-05-19 21:33:48 +02:00
Christoph Oelckers
c8e631bf26
- fixed: The colormap was not fully initialized for 3D floors in sectors where neither the original floor nor ceiling were visible.
2017-05-19 11:42:44 +02:00
Rachael Alexanderson
7ded20ca05
Merge https://github.com/coelckers/gzdoom
2017-05-15 03:27:58 -04:00
Christoph Oelckers
437dd68d79
- the Render state must be applied before performing a portal clear screen, because it would still be set to stencil drawing at this point.
2017-05-14 12:42:25 +02:00
Rachael Alexanderson
a7025b5563
Merge https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/version.h
2017-05-14 06:41:56 -04:00
Christoph Oelckers
ef7e4fe678
- draw empty portals in black, not the last set color.
2017-05-14 12:31:51 +02:00
Rachael Alexanderson
ac244b3229
Merge https://github.com/coelckers/gzdoom
2017-05-10 05:15:49 -04:00
Christoph Oelckers
2bf8e8f1c0
- fixed: InitClipper was missing a call to Clipper.Clear.
2017-05-09 12:20:49 +02:00
Christoph Oelckers
762ba13cd9
- store the last found OpenGL version in the INI so that modern GL related options can be removed when running old hardware with software rendering.
2017-05-08 19:30:51 +02:00
Christoph Oelckers
4a5fe65ce8
- added missing check for RenderStyle None to GL weapon drawer.
2017-05-08 19:13:18 +02:00
Rachael Alexanderson
0941cda7cc
Merge https://github.com/coelckers/gzdoom
2017-05-07 05:07:22 -04:00
Magnus Norddahl
81de951abc
- Fix missing include
2017-05-06 22:25:18 +02:00
Magnus Norddahl
f083109b51
- Add SSE code to OpenGLSWFrameBuffer::OpenGLPal::Update to workaround a broken auto-vectorizer in GCC
2017-05-06 22:03:32 +02:00
Christoph Oelckers
567c21cdeb
- fixed recursion in Dim functions. When the main worker function was renamed to DoDim the Super calls were not fixed for it.
2017-05-06 10:44:29 +02:00
Rachael Alexanderson
118976129d
Merge https://github.com/coelckers/gzdoom
2017-05-04 02:38:13 -04:00
Christoph Oelckers
99a61e74c7
- fixed: The first model ID was always initialized to 0, even if that model wasn't even present in the definition.
2017-05-04 00:37:43 +02:00
Rachael Alexanderson
5a450b5eaa
- fixed: +FLIPSPRITE works in mirrors in OpenGL now.
2017-05-03 15:56:33 -04:00
Rachael Alexanderson
00a4993654
- forgot to implement +SPRITEFLIP for OpenGL
2017-05-03 21:13:31 +02:00
Rachael Alexanderson
a9412ec815
Merge https://github.com/coelckers/gzdoom
2017-05-02 23:26:34 -04:00
Magnus Norddahl
e68da4cd6b
- Fix crash in glswfb if vid_hw2d is toggled off
2017-05-02 22:56:31 +02:00
Rachael Alexanderson
9fc2f805de
Merge https://github.com/coelckers/gzdoom
2017-04-27 14:29:28 -04:00
Christoph Oelckers
b5dc5ceb3c
- removed some unused static variables
2017-04-26 14:48:33 +02:00
Rachael Alexanderson
88f8c4afcc
Merge https://github.com/coelckers/gzdoom
2017-04-24 08:09:34 -04:00
Christoph Oelckers
ace0568d09
- now that SSE2 is a required feature for compiling on x86, DoBlending_MMX has no use anymore and could be removed, as could the checks for bRDTSC, which is an older hardware feature than SSE2. There's also little point printing pre-SSE2 hardware features because they can be assumed to be present on anything the code can run on.
2017-04-23 11:54:08 +02:00
Rachael Alexanderson
5d11c9962b
Merge commit '8db239d'
2017-04-18 11:33:52 -04:00
Christoph Oelckers
47bcd8aaa2
- added per-layer translucency support to the OpenGL PSprite drawer.
2017-04-15 17:25:46 +02:00
Rachael Alexanderson
997a62de36
Merge https://github.com/coelckers/gzdoom
2017-04-14 23:09:21 -04:00
Christoph Oelckers
47bb29bac6
- check the return value of ogl_LoadFunctions and abort if it indicates failure.
...
If this happens there is normally something very wrong on the system side so continuing is not advised.
2017-04-14 15:32:04 +02:00
Rachael Alexanderson
4b2b2af63e
Merge https://github.com/coelckers/gzdoom
2017-04-14 05:51:36 -04:00
Christoph Oelckers
dc5a5419fc
- took DCanvas and all its subtypes out of the DObject tree.
...
I have no idea why they were even in there, as they intentionally circumvented all GC related features - they declared themselves fixed if prone to getting collected, they all used OF_YesReallyDelete when destroying themselves and they never used any of the object creation or RTTI features, aside from a single assert in V_Init2.
Essentially they were a drag on the system and OF_YesReallyDelete was effectively added just to deal with the canvases which were DObjects but not supposed to behave like them in the first place.
2017-04-14 10:48:18 +02:00
Rachael Alexanderson
2c4552da42
Merge https://github.com/coelckers/gzdoom
2017-04-13 10:09:47 -04:00
alexey.lysiuk
c99cecea8e
Fixed warnings reported by GCC/Clang
...
src/p_pspr.cpp:363:37: warning: more '%' conversions than data arguments [-Wformat]
src/gl/textures/gl_texture.cpp:845:21: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
2017-04-13 10:40:44 +03:00
Rachael Alexanderson
a15031706d
Merge https://github.com/coelckers/gzdoom
2017-04-12 20:33:38 -04:00
Christoph Oelckers
6599e2c425
- moved the VM types into their own file and only include it where really needed.
2017-04-13 01:12:04 +02:00
Christoph Oelckers
e4d2380775
- moved all remaining fields from PClassActor to FActorInfo.
...
- added a few access functions for FActorInfo variables.
With PClassActor now empty the class descriptors can finally be converted back to static data outside the class hierarchy, like they were before the scripting merge, and untangle the game data from VM internals.
2017-04-12 00:07:41 +02:00
Christoph Oelckers
4afe2d4218
- moved OwnedStates and NumOwnedStates out of PClassActor.
2017-04-11 22:44:35 +02:00
Rachael Alexanderson
7040bc2156
Merge https://github.com/coelckers/gzdoom
2017-04-11 14:06:13 -04: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
00531cda49
Merge https://github.com/coelckers/gzdoom
2017-04-09 11:53:40 -04:00
Christoph Oelckers
18d6fb7f49
- fixed: USEACTORPITCH in the model code was still using inverted pitch.
2017-04-08 10:24:12 +02:00
Rachael Alexanderson
cecf41e4d0
Merge https://github.com/coelckers/gzdoom
2017-04-07 21:50:23 -04:00
Magnus Norddahl
9f180b29b9
- Remove GL_MAJOR_VERSION check for OpenGL ES as apparently not even this can be done right by driver writers
2017-04-08 00:19:39 +02:00
Rachael Alexanderson
a90692330b
Merge https://github.com/coelckers/gzdoom
2017-04-07 09:55:00 -04:00
Magnus Norddahl
73effc70bb
- The legacy OpenGL path resets the GLSL version, which in turn makes #version 0 crash the AMD driver. Old stuff that uses the legacy path will not get glswfb acceleration.
2017-04-07 15:45:08 +02:00
Magnus Norddahl
35c35fc26f
- Check if glCreateProgram or glCreateShader fails, because apparently AMD found a way to make exactly that happen
2017-04-07 15:27:04 +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
Magnus Norddahl
b7482e10e2
- Detect dinosaur OpenGL and refuse to use it
2017-04-06 23:34:37 -04:00
Magnus Norddahl
e690de25a8
- Use SDL_GL_GetProcAddress on platforms where the SDL is being used. Since SDL initialized OpenGL for us, it is the only reliable way of retrieving proc addresses.
...
- Check if ogl_LoadFunctions failed and make OpenGLSWFrameBuffer gracefully recover from that
2017-04-06 23:33:56 -04:00
Rachael Alexanderson
dc1695918e
- detect gl es shaders and request them
2017-04-06 23:29:15 -04:00
Magnus Norddahl
994740b3ae
- Add OpenGL ES 3 support to GL renderer
2017-04-07 04:09:04 +02:00
Magnus Norddahl
a9591f57a6
- Detect dinosaur OpenGL and refuse to use it
2017-04-07 03:03:21 +02:00
Magnus Norddahl
0376d4e8fc
- Use SDL_GL_GetProcAddress on platforms where the SDL is being used. Since SDL initialized OpenGL for us, it is the only reliable way of retrieving proc addresses.
...
- Check if ogl_LoadFunctions failed and make OpenGLSWFrameBuffer gracefully recover from that
2017-04-07 02:17:34 +02:00
Rachael Alexanderson
5851408803
Merge https://github.com/coelckers/gzdoom
2017-04-04 01:29:14 -04:00
Major Cooke
d3ef3b585b
- fixed: Flat sprites did not rotate their sprite angles when given the FLATSPRITE flag.
2017-04-03 17:06:33 +02:00
Rachael Alexanderson
12d39c74ef
Merge https://github.com/coelckers/gzdoom
2017-04-02 21:38:20 -04:00
alexey.lysiuk
659f75c84a
Avoid duplication of member in OpenGL software framebuffer class
2017-04-02 10:13:25 +03:00
Rachael Alexanderson
643bdac514
Merge https://github.com/coelckers/gzdoom
2017-04-02 02:34:32 -04:00
Magnus Norddahl
4268090738
- switch OpenGLSWFrameBuffer to use m_Lock instead of LockCount
2017-04-02 00:47:18 +02:00
Magnus Norddahl
0ed60b8df6
- fix OpenGLSWFrameBuffer::Begin2D
2017-04-01 22:14:04 +02:00
Rachael Alexanderson
2b2297b73e
Merge https://github.com/coelckers/gzdoom
2017-04-01 10:11:52 -04:00
Christoph Oelckers
54764c136d
- changed the 2D draw abort check to use a dedicated variable, that gets set in Begin2D and unset at the end of D_Display.
...
This is really all the extent where 2D draw operations may be allowed. Trying to detect this from other variables is not reliable.
2017-04-01 12:59:58 +02:00
alexey.lysiuk
59ae50aecb
Fixed compilation warning reported by GCC/Clang
...
src/gl/textures/gl_texture.cpp:691:25: warning: comparison of integers of different signs: 'unsigned int' and 'int' [-Wsign-compare]
2017-04-01 10:24:05 +03:00
Rachael Alexanderson
39826753f9
Merge https://github.com/coelckers/gzdoom
2017-03-30 02:11:03 -04:00
Christoph Oelckers
bde73fc530
- added automatic brightmaps.
...
Everything in the brightmaps/auto directory will automatically be assigned to the same-named texture.
2017-03-29 23:13:11 +02:00
Christoph Oelckers
01b095c911
- added colorization for untranslated fonts. This uses the light color of the vertices. The software rendered 2D code will ignore this infomation.
...
- added a virtual OnRetrun method to menus.
2017-03-29 21:22:05 +02:00
Christoph Oelckers
1d4ab0cc2a
- implemented proper scaling for the status bar itself.
...
This allows using the UI scale or its own value, like all other scaling values.
In addition there is a choice between preserving equal pixel size or aspect ratio because the squashed non-corrected versions tend to look odd, but since proper scaling requires ununiform pixel sizes it is an option.
- changed how status bar sizes are being handled.
This has to recalculate all scaling and positioning factors, which can cause problems if the drawer leaves with some temporary values that do not reflect the status bar as a whole.
Changed it so that the status bar stores the base values and restores them after drawing is complete.
2017-03-29 19:23:40 +02:00
Rachael Alexanderson
9f38b2b107
Merge https://github.com/coelckers/gzdoom
2017-03-28 22:40:40 -04:00
Magnus Norddahl
d160424aea
- added DFrameBuffer::HasBegun2D to allow scripting to test if 2D drawing is active (instead of using IsLocked, which may return false when vid_hw2d is active)
2017-03-29 00:45:53 +02:00
Christoph Oelckers
5e3e4a3bd1
- fixed: The wall spliter for 3D lights did not initialize the resulting colormap's fog density value.
2017-03-28 23:36:26 +02:00
Rachael Alexanderson
9da596cd9c
Merge https://github.com/coelckers/gzdoom
2017-03-28 16:29:07 -04:00
nashmuhandes
99d1581c27
Added "DontLightActors" flag for dynamic lights. Actors will not be illuminated by lights that are given this flag.
2017-03-28 21:33:16 +02:00
Christoph Oelckers
71fe4a83c9
- fixed: the translucent flat drawer used a bad condition for dynamic light processing which caused a problem with the GL 3.x lighting method.
2017-03-28 21:18:03 +02:00
Christoph Oelckers
f3db5f3803
- added a clipping rectangle to DCanvas that can be used independently of DrawTexture calls.
...
Currently this is only being used for draw operations that are not automap related, i.e. DrawLine, DrawPixel and FillSimplePoly are not subjected to it.
2017-03-28 13:06:24 +02:00
Rachael Alexanderson
71ad6c9651
Merge https://github.com/coelckers/gzdoom
2017-03-25 11:19:27 -04:00
alexey.lysiuk
093a05b588
Reset OpenGL 2D drawer state fully on each frame
...
https://mantis.zdoom.org/view.php?id=469
2017-03-25 11:32:39 +02:00
Rachael Alexanderson
733cf1acc5
Merge https://github.com/coelckers/gzdoom
2017-03-25 00:26:06 -04:00
Christoph Oelckers
6760e01a0d
- implemented the status bar's DrawString function and ported the fullscreen HUD part of the Strife status bar to use the new functionality.
2017-03-24 20:09:50 +01:00
Rachael Alexanderson
b747b0c3c6
- made gl_menu_blur into a menu option
...
- made bluramount also into a gameinfo option
- negative gl_menu_blur cvar now uses gameinfo option, 0 disables it
- removed gl_menu_blur_enabled since gl_menu_blur==0 does that anyway
- made gl_menu_blur default to -1 to use gameinfo option
- add default gameinfo bluramount options
2017-03-24 14:59:25 -04:00
Rachael Alexanderson
954f21f71d
- changed defaults
...
- moved CVARs to head of file as forward declaration
- FGLRenderer::BlurScene now checks if postprocessing is enabled before executing
2017-03-24 14:59:25 -04:00
Rachael Alexanderson
e49b549364
- added CVARs to control menu blur
...
- made blur effect menu only
2017-03-24 14:59:25 -04:00
Magnus Norddahl
93a6e4bc94
Add an aggressive blur pass for the scene
2017-03-24 14:59:25 -04:00
Christoph Oelckers
9bffe4ee50
- scriptified the main statusbar interface and the Strife status bar.
...
Note that the Strife status bar does not draw the health bars yet. I tried to replace the hacky custom texture with a single fill operation but had to find out that all the coordinate mangling for the status bar is being done deep in the video code. This needs to be fixed before this can be made to work.
Currently this is not usable in mods because they cannot initialize custom status bars yet.
2017-03-22 00:32:52 +01:00
Magnus Norddahl
fc3cb01029
- only ray test sprites on lights that are shadowmapped
2017-03-21 14:32:48 +01:00
Christoph Oelckers
f45371e231
- reverted the counter for the vertex angle cache to a simple incrementing global variable.
...
Using I_MSTime is not precise enough, because some camera textures can be done quicker. It was pointless anyway trying to make this multithreading-safe, the entire caching idea here makes no sense if two clippers can simultaneously work on the same level data without changing the memory organization and rendering it ineffective.
2017-03-20 01:21:33 +01:00
Christoph Oelckers
1031481167
- added some checks to exclude dynamic lights from being subjected to shadowmapping if they do not touch any one-sided lines from the back side. This condition is a requirement for a 1D shadowmap to even have an effect.
2017-03-20 00:34:19 +01:00
alexey.lysiuk
cb5ddeff25
Fixed compilation warnings reported by Clang
...
src/gl/scene/gl_clipper.h:150:23: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
src/gl/dynlights/gl_aabbtree.cpp:137:24: warning: using integer absolute value function 'abs' when argument is of floating point type [-Wabsolute-value]
src/gl/dynlights/gl_aabbtree.cpp:137:34: warning: using integer absolute value function 'abs' when argument is of floating point type [-Wabsolute-value]
src/gl/dynlights/gl_aabbtree.cpp:137:44: warning: using integer absolute value function 'abs' when argument is of floating point type [-Wabsolute-value]
src/gl/dynlights/gl_aabbtree.cpp:139:6: warning: using integer absolute value function 'abs' when argument is of floating point type [-Wabsolute-value]
src/gl/dynlights/gl_aabbtree.cpp:139:30: warning: using integer absolute value function 'abs' when argument is of floating point type [-Wabsolute-value]
src/gl/dynlights/gl_aabbtree.cpp:139:54: warning: using integer absolute value function 'abs' when argument is of floating point type [-Wabsolute-value]
src/gl/dynlights/gl_aabbtree.cpp:142:6: warning: using integer absolute value function 'abs' when argument is of floating point type [-Wabsolute-value]
src/gl/dynlights/gl_aabbtree.cpp:143:3: warning: using integer absolute value function 'abs' when argument is of floating point type [-Wabsolute-value]
src/gl/dynlights/gl_aabbtree.cpp:144:3: warning: using integer absolute value function 'abs' when argument is of floating point type [-Wabsolute-value]
src/gl/dynlights/gl_aabbtree.cpp:167:6: warning: using integer absolute value function 'abs' when argument is of floating point type [-Wabsolute-value]
src/gl/dynlights/gl_shadowmap.cpp:163:31: warning: '&&' within '||' [-Wlogical-op-parentheses]
src/p_saveg.cpp:367:16: warning: comparison of integers of different signs: 'unsigned int' and 'int' [-Wsign-compare]
src/p_saveg.cpp:402:60: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
src/p_setup.cpp:1553:39: warning: format specifies type 'ptrdiff_t' (aka 'long') but the argument has type 'int' [-Wformat]
src/scripting/zscript/zcc_compile.cpp:293:74: warning: field 'AST' will be initialized after field 'mVersion' [-Wreorder]
src/swrenderer/drawers/r_thread.cpp:113:21: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
2017-03-18 15:13:02 +02:00
Christoph Oelckers
c9296ead57
- moved the skybox texture files to the main textures directory.
2017-03-17 21:12:09 +01:00
Christoph Oelckers
fee18a6971
- fixed the attenuation check in gl_GetLight.
2017-03-17 20:16:49 +01:00
Christoph Oelckers
7d8d69d01b
- fixed: The clipper for the main scene may not be initialized before the camera textures have been drawn.
...
It looks like the memory management at use here is not capable of maintaining multiple instances simultaneously and the camera textures create another scene drawer so the initialization of the main scene drawer has to be delayed until after the camera textures are done.
2017-03-17 19:28:47 +01:00
Christoph Oelckers
ea1d6634f7
- moved the Zones array into FLevelLocals.
...
- replaced TStaticArray with regular TArrays.
They had incomplete implementations preventing proper cleanup of the level loading code. It makes more sense to add the missing methods to the regular TArray and use that.
This also makes some changes to how the game nodes are used to avoid creating a copy: If the head node's pointer is stored in a separate variable, no code needs to check which of the two arrays gets used.
2017-03-17 12:11:37 +01:00
Christoph Oelckers
fea4079b7c
- moved nodes into FLevelLocals.
2017-03-17 01:42:37 +01:00