Commit graph

3845 commits

Author SHA1 Message Date
Christoph Oelckers
53f4cd0108 - added objectcolor uniform. This will be used to hold the thingcolor for shader based rendering. 2014-05-11 16:06:25 +02:00
Christoph Oelckers
f3a9cb0cfa remove special texture creation for fullscreen colormaps.
On GL 3.x+ this isn't needed at all and on older hardware it causes performance issues, in particular with hires textures due to impossibility of precaching.
In addition it forces some really awkward handling of lighting for things that have their own color, like stenciled sprites or particles.

With this special case gone it will be possible to handle this case in a saner manner than it is right now.

As compensation for older hardware a fullscreen blend will be drawn over the entire screen. This won't be 100% accurate but it's preferable to keeping the current method.
2014-05-11 14:46:37 +02:00
Christoph Oelckers
5947584bff Merge branch 'master' into Glew_Version_For_Real 2014-05-11 13:29:37 +02:00
Christoph Oelckers
cd6d653b59 - fixed: the delayed state changer for the alpha function called glBlendFunc instead of glAlphaFunc. 2014-05-11 13:29:06 +02:00
Christoph Oelckers
09f4071436 Ok, it had to be done: Removed shader support for pre GLSL 1.3/GL 3.0 hardware. The compromises needed to accomodate these are just too bad and would block any attempt at streamlining the code. 2014-05-11 13:27:51 +02:00
Christoph Oelckers
92b9814460 Merge branch 'master' into Glew_Version_For_Real 2014-05-11 09:17:46 +02:00
Christoph Oelckers
a42cde0837 - removed #include of glxew.h because it's not used.
- removed some unused functions from gl_interface.cpp which were causing problems when compiling on Linux.
2014-05-11 09:17:18 +02:00
Christoph Oelckers
f7404d20fb - add vertex buffer based drawing for all walls and flats. 2014-05-11 01:23:27 +02:00
Christoph Oelckers
7d3beb665b - rewrote vertex buffer code to require GL_ARB_BUFFER_STORAGE extension.
This means it won't work anymore on anything that doesn't support OpenGL 4.0, but I don't think this is a problem. On older NVidia cards performance gains could not be seen and on older AMDs using the vertex buffer was even worse as long as it got mixed with immediate mode rendering.
2014-05-10 21:47:07 +02:00
Christoph Oelckers
b09405a8bd - changed rendering of glowing walls so that it doesn't require an additional vertex attribute, just pass the floor and ceiling planes as uniforms. 2014-05-10 17:09:43 +02:00
Christoph Oelckers
64d991b9b3 Merge branch 'master' into Glew_Version_For_Real 2014-05-10 15:29:06 +02:00
Christoph Oelckers
7c180e5094 Merge branch 'master' of https://github.com/rheit/zdoom 2014-05-08 11:30:12 +02:00
Christoph Oelckers
458e1b1be2 - changed sound lookup for ZSDF dialogues so that it first checks the svox/ namespace before using the global one. 2014-05-08 11:29:45 +02:00
Christoph Oelckers
a7f8f7c18b Merge branch 'master' of https://github.com/rheit/zdoom 2014-05-08 10:35:10 +02:00
Christoph Oelckers
ea7fb936a8 - fixed: memory allocation for file names in 7z archives was broken. Changing it to use TArray instead of alloca makes it work. 2014-05-08 10:33:32 +02:00
Christoph Oelckers
6988156d0f Merge branch 'master' of https://github.com/rheit/zdoom 2014-05-08 09:49:00 +02:00
Christoph Oelckers
1d4ea9f162 - removed the __asm nop breakpoints for debugging. They not only do not work on non-MSVC but also not on 64 bit. 2014-05-08 09:48:39 +02:00
Christoph Oelckers
2223c12938 - added new ChangeActorAngle/ChangeActorPitch ACS functions because the new required 'interpolate' parameter cannot be added to the existing SetActorAngle/SetActorPitch functions without breaking old scripts. 2014-05-08 09:43:58 +02:00
Christoph Oelckers
63a0e01c6a Merge branch 'interpview_optin' 2014-05-08 09:17:00 +02:00
Christoph Oelckers
67ebbe3ed4 made some changes to turn the CF_INTERPVIEW flag when changing angles into an op-in feature instead of making it automatic. 2014-05-08 09:15:56 +02:00
Christoph Oelckers
890e9ecddd - typo in resurrection code. 2014-05-07 17:18:44 +02:00
Christoph Oelckers
fcbb72a4d4 - removed redundant variable. 2014-05-06 09:59:56 +02:00
Edward Richardson
90e9937b71 Stop NetUpdate from corrupting demo playback 2014-05-05 22:47:48 +12:00
Christoph Oelckers
93aa1ea2c4 fixed some issues with reviving monsters
- fixed: Thing_Raise didn't properly set the spawn health.
- fixed: Thing_Raise did not the CanRaise state flag.
- fixed: Reviving a monster must also reset the damage type.
- fixed: Thing_Raise reset the actor after calling the raise state, but it should be before, just as the Archvile code is doing.
- consolidated some common code of Thing_Raise and Archvile resurrection into AActor methods.
2014-05-05 11:24:20 +02:00
Christoph Oelckers
a4076ffe38 Merge branch 'master' of https://github.com/rheit/zdoom 2014-05-03 12:29:18 +02:00
Christoph Oelckers
a9f1b54d2d - fixed: since A_LightGoesOut alters a sector's floor plane it must also alter the TexZ for that sector's floor. 2014-05-03 10:12:25 +02:00
Christoph Oelckers
34360e7975 Merge branch 'upstream' of https://github.com/Edward850/zdoom 2014-05-02 17:31:02 +02:00
Edward Richardson
104a07d461 Make sure use_staticrng is false if not needed 2014-05-03 03:27:14 +12:00
Edward Richardson
6183f8125f Don't change RNG in demos incase they are static 2014-05-03 03:01:49 +12:00
Edward Richardson
d6af8dc352 Added static RNGseed control 2014-05-03 03:01:40 +12:00
Christoph Oelckers
314225f1b0 - don't depend on stdint.h because older MSVC versions do not have it. 2014-05-01 12:30:56 +02:00
Christoph Oelckers
cc4305e86c Merge branch 'master' of https://github.com/rheit/zdoom 2014-04-30 01:29:26 +02:00
alexey.lysiuk
3af7d8a245 Added support for LZMA2 compression method in .7z archives
Updated LZMA SDK to version 9.20
http://www.7-zip.org/sdk.html
http://downloads.sourceforge.net/sevenzip/lzma920.tar.bz2
2014-04-27 13:05:40 +03:00
alexey.lysiuk
6b26b710b8 Added simple check for unsupported compression method in .7z files 2014-04-27 10:23:20 +03:00
alexey.lysiuk
3fa89b4e9f Fixed crash on attempt to load corrupted data file
Instance of FileReader is no longer destructed when header of data file is valid but complete loading of file fails
Loading of truncated .zip file is the simplest test case
2014-04-27 10:18:50 +03:00
Gaerzi
a0d4bc0a89 Merge branch 'master' of https://github.com/rheit/zdoom 2014-04-25 01:30:03 +02:00
Christoph Oelckers
3f8c7239af Merge branch 'master' of https://github.com/Gaerzi/zdoom 2014-04-24 09:41:54 +02:00
Gaerzi
7c3660087e Restore shadow renderstyle.
It was accidentally lost in r3085.
2014-04-22 13:32:33 +02:00
Gaerzi
265917c923 Add shadow and subtract styles to ACS.
There is a matching pull request for rheit/acs.
2014-04-22 13:31:55 +02:00
alexey.lysiuk
1c50b5dd6f Fixed initialization of Hexen-style things
Recently added pitch and roll members were not initialized with zeroes when loading Hexen-style maps
At least, hitscan attack can be fired in random direction because of this
2014-04-20 13:37:59 +03:00
Christoph Oelckers
c7354c571f Merge branch 'master' into GLEW_VERSION 2014-04-18 12:16:12 +02:00
Christoph Oelckers
97c7f2c5ce Merge branch 'master' of https://github.com/rheit/zdoom 2014-04-18 12:13:29 +02:00
Christoph Oelckers
7cb828d763 Merge branch 'slowstate' of https://github.com/Gaerzi/zdoom 2014-04-18 09:46:23 +02:00
Christoph Oelckers
584dd78ba9 Merge branch 'master' of https://github.com/Edward850/zdoom 2014-04-16 16:42:43 +02:00
Edward Richardson
897d87a6a3 Invisibility would could P_LookForPlayers early 2014-04-17 01:13:18 +12:00
Edward Richardson
d855bd66b3 Fixed P_LookForPlayers scanning redundancies
- Players could be scanned multiple times, repeating expensive tests
- Players could be skipped completely and become invisible as a result
2014-04-17 00:46:33 +12:00
Christoph Oelckers
29231fa3b7 Merge branch 'master' of https://github.com/rheit/zdoom 2014-04-16 11:34:32 +02:00
Christoph Oelckers
48b926e5b4 - check +logfile explicitly at the start of execution. Due to the custom CVAR rewrite it would get called so late that it'd miss half of the log.
- added version check for Windows 8. I also would have liked to add 8.1 but due to some incredibly stupid changes in the version API it's no longer possible to reliably retrieve the correct Windows version for later builds.
2014-04-16 09:53:07 +02:00
Gaerzi
83182b703d Added slow monsters, the inverse of fast monsters
This is a skill setting only, no "always slow" or "never slow" actor
flags, and no DM flags.
2014-04-15 21:01:49 +02:00
Gaerzi
c54f5571ea Typo. 2014-04-15 17:24:01 +02:00
Gaerzi
6f2fd8edbf Hexen also needs to init 0 fields. 2014-04-15 17:22:56 +02:00
Gaerzi
8e3360453f Hexen too. 2014-04-15 17:18:55 +02:00
Gaerzi
e5578934ad Init new non-0 fields for non-UDMF maps. 2014-04-15 17:16:33 +02:00
Christoph Oelckers
94b06900cb - got rid of a lot of stuff that's no longer required with GLEW.
- replaced GLUs texture scaling with our own function. This is only used to scale down textures larger than what the hardware can handle so we do not need a dependency to an essentially deprecated library for it.
2014-04-15 11:59:41 +02:00
Christoph Oelckers
6a3a159e09 Merge branch 'master' into GLEW_VERSION 2014-04-15 09:37:58 +02:00
Christoph Oelckers
dbefac81d8 Merge branch 'master' of https://github.com/rheit/zdoom 2014-04-15 09:26:05 +02:00
Christoph Oelckers
4e683d360d Merge branch 'master' of https://github.com/Edward850/zdoom 2014-04-15 09:22:50 +02:00
Christoph Oelckers
2205ca606f Merge branch 'master' of https://github.com/rheit/zdoom 2014-04-15 09:18:04 +02:00
Edward Richardson
4270838613 CANRAISE state definition
CANRAISE state for allowing a monster to be resurrected without an
infinite frame
2014-04-12 22:02:19 +12:00
Gaerzi
101107b1e5 Updated documentation 2014-04-12 10:55:10 +02:00
Gaerzi
4cac599b88 Less flags, more generic properties 2014-04-11 00:58:59 +02:00
Gaerzi
580094a792 More editing flags
PSX-inspired flags to change the render styles of monsters (and other
things).
2014-04-10 12:32:23 +02:00
Christoph Oelckers
bbb41e869c Merge branch 'master' of https://github.com/Edward850/zdoom 2014-04-07 19:54:30 +02:00
Edward Richardson
ca93e04de3 Added GetActorPowerupTics ACS function 2014-04-07 23:23:55 +12:00
Christoph Oelckers
69af73d9b9 - alternative configuration using GLEW to get extension functions. This requires GL 2.0, though so it won't be promoted to the mainline for the time being.
- removed all pre GL 2.0 support.
2014-04-06 14:35:44 +02:00
alexey.lysiuk
878dcdc0a4 Fix loading of lumps from directory on OS X
Use POSIX-compliant opendir() / readdir() functions instead fts_open() / fts_read()
Unlike Linux version, on OS X fts_read() inserts extra slash character between source directory and traversed entry paths
2014-04-06 12:56:51 +03:00
Christoph Oelckers
d74f045004 Merge branch 'master' of https://github.com/rheit/zdoom
Conflicts:
	game-music-emu/game-music-emu.vcproj
