Commit graph

1040 commits

Author SHA1 Message Date
Magnus Norddahl
48d2d423f6 - remove softpoly scene drawer 2019-05-22 17:16:07 +02:00
Magnus Norddahl
0eda298db2 - create a renderer backend based on softpoly's drawers 2019-05-22 06:29:52 +02:00
Magnus Norddahl
9ab19d057d - centralize how image transitions are done in the vulkan backend 2019-05-16 18:26:47 +02:00
Magnus Norddahl
b30ed99672 - remove the old OpenGL postprocess custom shader implementation 2019-04-08 01:31:22 +02:00
Rachael Alexanderson
e48d2105ef Merge branch 'master' of https://github.com/coelckers/gzdoom into vulkan2 2019-04-06 00:27:18 -04:00
drfrag
1ef4c2d0f6 - Hopefully fixed MinGW compilation for real. 2019-04-06 00:07:24 -04:00
Christoph Oelckers
a0b0467e91 - restrict Vulkan to 64 bit builds. 2019-03-24 14:34:48 +01:00
Christoph Oelckers
d86dd902fb Merge branch 'master' into vulkan2 2019-03-18 13:31:04 +01:00
Christoph Oelckers
c2c9126453 - replaced the XLSX parser with a CSV parser.
Since Google can export this as well it makes a lot more sense here because it is a textual format better suited for version control and does not carry along all the formatting baggage that isn't needed for a string table.
2019-03-18 10:18:30 +01:00
Magnus Norddahl
e5e9924c5e - remove IShaderProgram and make the old classes an implementation detail of the OpenGL backend. In the long run they should be removed completely as their weird design is mostly an artifact of once having supported OpenGL 2 2019-03-13 00:52:25 +01:00
Rachael Alexanderson
879aae1bd3 Merge branch 'master' of https://github.com/coelckers/gzdoom into vulkan2 2019-03-11 22:07:46 -04:00
Christoph Oelckers
0884057ae1 - use a higher resolution console font with better Unicode support. 2019-03-10 17:54:03 +01:00
alexey.lysiuk
f7a95f612e - extended RPATH for macOS with executable's directory
Dynamic libraries placed in the directory with the main executable now can be loaded by dlopen() function
This is required in order to enable Vulkan support without additional steps like SDK installed in the system
2019-03-09 15:46:18 +02:00
alexey.lysiuk
108ea066f3 - added initial support of Vulkan to SDL backend
Removed all platform-specific code from vulkan device
2019-03-06 13:38:45 +02:00
Magnus Norddahl
d65de299e8 - add some classes for managing postprocess and render buffers 2019-03-05 04:59:17 +01:00
Magnus Norddahl
d86a56086c Merge remote-tracking branch 'origin/master' into vulkan2 2019-03-01 21:50:06 +01:00
Christoph Oelckers
86620aaba5 - allow reading xlsx spreadsheets directly for language definitions. 2019-02-28 22:21:55 +01:00
Magnus Norddahl
9ed1c7f40b - add render pass manager and setup a pipeline for VkRenderState 2019-02-26 11:27:29 +01:00
Christoph Oelckers
413412f603 Merge branch 'master' into vulkan2 2019-02-23 19:53:38 +01:00
Christoph Oelckers
c5156d4598 - moved around a few more files. 2019-02-23 18:57:49 +01:00
Christoph Oelckers
c3890342e6 - moved the 2D drawing code to its own directory under 'rendering'. 2019-02-23 18:08:57 +01:00
Christoph Oelckers
e091369a38 - removed FCriticalSection and replaced all of its uses with std::mutex.
There's really no need for a non-standard solution here anymore with C++11.
This also fixes an unreleased lock in the WildMidi code.
2019-02-22 20:24:24 +01:00
Christoph Oelckers
f907bb0484 - moved a few more things and deleted the unused v_pfx implementation.
These were pixel format conversion routines used in the D3D backend. Nothing in here is needed anymore - the FBitmap class offers much of the functionality covered here in a far more concise and approachable manner.
2019-02-22 19:48:18 +01:00
Christoph Oelckers
8c06a00ee6 - moved all dialogue loading code into the map loader. 2019-02-22 19:07:58 +01:00
Magnus Norddahl
a97d736bd9 - add vulkan renderstate and shadermanager classes 2019-02-21 22:49:00 +01:00
Magnus Norddahl
478ef05a0a - create vulkan buffer objects implementation 2019-02-21 12:31:14 +01:00
Magnus Norddahl
75403ec744 - hook up the glsl compiler 2019-02-21 00:25:51 +01:00
Magnus Norddahl
c6b29846d0 - add 3rd party vulkan dependencies
- add stubs for a vulkan hw renderer backend
- add RAII wrappers for vulkan object types
- add builder classes to isolate vulkan boilerplate code
- add a swap chain class
2019-02-20 21:21:57 +01:00
Christoph Oelckers
95e62e91bb - split the FFont base class into its own file. 2019-02-17 13:50:57 +01:00
Christoph Oelckers
9102fb86a5 - moved FSpecialFont to its own file. 2019-02-17 12:53:12 +01:00
Christoph Oelckers
1f0c01459a - split FSinglePicFont into its own file. 2019-02-17 12:29:08 +01:00
Christoph Oelckers
7f1f25d998 - split the FSingleLumpFont class into its own file. 2019-02-17 12:00:04 +01:00
Christoph Oelckers
9dfffb6697 - moved font code into a subdirectory. 2019-02-17 11:43:04 +01:00
Christoph Oelckers
64685705d0 - made the console Unicode-capable.
This also necessitated some character remapping in the console font to move the Windows-1252 extra characters to their proper Unicode code points.
2019-02-16 13:05:19 +01:00
Christoph Oelckers
5e6a96d021 - fixed path of texture directory. 2019-02-10 14:08:27 +01:00
Christoph Oelckers
979f1df281 Merge remote-tracking branch 'remotes/origin/master' into new_level_refactor
# Conflicts:
#	src/g_level.cpp
#	src/p_user.cpp
2019-02-05 13:49:07 +01:00
alexey.lysiuk
8892cb619d - disabled usage of intrinsics on non-Intel platforms 2019-02-04 15:53:41 +02:00
alexey.lysiuk
2765159fc6 - disabled VM JIT completely on unsuported platforms 2019-02-04 15:53:35 +02:00
Christoph Oelckers
8d83f03138 - changed the linedef translator into a struct and reorganized its storage to allow having different ones at the same time.
This was the last piece of data that couldn't be distinct for more than one level.
2019-02-02 01:22:12 +01:00
Christoph Oelckers
32e5be83ea - moved a few more files and copied the data related parts of p_things.cpp to g_doomedmap.cpp 2019-02-01 19:48:17 +01:00
Christoph Oelckers
a1cc548af4 - moved some more code into the gamedata folder.
Two files were split:

g_level.h contained both the game data definitions and some prototypes belonging to the game logic. These were split up.
decallib.cpp contained both the data and the animation thinkers. The thinkers are now in their own file.
2019-02-01 19:20:58 +01:00
Christoph Oelckers
db77ed79cd - moved the resourcefiles and textures folders into gamedata. 2019-02-01 18:31:57 +01:00
Christoph Oelckers
3f90764faa - moved the contents of g_inventory to g_shared and gamedata subfolders.
a_pickups only contains a few native remains of the inventory code and the other two only the static data maintenance for their items.
2019-02-01 18:13:12 +01:00
Christoph Oelckers
ba451b46c8 - moved a bunch of files to the utility folder. 2019-02-01 01:18:32 +01:00
Christoph Oelckers
b77e83e0b9 - moved 15 more files to g_shared. 2019-02-01 00:48:21 +01:00
Christoph Oelckers
5010e61309 - moved a few more play files free of global state references to g_shared. 2019-01-31 22:31:41 +01:00
Christoph Oelckers
b40c709b66 - minor corrections. 2019-01-31 20:42:36 +01:00
Christoph Oelckers
7241072b16 - moved most utility code to a subdirectory.
Again no code changes.
2019-01-31 20:33:52 +01:00
Christoph Oelckers
89d607c9a6 - moved all rendering code into a common subdirectory.
No changes to the files themselves was made.
2019-01-31 19:58:17 +01:00
Christoph Oelckers
aa340145ac - moved the remaining thinker code to g_shared 2019-01-31 02:51:07 +01:00