Commit graph

7824 commits

Author SHA1 Message Date
Magnus Norddahl
d5b122b092 Fix GetScreenshotBuffer grabbing from wrong location 2016-08-14 09:05:48 +02:00
Magnus Norddahl
c817979eae Remove GetTrueHeight from GL renderer and concentrate all viewport calculations in SetOutputViewport 2016-08-14 09:05:48 +02:00
Christoph Oelckers
353a464f5b - fixed: The 2D texture drawer did not reset the render state's color so any previously set desaturation would persist. 2016-08-13 22:15:00 +02:00
Christoph Oelckers
34c62c4d33 Merge branch 'master' of https://github.com/rheit/zdoom 2016-08-12 09:23:24 +02:00
Major Cooke
9dd458030e This isn't needed. It's already checked at this point. 2016-08-12 09:17:21 +02:00
Major Cooke
7ffccd0009 Fixed: RGF_KILLED was not part of the mask.
- Greatly optimized DoRadiusGive by putting actor flag checking first ahead of pointer, classname and species checking.
2016-08-12 09:17:20 +02:00
Major Cooke
ec14dd94a7 A_Explode now returns the number of actors damaged and can be used in expressions.
- Enemies that do not take damage in any way are not counted.
2016-08-12 09:17:20 +02:00
yqco
ee7d933ed6 Add assert for previous I_Error condition 2016-08-11 04:47:17 -06:00
yqco
054f5c963e Use verbose error message with DECORATE array indices 2016-08-11 04:22:37 -06:00
Christoph Oelckers
0fdd80eae7 - removed debug Printf. 2016-08-10 16:32:31 +02:00
Christoph Oelckers
0e5a3ebe50 - fixed bad function call in vertex buffer init code. 2016-08-10 00:35:42 +02:00
Christoph Oelckers
36a4352867 Merge branch 'master' of https://github.com/rheit/zdoom 2016-08-09 20:15:35 +02:00
Christoph Oelckers
b4e712ab01 - made disabling the push window check a real compatibility option.
No idea why this was a hidden one, this one definitely needs to be in the menu.