2014-04-05 15:37:10 +02:00
Randy Heit
940794929c Remove more VC++ warnings 2014-04-03 17:51:15 -05:00
Randy Heit
fc97584c69 Disable warning C4200 on VC++
- This warning is about using zero-sized arrays in structs (aka flexible
  member arrays). It's standard-enough for our purposes, so don't warn
  about it, since neither GCC nor Clang do.
2014-04-03 16:50:20 -05:00
Randy Heit
43fe317dbe Use flexible array members for structs that end with var-sized arrays
- Since Clang++, G++, and VC++ all support this extension (even though it's
  technically officially only part of C99), use it. It lets Clang's array-
  bounds checker know that these are meant to be accessed out of their so-called
  "bounds".
2014-04-03 16:33:33 -05:00
Christoph Oelckers
47406a3406 - I don't think it's a good idea to put a 64 MB lookup table into the static data segment, if it's for a piece of code most people will never use... 2014-04-03 23:02:43 +02:00
Christoph Oelckers
e446a8eb30 Merge branch 'master' of https://github.com/coelckers/gzdoom 2014-04-03 22:56:50 +02:00
Gaerzi
0aba6e09f3 Disambiguate which abs type we want. 2014-04-03 20:14:38 +02:00
Christoph Oelckers
072db7920d Merge branch 'master' of https://github.com/rheit/zdoom 2014-04-02 23:51:24 +02:00
Christoph Oelckers
59eede6e6c Merge branch 'master' of https://github.com/coelckers/gzdoom 2014-04-02 23:49:34 +02:00
Gaerzi
7261af1d9f Don't define HQX_API to anything on Windows 2014-04-02 20:23:17 +02:00
Edward Richardson
546ae759fd Cleanup old prediction fix development code 2014-04-02 21:25:45 +13:00
Edward Richardson
be33d2894a Fixed prediction thinglist order restoration
Prediction didn't take sector_thinglist and thinglist order into
account.
This notably broke the order in which things were damaged.
2014-04-02 21:25:12 +13:00
Gaerzi
3e41685536 Merge pull request #6 from galtgendo/for-upstream
use portable hqx code
2014-04-01 23:57:42 +02:00
Christoph Oelckers
a9bea7d774 Merge branch 'getsectorz_take2' of https://github.com/crimsondusk/zdoom 2014-03-31 19:12:47 +02:00
Christoph Oelckers
edcc257667 fixed: APROP_StencilColor was not implemented for CheckActorProperty. 2014-03-31 16:39:34 +02:00
Christoph Oelckers
bd3bd0ed22 Merge branch 'upstream' of https://github.com/Edward850/zdoom 2014-03-31 16:36:54 +02:00
Christoph Oelckers
e983649731 Merge branch 'master' of https://github.com/rheit/zdoom 2014-03-31 16:02:43 +02:00
Edward Richardson
016cc7ba96 Missed space in flags7 line. 2014-03-31 23:57:43 +13:00
Edward Richardson
79f6e77e2b Remove garbage characters from info CCMD 2014-03-31 23:51:18 +13:00
Christoph Oelckers
6e87ee80e4 Merge branch 'for-upstream' of https://github.com/galtgendo/gzdoom 2014-03-29 12:04:38 +01:00
galtgendo
8f97e96af1 silence a noisy warning 2014-03-28 01:54:42 +01:00
galtgendo
4909aa750f Use more portable hqx code from googlecode hqx
Conflicts:
	src/CMakeLists.txt
