Commit graph

11958 commits

Author SHA1 Message Date
alexey.lysiuk
89980d9e77 Fixed linking with GCC and Clang toolchains 2017-08-12 14:41:23 +03:00
Christoph Oelckers
ba9cf02385 - added a user reserved range of statnums from 70-90 2017-08-12 13:08:11 +02:00
Christoph Oelckers
f52e767b51 - fixed: a destination-less line portal should be ignored by the sight checking code. 2017-08-12 12:51:45 +02:00
Christoph Oelckers
4261a0c592 - print a warning if a decal definition cannot find an animator.
This is important because DECALDEF cannot tentatively find animators declared after the decal.
2017-08-12 12:30:42 +02:00
Christoph Oelckers
aa8424982c - fixed: The color for untranslated font was missing its alpha channel. 2017-08-12 12:04:40 +02:00
Christoph Oelckers
163b10286f - Reset interpolation coordinates for all actors before the current thinking turn instead of at the start of each actor's own Tick function so that indirect actor movement gets properly interpolated. 2017-08-12 11:48:36 +02:00
Christoph Oelckers
c1de32896c - addressed incorrect ACS printbold implementation: For native Hexen maps it will now be correct, but all others will have to set a flag in MAPINFO's 'gameinfo' section to avoid problems with numerous ZDoom maps depending on the incorrect implementation. 2017-08-12 10:20:34 +02:00
Christoph Oelckers
b4fa95ab15 - handle state label resolution in a non-actor cpntext more gracefully.
Note that this is merely a hotfix. Properly handling this to allow universal use of state scopes will require more work in cases where a scoped state is being accessed through a non-self pointer.
2017-08-12 10:04:06 +02:00
Christoph Oelckers
0db79f8dec - removed tag 0 check for 3D floors because as seems to be par for course in Doom modding, some people actually exploited this bug. 2017-08-12 09:15:59 +02:00
alexey.lysiuk
ef9c3b4f54 Fixed unset inflictor in WorldThingDamaged event
https://forum.zdoom.org/viewtopic.php?t=57527
2017-08-09 16:16:33 +03:00
alexey.lysiuk
33beca6e6f Exposed ToLower() and ToUpper() string functions to ZScript
https://forum.zdoom.org/viewtopic.php?t=57515
2017-08-07 15:24:18 +03:00
raa-eruanna
507122b778 - put in actorinlines include as suggested by dpjudas here, to fix compile: https://forum.zdoom.org/viewtopic.php?f=2&t=57484 2017-08-04 09:13:20 -04:00
Magnus Norddahl
801fbddd47 - Fix gcc compile error
- Fix weapon null pointer crash
2017-08-02 01:41:48 +02:00
Magnus Norddahl
aaa00cbcb9 - Include all lights touching a model actor's render radius 2017-08-01 00:43:58 +02:00
Magnus Norddahl
04be9fe6f2 - Remove test code committed by accident 2017-07-31 20:09:45 +02:00
Rachael Alexanderson
8dff91915a - remove vestigial version.h include from r_portal.cpp. This should stop r_all.o from compiling every single commit. 2017-07-31 11:12:08 -04:00
Kevin Caccamo
7ff0040f30 Add a null pointer at the end of TimidityArgs
This actually got the execvp call working consistently for me; now I can listen to MIDI music in GZDoom again.
2017-07-31 11:05:28 -04:00
Kevin Caccamo
a4370a3529 Null-terminate strings 2017-07-31 11:05:28 -04:00
Kevin Caccamo
ff35620a09 Fix freeze when timidity_exe is not set to timidity's absolute path 2017-07-31 11:05:28 -04:00
Kevin Caccamo
18e76c978c Fix code style, and make some minor changes
Assume timidity is in the user's PATH if not the specified location
Also, get the error message for the execvp failure if it does fail
2017-07-31 11:05:28 -04:00
Kevin Caccamo
233fce7ef6 Initial attempt to make timidity work on Linux again
Add code to find the timidity executable, and split the command line into separate arguments by spaces.
For some reason, this doesn't work, although reverting 64e96c5f makes timidity work again.
2017-07-31 11:05:28 -04:00
Christoph Oelckers
49b77f3a17 - added per-level exit texts independent of the current cluster.
This is mainly to support UMAPINFO which does not have clusters but has been extended to define separate exit texts for each target map that can be reached from a given map.
Special names 'normal' and 'secret' can be used to define texts specific to the default exits.

New MAPINFO properties:

* exittext = mapname, "text"...
* textmusic = mapname, "musicname", order
* textflat = mapname, flatname
* textpic = mapname, picname