- set some required compatibility options for Super Sonic Doom.
2016-08-09 20:15:13 +02:00
Christoph Oelckers
7104b01193 - added Hexen compatible handling to specials that stop perpetual sector movement.
This uses the same logic as Eternity.
2016-08-09 17:09:12 +02:00
Christoph Oelckers
054dd8e5d9 Merge branch 'master' of https://github.com/rheit/zdoom 2016-08-09 15:11:41 +02:00
Christoph Oelckers
6b27d0c3ba - fixed: FPolyObj::RecalcActorFloorCeil altered the floorz of all actors in the same blockmap block as the polyobject, even when they were nowhere near its bounding box.
This fix is still incomplete, it should really discard everything outside the polyobject, not outside its bounding box, but at least it eliminates the most severe occurences of dislocated items.
2016-08-09 15:11:11 +02:00
yqco
b2a6512981 Fix partial initialization in ACS PickActor function 2016-08-09 02:11:13 -06:00
Christoph Oelckers
30b49572e1 Merge branch 'master' of https://github.com/rheit/zdoom 2016-08-09 10:07:41 +02:00
Christoph Oelckers
19b65195ea - added an internal compatibility option to disable setting the line ID for the Plane_Align special.
There have been reports for some Skulltag maps a few years back and I just ran across an old beta version of a map that got completely broken by this.
2016-08-09 10:07:06 +02:00
Christoph Oelckers
56a60ebe85 - restored a line that got accidentally deleted. 2016-08-08 20:47:54 +02:00
Christoph Oelckers
e5f88a9883 - fixed: The textured automap was not using correct light levels.
In order for the externally passed vertex attribute to work the buffer's color attrib array needs to be disabled for these.
2016-08-08 16:18:07 +02:00
Christoph Oelckers
675822004d - use static buffer data and a uniform to handle the texture positioning of the present shader.
That's again one less write access to the buffer. The uniform method was chosen because this way a buffer update can be completely avoided, and setting a single uniform is a lot cheaper and simpler to handle.
2016-08-08 16:06:02 +02:00
Christoph Oelckers
8daaf61160 - predefine the vertex data for the blend overlay which will never change throughout the lifetime of the GLRenderer object. 2016-08-08 14:24:48 +02:00
Christoph Oelckers
d7c0dda722 Merge branch 'master' of https://github.com/rheit/zdoom 2016-08-08 13:08:41 +02:00
Christoph Oelckers
d62d345a7b - fixed: The cosine of 0° is 1, not 0, as the portal code assumed for linked portals. 2016-08-08 13:06:29 +02:00
Christoph Oelckers
9c9edbffdb - on older ATI drivers where the clip planes are broken, only disable the clip planes themselves, but not OpenGL 3.x so that dynamic lights still work as intended.
- only disable clip planes on Windows, but not on Linux or macOS.
- If a driver reports full OpenGL 4.5 support, assume that all features are working properly.
2016-08-08 12:55:09 +02:00
Magnus Norddahl
2ac91f0c5a Fix Nvidia driver ignoring wglSwapIntervalEXT 2016-08-08 12:22:40 +02:00
alexey.lysiuk
9ab9548723 Additional fix for splitting of complex wall in compatibility renderer
warp 2720 -200 -32 on Extreme Terror
https://www.doomworld.com/idgames/levels/doom2/Ports/d-f/exterror
2016-08-08 12:19:37 +02:00
Christoph Oelckers
def3ad7533 - refactored all 2D drawing to use its own vertex buffer which does not need to be mapped permanently. 2016-08-08 12:13:09 +02:00
Christoph Oelckers
9a5cbbe6d8 Merge branch 'master' of https://github.com/rheit/zdoom 2016-08-07 22:13:55 +02:00
Leonard2
b97024b710 The return statement now accepts any expression as its return value
So something like 'return ++user_x;' is now possible
Admittedly this needed quite a bit of refactoring mainly due to the fact that return types now have to be checked after resolving the function rather than before
2016-08-07 22:10:02 +02:00
Leonard2
e79c0225ed Added all compound assignment operators to DECORATE 2016-08-07 22:10:02 +02:00
Leonard2
90cc79a902 Added the direct assignment operator to DECORATE 2016-08-07 22:10:01 +02:00
Leonard2
8437313e7c Added post/pre increment/decrement operators to DECORATE 2016-08-07 22:10:01 +02:00
Leonard2
2ef51d0d50 Re-allow casts in sequences 2016-08-07 22:10:00 +02:00
Leonard2
db9f4c1385 Re-allow indexes as state parameter in sequences 2016-08-07 22:10:00 +02:00
Leonard2
a4142ad9fb Re-allow action function calls with no argument list in sequences 2016-08-07 22:09:59 +02:00
Leonard2
078881a941 Parse statements as expressions in sequences
This will be needed for assignment operators to work
2016-08-07 22:09:59 +02:00
Christoph Oelckers
ab837b608d - compatibility optioned triggering sector actions by indirectly initiated teleports
There's several old maps depending on this not happening.