2014-03-28 01:49:53 +01:00
crimsondusk
d7a2435703 - the ACS functions GetSectorFloorZ and GetSectorCeilingZ now interpret tag=0 as 'any sector' and return the z height of whatever sector is at those coordinates. 2014-03-27 16:34:32 +02:00
Edward Richardson
697ef02871 Added StencilColor to Set/GetActorProperty 2014-03-28 00:23:12 +13:00
Edoardo Prezioso
5789ac6245 - Fixed new[]/delete mismatch in FNodeBuilder
Found with address sanitizer.
2014-03-16 13:21:08 +01:00
Christoph Oelckers
f96f4cb0a2 Merge branch 'master' of https://github.com/rheit/zdoom 2014-03-15 12:24:16 +01:00
alexey.lysiuk
6aa56202b6 Fix two issues with GL nodes handling
Fix inability to load GL nodes for maps with names longer than 5 characters.
Fix inability to load GL nodes from external GWA files.
2014-03-15 13:17:22 +02:00
Edward Richardson
40771d22a5 Player prediction fixes in PIT_CheckThing
Player prediction could end up executing functions for TOUCHY things or
modify velocities when BLASTED, among other things.
2014-03-15 04:15:30 +13:00
Edward Richardson
55362d2296 Merge remote-tracking branch 'upstream/master' 2014-03-14 20:59:24 +13:00
Edward Richardson
9dad8bdbbe Clear old camera from previous level
The sound code could accidentally reference an old invalid camera during
level spawn
2014-03-13 18:27:39 +13:00
Christoph Oelckers
f44dc926e6 - fixed uniqueTid logic - patch by Edward-San. 2014-03-09 10:02:07 +01:00
Edward Richardson
79abe2d4e9 Made onground a player property
"onground" was a global, despite being treated as a player property and
crossed with instances from other players or prediction.
2014-03-03 01:00:47 +13:00
Edoardo Prezioso
1fb757f6f1 - Fixed useless 'array != NULL' check.
- 'notranslate != NULL' is completely useless, because 'notranslate' is an array, hence removed.
- I interpreted 'SbarInfoScript != NULL' as a typo, since 1)in the next expression inside the condition there's a dereference to 'SBarInfoScript[SCRIPT_CUSTOM]' and 2)'SBarInfoScript[SCRIPT_CUSTOM]' is checked against 'NULL', in line 352, and then dereferenced when introducing 'cstype'.
2014-03-01 22:27:40 +01:00
Christoph Oelckers
4a23b97963 Merge branch 'master' of https://github.com/rheit/zdoom 2014-03-01 14:41:00 +01:00