Commit Graph

559 Commits

Author SHA1 Message Date
Christoph Oelckers dc5b8d27f8 - infrastructure for savegame pics.
Savepic generation implemented for Duke 3D, but results in a black image.
2020-01-12 23:16:21 +01:00
Christoph Oelckers 95f917a408 - added the main vertex buffer and some code to maintain it on systems where persistent mapping is not possible.
All games combined there's 11(!!!) scene render blocks, not counting the sub-blocks for ROR and mirrors.
Does it surprise anyone that most of these sub-blocks do not feature all engine capabilities?
2020-01-12 20:28:07 +01:00
Christoph Oelckers 661431df87 - moved bits of my own code to properly copyrighted files. 2020-01-12 14:54:43 +01:00
Christoph Oelckers b57d683938 - added default for nosubdir parameter. 2020-01-12 08:53:11 +01:00
Christoph Oelckers 238bbd26c1 - fixed: savegame insertion must not move the "New savegame" node at the top. 2020-01-11 23:05:37 +01:00
Christoph Oelckers 17eddda36c - added date and play time display to savegames. 2020-01-11 19:40:35 +01:00
Christoph Oelckers 5e34b437d9 Merge branch 'master' into fix-linux-compile 2020-01-11 17:37:29 +01:00
Christoph Oelckers 3b955b7c94 - added support for ZDoom-style GAMEINFO. 2020-01-11 17:05:25 +01:00
Rachael Alexanderson 0785c6b9e3 - this is a good stopping point for now, again... 2020-01-11 10:02:44 -05:00
Christoph Oelckers 4825d66e10 - make file system directory printout optional. 2020-01-10 21:54:18 +01:00
Christoph Oelckers 6305714493 - fixed some issues with RR's Route66 add-on.
The new movies weren't played because the names did not match.
Transition from the last level of Ep1 to the first one of Ep2 did not work.
Selection with command line switch wasn't reliable.
2020-01-10 21:36:46 +01:00
Christoph Oelckers 74fdb6dbcb - fixed menu for DN3D 1.3 2020-01-09 17:35:38 +01:00
Christoph Oelckers 30ebd18680 - fixed incorrect name for last RR map. 2020-01-08 18:58:36 +01:00
Christoph Oelckers f513692a08 - fixed last commit. 2020-01-08 17:36:00 +01:00
Christoph Oelckers cfed7afd02 - all source compile now on macOS 2020-01-08 01:00:57 +01:00
Christoph Oelckers e7ee858d0d - fixed incomplete reset of savegame state. 2020-01-07 18:53:16 +01:00
Christoph Oelckers b8ac5aea84 Merge branch 'master' of https://github.com/coelckers/Raze 2020-01-07 01:11:33 +01:00
Christoph Oelckers fb985d2503 - more macOS compilation fixes
Still not complete…
2020-01-07 01:11:19 +01:00
Christoph Oelckers 2a0104092d - fixed uninitialized variable in savegame name entering menu. 2020-01-06 21:11:59 +01:00
Christoph Oelckers e1e2b01c84 - fixed memory leak in savegame code. 2020-01-06 20:01:18 +01:00
Christoph Oelckers 134122335b - first attempt to compile on a Mac
This could have gone better, there's far too many warnings here
2020-01-06 02:41:47 +01:00
Christoph Oelckers 83292c9dd6 - fixed a few issues and added some savegame debug code for Shadow Warrior. 2020-01-05 18:49:19 +01:00
Christoph Oelckers 9e7f91b5ac - fixed size of texture arrays.
We need 6 slots, not 5.
2020-01-05 12:56:32 +01:00
Christoph Oelckers b6862cfd70 - fixed text input menu and y-positioning of option menus. 2020-01-05 12:12:14 +01:00
Christoph Oelckers 746aa4da82 - added a ClearScreen function to the 2D drawer to wrap the frequent occurence of this use case. 2020-01-05 10:48:44 +01:00
Christoph Oelckers a3020ed867 - don't let joystick/controller axis events register as a keypress for screen advancing. 2020-01-05 10:36:52 +01:00
Christoph Oelckers e84acb7e2f - invalidate the render state after finishing a frame.
Last bound textures in particular may not be valid anymore in the next frame in movie playback.
2020-01-05 09:38:44 +01:00
Magnus Norddahl 0714155e3a Fix ssao no longer working 2020-01-04 09:54:47 +01:00
Christoph Oelckers 9de5814063 - fixed bad alpha setting for rotatesprite calls. 2020-01-03 22:05:00 +01:00
Christoph Oelckers 73950458d4 - fixed mouse selection for generated menus. 2020-01-03 21:28:01 +01:00
Christoph Oelckers 5cc165587e - added mouse control for image scroller menu. 2020-01-03 20:53:38 +01:00
Christoph Oelckers 4155d49e59 - fixed menu slider rendering. 2020-01-03 20:40:56 +01:00
Christoph Oelckers 39c55199f9 - added a few missing menu things. 2020-01-03 20:37:02 +01:00
Christoph Oelckers 064a453b41 - fixed: Key up events were processed as character input.
This broke the cheat input in Duke Nukem.
2020-01-03 19:28:54 +01:00
Magnus Norddahl 13a7b7d4b2 Hook up gl_ssao 2020-01-03 18:34:43 +01:00
Christoph Oelckers 07754b3255 - std::filesystem is gone. 2020-01-03 17:56:22 +01:00
Christoph Oelckers 9f0b720b25 -second function freed of std::filesystem. 2020-01-03 17:34:52 +01:00
Christoph Oelckers c82d6de6c3 - fixed a few typos and uninitialized variables. 2020-01-03 17:08:41 +01:00
Christoph Oelckers 78e7b2dd8c - getting rid of std::filesystem, part one.
Since it's not usable on macOS it needs to go.
2020-01-03 14:19:52 +01:00
Christoph Oelckers 6574c34543 - re-enabled MIDI selection, but only with the devices that are supposed to be seen. 2020-01-03 09:22:22 +01:00
Christoph Oelckers 6135e388ed - changed the remaining license headers from GZDoom's renderer's files, in agreement with all contributors to this code. 2020-01-03 08:03:29 +01:00
Magnus Norddahl 066f444dd0 Hook up vid_fps 2020-01-03 06:28:25 +01:00
Magnus Norddahl 2403d1b7e5 Update the license for the postprocessing source code 2020-01-03 05:42:37 +01:00
Christoph Oelckers 62fd8a49c1 - fixed CVAR assignment for number of sound channels. 2020-01-03 00:47:13 +01:00
Christoph Oelckers 72036721d5 - made DN3D shareware operable.
The GRP defines neither episodes nor skills, so they have to be provided internally.
This isn't 100% correct yet, but should do for now.
2020-01-03 00:44:39 +01:00
Christoph Oelckers e63ca0f471 - removed redundant keyboard.h header 2020-01-02 19:56:57 +01:00
Christoph Oelckers afb1d7b885 - changed a few licenses of my own code to something more permissive. 2020-01-02 19:38:47 +01:00
Christoph Oelckers e43d2c10c0 - removed the OPL synth because parts of it are GPLv3 and even under the best circumstances not compatible with the license mix here. 2020-01-02 19:20:12 +01:00
Rachael Alexanderson a6bf1c3026 - oops, didn't mean to change this line (I blindly copied the function over) 2020-01-02 00:15:19 -05:00
Rachael Alexanderson 21ba23f36d - pull most recent video scale changes from gzdoom 2020-01-01 23:42:09 -05:00
Rachael Alexanderson 6a17e3910b - relicense my reused GZDoom code as BSD 2020-01-01 08:59:40 -05:00
Christoph Oelckers e01c161258 - removed some dead variables. 2020-01-01 13:11:44 +01:00
Christoph Oelckers 18099e9179 - removed the pure software render surface and deleted a few unused variables.
With all the 2D refactorings thhe softsurface won't work anymore.
This also revealed a bug with the fullscreen variable, a few places were still using the old one from the SDL backend.
2020-01-01 12:36:48 +01:00
Christoph Oelckers d09b83d4a5 - moved the last remaining function out of baselayer.cpp and removed that file.
g_logFlushWindow was deleted entirely because with the current console this is not needed anymore.
2020-01-01 12:01:26 +01:00
Christoph Oelckers d464017363 - cleaned up the input code a bit. 2020-01-01 11:35:47 +01:00
Christoph Oelckers bcb48d8441 - added handling for changing the screen size (dragging the window borders / change scale factor) 2020-01-01 09:49:06 +01:00
Christoph Oelckers 98604e513e - set up the scene viewport for the postprocessor. 2019-12-31 20:11:31 +01:00
Christoph Oelckers 05e381ff6d - fixed screen clearing for the automap.
This should only affect the active window, not the entire screen.
2019-12-31 19:50:27 +01:00
Christoph Oelckers 1890df98f9 - process lines through the 2D drawer. 2019-12-31 19:02:55 +01:00
Christoph Oelckers 2f8d472d7d - cleaned up the map drawer by using a real triangulator.
Immediate benefit: almost 200 lines of bona-fide Kencode go to the dumpster.
2019-12-31 17:23:29 +01:00
Christoph Oelckers 77cd7bffc5 - fixed alpha calculations for textured automap. 2019-12-31 15:50:08 +01:00
Christoph Oelckers 964e303dd7 - draw the textures on the automap with the 2D drawer. 2019-12-31 15:05:08 +01:00
Rachael Alexanderson 143c8be84d - fixed: argument count passed to the OSD system was +1 than it expected 2019-12-31 08:07:22 -05:00
Christoph Oelckers 51eaa5cd1f - let mouse control in the menu default to Touchscreen-like, like it is in GZDoom. 2019-12-31 02:48:16 +01:00
Magnus Norddahl 8f1d1fa94b Fix mouse move precision loss when only moving the mouse a pixel or two. Also make the baseline mouse scaling more reasonable. 2019-12-31 01:46:54 +01:00
Magnus Norddahl 0396f79c15 Fix in_mouse 0 and in_joystick 0 not working 2019-12-31 01:00:30 +01:00
Christoph Oelckers 6b431cec2c - fixed: True color texture replacements were set up incorrectly.
They incorrectly set themselves up as their own glow and detail textures.
These layers also weren't disabled for the next texture.
2019-12-30 20:44:37 +01:00
Christoph Oelckers ad24a1ce31 - place weapon sprites in a separate render list.
They need to be drawn in a different pass than the 2D overlay HUD so the backend must have them separately.
2019-12-30 20:16:51 +01:00
Christoph Oelckers 9ceb47fdb2 - cleaned up the rotatesprite code a bit. 2019-12-30 20:16:51 +01:00
Christoph Oelckers 596705a36e - apply RS_YFLIP to 2D sprites. 2019-12-30 20:16:51 +01:00
Christoph Oelckers 5830e72ab0 - fixed some rotatesprite issues:
* scissor was not applied
* texture coordinates were fetched from the wrong texture, courtesy of using global variables.
2019-12-30 19:37:23 +01:00
Christoph Oelckers 6459f4e532 - refactored rotatesprite to really use the 2D drawer.
Mostly working, except clipping and weapon sprites.
2019-12-30 19:37:23 +01:00
Christoph Oelckers b34f3637ab - restored keybinds setup to the original procedure as defined by ZDoom.
Looks like some parts were missed when this was integrated piece by piece.
2019-12-30 12:43:21 +01:00
Christoph Oelckers f1891c7750 - fixed compilation. 2019-12-29 22:47:40 +01:00
Christoph Oelckers 5a41b545e5 - reactivated saving of console aliases. 2019-12-29 17:43:40 +01:00
Christoph Oelckers cc332486b4 - cleaned out the 2D drawing code.
With the new backend there will always be just one page, never more, so the RS_PERMS case will never be entered.
In addition, since the software renderer has already been nonfunctional due to lacking support from the 2D drawer, its 2D components have also been removed. Its main remaining purpose, drawing camera textures, remains unaffected by this.
2019-12-29 15:46:48 +01:00
Christoph Oelckers d80159b76a - use glVertexAttrib consistently for the presentation drawcall.
- fixed vid_saturation default and adjusted ranges for gamma correction CVARs.
2019-12-29 14:35:24 +01:00
Magnus Norddahl 26dbf5fe10 Fix black screen 2019-12-29 05:10:36 +01:00
Magnus Norddahl 7c6dc7a7db Fix premature exit when only one .grp file is available 2019-12-29 04:49:28 +01:00
Christoph Oelckers 737bf15ad8 - added GZDoom's postprocessing/presentation code.
Compiles but only draws a black screen. Something must be missing but no idea yet what that might be.
2019-12-28 22:36:47 +01:00
Christoph Oelckers f6dee38d28 - route all 2D drawing through the 2D drawer unconditionally.
This is needed so that the postprocessor receives a clean 3D view to process without messing up the 2D parts.
2019-12-28 19:10:23 +01:00
Christoph Oelckers a021b96119 - added the needed parts of GZDoom's render backend to have the postprocessor working.
Not hooked up yet.
2019-12-28 18:20:47 +01:00
Christoph Oelckers 1e16998cac - fixed memory leak in savegame menu. 2019-12-28 13:08:34 +01:00
Christoph Oelckers 2b95808d42 - fixed ambient sounds not restarting in DN3D and RR. 2019-12-28 12:59:19 +01:00
Christoph Oelckers d6c129b825 - Hide Exhumed frontend behind a -experimental switch.
Since the NBlood and PCExhumed repos got merged, keeping separate branches may become a bit of a hassle, so now there is only one branch, but this game will not be shown to regular users until it gets more stable.
2019-12-27 23:22:39 +01:00
Christoph Oelckers c41c585c7f Merge branch 'master' into powerslave 2019-12-27 20:06:44 +01:00
Christoph Oelckers affa8240f4 - fixed: Exhumed's ChannelEnded method did not call the super class.
This caused all sorts of audio errors.
2019-12-27 20:05:58 +01:00
Christoph Oelckers c3ba6d00e6 - fixed: forgettable channels must not be tested for sound limits because they no longer have a valid source. 2019-12-27 17:08:48 +01:00
Christoph Oelckers 8e5b9111bd Merge branch 'master' into powerslave
# Conflicts:
#	source/CMakeLists.txt
2019-12-27 15:34:09 +01:00
Christoph Oelckers aefb3ec216 - removed obsolete gamemain.cpp 2019-12-27 13:11:48 +01:00
Christoph Oelckers 44ed9d63a7 Merge branch 'master' into powerslave 2019-12-27 10:54:50 +01:00
Christoph Oelckers 9415d0f78b - corrected savegame signatures. 2019-12-27 10:53:47 +01:00
Christoph Oelckers ce1a78fd62 - work on the savegame writer.
It saves, reloading not implemented yet.
2019-12-27 10:52:40 +01:00
Christoph Oelckers 68a3a60d0b - Exhumed menu tweaks - draw a background and caption for the option menus the game originally did not have.
- fixed a crash in the 2D drawer when two consecutively allocated vertex buffers had the same address. Strangely this only occured with Exhumed but not the other games
- fixed Exhumed crashing with sound disabled.
2019-12-26 17:42:45 +01:00
Christoph Oelckers 6373b75d22 Merge branch 'master' into powerslave
# Conflicts:
#	source/common/gamecontrol.cpp
#	source/common/version.h
#	wadsrc/static/engine/grpinfo.txt
2019-12-26 14:46:14 +01:00
Christoph Oelckers d473f9c590 - replaced all uses of Bfree with Xfree so they are subjected to debug instrumentation, uses FStrings in a few cases where it made sense.
- fixed: Sound channels weren't freed.
2019-12-26 14:43:44 +01:00
Christoph Oelckers 62e9112133 - renamed the internal resource directory to "engine" and routed most literal mentions of the engine name through version.h
All this comes from a time when I didn't use version.h so it's better to do it the same way as GZDoom to allow easy renaming of the engine.
2019-12-26 14:04:53 +01:00
Christoph Oelckers 7f62208bad - renamed demolition.grpinfo to grpinfo.txt. 2019-12-26 13:31:48 +01:00
Christoph Oelckers d8dfe752b5 - fixed handling of music in Redneck Rampage and Shadow Warrior.
After merging the CD enabling CVAR they had the same default (off) as Blood which is wrong.
This also addresses other music related issues, like not properly cycling through the RR music.
2019-12-26 13:04:29 +01:00
Christoph Oelckers c8edef4e0c - disabled the "User Maps" option pending implementation of a working selection menu for exposing this. 2019-12-26 10:55:43 +01:00