- Set the option for Hell's Twisted Influence Part 1.
2016-08-07 22:04:16 +02:00
Edoardo Prezioso
5a66fdf9be - Hide Clang -Winconsistent-missing-override warnings in non-Apple targets, too. 2016-08-07 20:55:16 +02:00
alexey.lysiuk
5b079dd40b Fixed wrong height of player coordinates text 2016-08-07 11:32:55 +02:00
Magnus Norddahl
d4615861ae Fix missing FGLRenderBuffers::IsEnabled checks 2016-08-07 00:41:17 +02:00
Christoph Oelckers
04c59b434b - renamed WipeVertexBuffer to FSimpleVertexBuffer because this will be useful elsewhere, too. 2016-08-07 00:40:31 +02:00
Christoph Oelckers
52537b0af2 Merge branch 'master' of https://github.com/rheit/zdoom 2016-08-06 20:57:46 +02:00
Christoph Oelckers
fd7b833ad5 - added some helper code mainly designed to help GZDoom maintain the vertex buffer for the textured automap. 2016-08-06 19:20:41 +02:00
Christoph Oelckers
8f0629932d - ImmRenderBuffer is not needed anymore. 2016-08-06 14:29:21 +02:00
Christoph Oelckers
6a66d0255d - use a dedicated vertex buffer for rendering the wipes.
- fixed: The postprocessing shaders clobbered the render state's vertex buffer info by bypassing and not notifying it of the change.
2016-08-06 14:12:40 +02:00
Christoph Oelckers
7576e85cef - force use of shaders on all hardware, unless -noshader is specified.
Right it's only for easy testing, so only the code that does the feature checking has been disabled.
2016-08-06 13:06:55 +02:00
Christoph Oelckers
2e555e6dab - use client arrays on compatibility profiles instead of calling glBegin/glEnd.
This eliminates most behavioral differences for FFlatVertexBuffer between both operating modes, now the only difference is where the buffer is located.
2016-08-06 12:03:16 +02:00
Magnus Norddahl
346badf25f Moved state to FGLPostProcessState and merged vertex shaders 2016-08-06 11:51:08 +02:00
Christoph Oelckers
13a2bf57e5 - fixed vertex coordinate ordering for the sky cubemap.
This was done differently for FFlatVertex and FSkyVertex which caused a switch of the y and z coordinates for the skybox image.
2016-08-06 11:47:03 +02:00
Christoph Oelckers
5b201287fa - fixed bad #pragma pack combination in hqnx_asm_Image.h 2016-08-05 15:27:35 +02:00
Christoph Oelckers
09e40840b5 Merge branch 'master' of https://github.com/rheit/zdoom 2016-08-05 15:15:11 +02:00
Magnus Norddahl
a893013dbb Adds HUD quadruple scale and a scale slider for the crosshair 2016-08-05 12:20:34 +02:00
Leonard2
01fb2eaecc Fixed a typo in FxBoolCast::Emit 2016-08-05 12:16:13 +02:00
Leonard2
73d0ed78fe Fixed: the game could crash while resolving expressions in some places 2016-08-05 12:16:13 +02:00
Leonard2
4a859393fe Fixed: the game could crash while parsing expressions in some places 2016-08-05 12:16:12 +02:00
Christoph Oelckers
9229146eeb - fixed: DFloor set the 'gap' for one wrong movement type. 2016-08-05 12:13:47 +02:00
Christoph Oelckers
13527fdd0a Merge branch 'lensshader' of https://github.com/dpjudas/zdoom 2016-08-05 00:58:14 +02:00
Magnus Norddahl
976a78429e Simplify post process buffer handling 2016-08-04 17:16:49 +02:00
Christoph Oelckers
1d434add50 - fixed: monsters which were made friendly by the MBF map flag lost their friendliness when being revived with Thing_Raise. 2016-08-04 17:14:31 +02:00
Magnus Norddahl
6fc7596d52 Fix aspect ratio and texture clipping in lens shader 2016-08-04 15:47:15 +02:00
Christoph Oelckers
21536781a9 - forgot to save this. 2016-08-04 13:01:42 +02:00
Christoph Oelckers
63ad7d99d1 - fixed: The dynamic light buffer's behavior needs to obey the gl.lightmethod variable, and not depend on presence of persistently mapped buffers.
Since there is a command line switch to revert to the lower behavior it can well be that they do not match.
2016-08-04 12:55:21 +02:00
Christoph Oelckers
7ba6269450 - changed rendering of sky cubemaps to use precalculated vertex data from the SkyVertexBuffer. 2016-08-04 12:16:53 +02:00
Christoph Oelckers
c1a4dd74c4 - added handling for Eternity's 'gap' parameter to:
Ceiling_LowerToFloor
Ceiling_LowerToHighestFloor
Ceiling_ToFloorInstant
Floor_RaiseToCeiling
Floor_RaiseToLowestCeiling
Floor_ToCeilingInstant
2016-08-03 12:59:40 +02:00
Christoph Oelckers
d8ab0b40dc Merge branch 'master' of https://github.com/rheit/zdoom 2016-08-03 12:17:55 +02:00
Christoph Oelckers
95c3464973 - properly handle 3D floors with inverted planes in the list sorter. 2016-08-03 12:17:22 +02:00
Magnus Norddahl
6b9529d70f Added lens distortion shader 2016-08-02 17:32:21 +02:00
Magnus Norddahl
43e577ce79 Merge remote-tracking branch 'gzdoom_upstream/master' into postprocess_vbo_bind_fix
# Conflicts:
#	src/gl/renderer/gl_postprocess.cpp
2016-08-02 10:00:53 +02:00
Magnus Norddahl
5a67ae6021 Fix missing VBO bind calls 2016-08-02 00:27:01 +02:00
Magnus Norddahl
f980a1f42b Fix wrong UV calculations when resizing or maximizing window 2016-08-01 15:12:13 +02:00
Christoph Oelckers
8aebfdb3ab - fixed: gl_bloom_amount may never be 0. 2016-08-01 11:29:28 +02:00
Magnus Norddahl
e8c98a5901 No gamma and player sprites on screenshots 2016-07-31 16:56:41 +02:00
Magnus Norddahl
7709db4bb0 Fix broken viewport/backbuffer location for WriteSavePic 2016-07-31 16:23:21 +02:00
Magnus Norddahl
a6354c74cf Fix incorrect viewport location when not using fullscreen HUD 2016-07-31 13:23:49 +02:00
alexey.lysiuk
d3457f4508 Implemented hardware gamma support for macOS
Hardware gamma is limited to main display only, use shader-based correction for other displays
2016-07-31 12:19:08 +03:00
Christoph Oelckers
a69182f9ef Merge branch 'master' of https://github.com/rheit/zdoom 2016-07-31 09:19:36 +02:00
Christoph Oelckers
20f4975e2b Merge branch 'blurshader_120_fix' of https://github.com/dpjudas/zdoom 2016-07-31 09:17:28 +02:00
Magnus Norddahl
849e80074e Added GLSL 120 fallback support 2016-07-31 03:54:16 +02:00
Magnus Norddahl
b789aaa0eb Fix binding error that Nvidia didn't complain about but Intel on Mac does 2016-07-31 03:16:48 +02:00
Leonard2
c0d3eb997a Fixed: the instant weapon switch flag didn't work anymore 2016-07-30 23:50:14 +02:00
Christoph Oelckers
c93204cace Merge branch 'master' of https://github.com/coelckers/gzdoom 2016-07-30 22:09:56 +02:00
Christoph Oelckers
bc51e98612 Merge branch 'blackscreenfix' of https://github.com/dpjudas/zdoom 2016-07-30 20:28:41 +02:00
Magnus Norddahl
1682b02c67 Fix glBindSampler state messing up post processing shaders 2016-07-30 19:54:20 +02:00
Christoph Oelckers
124c109e18 Merge branch 'multisamplingbuffers' of https://github.com/dpjudas/zdoom 2016-07-30 16:35:19 +02:00
Magnus Norddahl
cfc20d1198 Added multisample support to FGLRenderBuffers and added gl_multisample to the menus 2016-07-30 15:33:30 +02:00
alexey.lysiuk
bd3fd22ac9 Do not use unicode characters in macOS console window
The same characters as in stdout are now used to draw bars in console window on macOS
All messages are treated as in ISO Latin 1 encoding and bars looked like garbage output
2016-07-30 16:21:48 +03:00
alexey.lysiuk
7de242930a Removed obsolete gamma correct shader used on macOS only 2016-07-30 15:30:35 +03:00
alexey.lysiuk
cbe0a34f0b Fixed usages of abs() function with double arguments
Clang no longer issues "warning: using integer absolute value function 'abs' when argument is of floating point type"
2016-07-30 14:03:57 +02:00
Christoph Oelckers
39059b3b5c Merge branch 'master' of https://github.com/coelckers/gzdoom 2016-07-30 13:26:37 +02:00
Christoph Oelckers
0c8a4689b8 Merge branch 'master' of https://github.com/rheit/zdoom 2016-07-30 13:26:25 +02:00
Christoph Oelckers
5ddee98e70 - fixed: Voxels with scaled to 0 caused a division by zero crash. 2016-07-30 13:19:02 +02:00
alexey.lysiuk
0648ef693f Fixed compilation with Clang and GCC
No more "error: cannot pass object of non-trivial type 'FString' through variadic method; call will abort at runtime"
2016-07-30 13:04:16 +02:00
alexey.lysiuk
c0b86278e3 Removed old cruft from macOS OpenGL backend
The only thing left unimplemented is gl_smooth_rendered CVAR
2016-07-30 12:57:30 +03:00
Christoph Oelckers
b52d457146 Merge branch 'master' of https://github.com/coelckers/gzdoom 2016-07-30 11:45:19 +02:00
alexey.lysiuk
e2a2d38a25 Removed redundant comparison in compatibility renderer
Clang no longer reports "warning: comparison of array 'this->tcs' not equal to a null pointer is always true"
2016-07-30 10:25:42 +03:00
Xaser Acheron
a1a0da1f13 added SWF_SELECTPRIORITY flag to A_SelectWeapon 2016-07-29 18:48:54 -05:00
Major Cooke
36705b0f04 Added GZDoom version of SpriteAngle and SpriteRotation. 2016-07-30 00:33:33 +02:00
Christoph Oelckers
50765f8b79 Merge branch 'master' of https://github.com/rheit/zdoom 2016-07-30 00:32:29 +02:00