textflat and textpic are like 'flat' and 'pic' for clusters, one defines a tiled background, the other a fullscreen image.
Setting an empty exittext will disable a cluster-based text screen that may apply to the given map.
2017-07-30 22:50:27 +02:00
Rachael Alexanderson
c07a4461a0 - fixed: GetCaps() did not account for r_drawvoxels cvar 2017-07-30 10:45:05 -04:00
Magnus Norddahl
d5733f515c - Support binding textures for custom PP shaders 2017-07-30 13:59:25 +02:00
alexey.lysiuk
6a5bad0beb Added developer message about unknown GAMEINFO entry 2017-07-30 12:26:18 +03:00
Rachael Alexanderson
b6c15b997a - added 'r_debug_disable_vis_filter' cvar for debug purposes, to show all objects regardless of their actor filter fields. 2017-07-29 17:03:43 -04:00
Rachael Alexanderson
1bfc2faa49 - added 'r_showcaps' command which serves as a documentation for available flags and shows what flags are in use by the current rendering settings 2017-07-29 17:03:43 -04:00
Rachael Alexanderson
91ff447a90 - fixed compile from last commit
- refactored the zscript hookup a bit, made it actually work
2017-07-29 17:03:43 -04:00
Rachael Alexanderson
712d21e26a - implement per-renderer sprite hiding based on the actor's render feature flags
- hook the thing up to zscript (does not currently compile)
2017-07-29 17:03:43 -04:00
Rachael Alexanderson
8bb5687159 - Implemented GetCaps() for the software renderer
- fixed: Forgot to describe Brightmap capability in the GL Renderer
2017-07-29 17:03:43 -04:00
Rachael Alexanderson
9a9fe7c133 - implemented GetCaps() for OpenGL
- renamed RFF_FRAGMENTSHADER to RFF_MATSHADER
- D_Display now calls Renderer->GetCaps() and stores it in a global variable for later use.
2017-07-29 17:03:43 -04:00
Rachael Alexanderson
64deba45a3 - added another render filter 2017-07-29 17:03:43 -04:00
Rachael Alexanderson
80bb1d908a - basic groundwork for render feature visibility flags. I haven't gotten very far with it yet, but since I am taking a break I am going to commit what I have and continue it later.
todo:
* call a render class function in D_Main that enumerates the capabilities of the current renderer into a global variable to be accessed later
* add a debug-specific cvar to always show all actors, regardless of these filters
* put in checks in the renderer themselves that check both flagsets and reject rendering of any sprite/model that does not fit the definition's criteria
2017-07-29 17:03:43 -04:00
raa-eruanna
0df2779004 - fixed mac compile(hopefully?) 2017-07-29 17:03:18 -04:00
raa-eruanna
af32edd054 - fixed linux compile 2017-07-29 16:47:10 -04:00
Magnus Norddahl
7d21fe6d75 - Fix mouse position being wrong when vid_scalemode is active 2017-07-29 19:26:53 +02:00
Rachael Alexanderson
3540440bf6 - add 1280x800 scale mode 2017-07-27 12:19:41 -04:00
Rachael Alexanderson
10e1600faf - Replaced one more vid_scalemode check with a more versatile ViewportIsScaled43 check 2017-07-27 12:19:41 -04:00
raa-eruanna
5795e0fd3e - included another header in order to fix an error reported by travis ci 2017-07-27 03:37:01 -04:00
Rachael Alexanderson
030450b6a9 - fixed: include missing header 2017-07-27 03:08:42 -04:00
Rachael Alexanderson
16e38816ba - oops, forgot one thing in the last commit... 2017-07-27 03:07:19 -04:00
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
Rachael Alexanderson
f1a6ef9cc8 - changed sv_singleplayerrespawn from 'latch' to 'cheat' since it was originally coded before the CVAR_CHEAT flag was implemented. 2017-07-26 13:34:17 -04:00
Rachael Alexanderson
012496ee98 - added cheat protection to sv_damagefactor* 2017-07-26 13:32:45 -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
Rachael Alexanderson
e0494b6f13 - fixed an issue with previous commit that undid some scaling code 2017-07-25 08:09:01 -04:00
David Carlier
64e96c5f46 OpenBSD support 2017-07-25 07:56:19 -04:00
Rachael Alexanderson
e42500c07a Revert "- ported Linux crash fix to Mac"
This reverts commit 6a49251722.
2017-07-25 07:34:26 -04:00
Rachael Alexanderson
6a49251722 - ported Linux crash fix to Mac 2017-07-25 06:55:29 -04:00
Magnus Norddahl
d8c6966917 - Fixed startup crash on Linux 2017-07-25 11:51:15 +02:00
Christoph Oelckers
b81a23c5e5 - fixed return type of CountsAsKill. 2017-07-25 08:14:46 +02:00
Rachael Alexanderson
28af2fe66b - maxviewpitch now affects the 2.5D software renderer 2017-07-24 10:33:44 -04:00
Christoph Oelckers
cd2a349c36 - fixed name generation for cached nodes to not contain any ':'. A colon inside a file name will cause Windows to write the data to an alternate data stream. 2017-07-24 09:20:35 +02:00
Magnus Norddahl
e06f87cf10 - Added 0.75x scale mode 2017-07-24 08:35:27 +02:00
Magnus Norddahl
1ce3b4c79c - Fix dynamic light clamping issue in truecolor drawers 2017-07-23 23:45:43 +02:00
Magnus Norddahl
bf4d7234e1 - Increase MAXWIDTH and MAXHEIGHT defines to support supersampled 5K monitors 2017-07-23 22:04:00 +02:00
Magnus Norddahl
1a4cf16168 - Fix swtruecolor cvar messing up the chosen video mode 2017-07-23 20:54:03 +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
45a37211e4 - added special handling for vid_scalemode == [1||2] to force video aspect scaling off unless the user explicitly specified an aspect override. 2017-07-23 10:49:13 -04: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
alexey.lysiuk
7436693860 Enabled dynamic stack size in ZScript parser generated by Lemon
https://forum.zdoom.org/viewtopic.php?t=57322
2017-07-23 11:54:16 +03: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
2e6c4eeab9 - removed NOSAVE flags from sv_damagefactor* cvars so that they get put in a savegame 2017-07-22 08:25:39 -04:00
Rachael Alexanderson
a958d2ad72 - fixed pixel centering for unaccelerated player sprites 2017-07-22 08:01:27 -04:00
Rachael Alexanderson
04db494310 - 'kill baddies' cheat now describes what it is killing. This is mostly for multiplayer purposes when other players see the feedback when the cheat is used, allowing players to see if it was 'kill monsters' or 'kill baddies' 2017-07-22 07:25:58 -04:00
Magnus Norddahl
8311a18282 - Fix plane pixel center sampling bug 2017-07-22 12:29:46 +02:00
Magnus Norddahl
3ff021608d - Fix pixel center sampling bug in SWCanvas::DrawTexture 2017-07-22 10:40:30 +02:00
alexey.lysiuk
c56cd245ac Added IndexOf() and LastIndexOf() functions to ZScript string type
https://forum.zdoom.org/viewtopic.php?t=57313
2017-07-22 10:54:32 +03:00
Magnus Norddahl
ebd20daed8 - Fix wall texture sampling to be done at pixel centers 2017-07-22 01:45:06 +02:00
Rachael Alexanderson
8d95ee6882 - 'Player' is turbo! cheat is no longer shown in single player. 2017-07-21 17:21:58 -04:00
Magnus Norddahl
5be74890b7 - Fix missing pixels on walls in palette mode for npot2 textures 2017-07-21 22:48:44 +02:00
Christoph Oelckers
714ada01aa Merge remote-tracking branch 'remotes/origin/qzdoom-merge' 2017-07-20 18:33:20 +02:00
Christoph Oelckers
e8e940d221 - fixed portal handling for P_CheckMissileSpawn to obey commonly established rules about portal types. 2017-07-20 18:32:54 +02:00
Christoph Oelckers
ffc529d100 - let r_*_cull variables default to 0. 2017-07-20 14:23:45 +02:00
Christoph Oelckers
03ed0656e1 - fixed: The frame timer for interpolating the renderer should always take its time from the actual beginning of the frame instead of checking the system timer in real time when rendering starts.
This fixes two issues:

* timer related texture animations are not being recreated multiple times if a scene renders multiple viewpoints (e.g. camera textures or portals.)
* interpolation is smoother when maps have a high think time of multiple milliseconds. A good map to see the difference would be ZDCMP2 which has a think time of 4-5 milliseconds. With the timer taken in real time after the thinkers have run and VSync on this resulted in alternating time slices of 11 and 21 ms between frame interpolations instead of an even 16 as should be done for smooth 60 fps because roughly every second frame was offset by those 5 ms.
2017-07-20 14:20:50 +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
Rachael Alexanderson
5918167fb3 - added 'kill baddies' cheat - does the same thing as 'kill monsters' only it ignores friendly monsters 2017-07-19 15:03:27 -04:00
Rachael Alexanderson
62a4eb6b6d - fixed a comment in version.h about the current ZScript version (it was out of date) 2017-07-19 11:04:53 -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
alexey.lysiuk
f4672d67bc Fixed crash when drawing untranslated font
https://forum.zdoom.org/viewtopic.php?t=57268
2017-07-19 13:24:19 +03:00
Rachael Alexanderson
1f6d15c741 - Rename QZDoom back to GZDoom again for merge. 2017-07-19 06:13:05 -04:00
Rachael Alexanderson
bac72600f0 Merge remote-tracking branch 'origin/master' into qzdoom-merge 2017-07-19 06:11:13 -04:00
Christoph Oelckers
579840987d - added per-class think time profiling tool. 2017-07-17 10:21:58 +02: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
Rachael Alexanderson
9eb0b64ab0 - Added new "sv_damagefactor*" variables.
sv_damagefactorplayer: Scales damage for player
sv_damagefactorfriendly: Scales damage for all other +FRIENDLY objects
sv_damagefactormobj: Scales damage for everything else (incl. monsters and decorations)
2017-07-15 03:38:10 -04:00
Christoph Oelckers
ac30e47ab4 - Added an 'srand' call to the RBG initialization.
This is needed because 'rand' gets used by parts of the sound code (e.g. playlists.)
2017-07-15 09:34:07 +02:00
Christoph Oelckers
daca12600d - fixed: The ADDA_RK opcode used the wrong constant type for the offset it adds to the pointer. 2017-07-15 09:14:39 +02: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