Commit graph

1251 commits

Author SHA1 Message Date
Robert Beckebans
f7db9d0ab7 Simplified allocations and fixed potential crash if materials are missing 2022-06-11 11:45:09 +02:00
HarrievG
a6d4ca7694 material name is now used as texture/idMaterial 2022-06-10 22:06:38 +02:00
HarrievG
faa9207d01 - Fixed GLTF Mesh -> Polygon Mesh creaton 2022-06-10 10:27:17 +02:00
Robert Beckebans
c0a5f1233d Fixed collision detection and shading 2022-06-09 10:51:20 +02:00
Robert Beckebans
c576583b28 Don't add indices from other polygons 2022-06-08 23:06:17 +02:00
Robert Beckebans
c74ed79e8d Support the Valve 220 texture projection in MapPolygonMesh::ConvertFromBrush() 2022-06-08 21:34:04 +02:00
Robert Beckebans
9216f47572 Automatically remove map collision .cm, .bcm files before running dmap 2022-06-08 21:12:38 +02:00
Robert Beckebans
86b94dc8be Crashfix: Don't refesh the screen using prints during engine shutdown. 2022-06-08 21:10:36 +02:00
Robert Beckebans
4e0199b75c Entity glTF2 Y-Up -> Doom coord conversion 2022-06-07 22:48:36 +02:00
Robert Beckebans
e095e95173 glTF2 -> dmap triangulation bugfixes 2022-06-07 22:39:16 +02:00
Robert Beckebans
e86a8d1734 Crash fix when closing the engine 2022-06-07 22:04:43 +02:00
Robert Beckebans
d69db4ebad Fixed rebase conflicts 2022-06-06 17:36:18 +02:00
Robert Beckebans
c3098186b5 Small glTF2 coords change 2022-06-06 17:24:47 +02:00
Robert Beckebans
24845c7edf gltf2 -> idMapFile fixes. dmap and map commands work
# Conflicts:
#	neo/idlib/containers/List.h
2022-06-06 17:24:47 +02:00
HarrievG
50bb904e22 [!] compile fix 2022-06-06 17:24:38 +02:00
HarrievG
e19e4f2b05 Update Model_local.h 2022-06-06 17:24:38 +02:00
HarrievG
c1c5917cda + id style gltf2 parser
+ initial attempt to dmap glb/gltf
[!] added blend file and glb for debugging purposes

# Conflicts:
#	neo/idlib/containers/List.h
2022-06-06 17:24:37 +02:00
Robert Beckebans
1d62816a77 Fixed most annoying compiler warnings on Linux 2022-05-19 16:47:24 +02:00
Robert Beckebans
f1139f7a33 Fixed unknown event 772 error on Linux 2022-05-09 14:07:19 +02:00
Stephen Saunders
511e18d9fd Check Vulkan header version for macro compatibility, improve VkPhysicalDeviceProperties2 variable names
(cherry picked from commit 6399dc2a48829ea25be649213cc059d5bfd1b379)
2022-04-19 16:30:22 -04:00
Stephen Saunders
23044c8e43 Enable VK_KHR_portability_enumeration for macOS on Vulkan SDK 1.3.211.0 or later 2022-04-19 16:28:47 -04:00
Stephen Saunders
308d0138cb sound/OpenAL/AL_CinematicAudio.cpp: Zero out music buffer on shutdown 2022-03-23 23:17:06 +01:00
Davide Beatrici
d88fa4f694 cm/CollisionModel: Initialize "material" and "id" fields in "contactInfo_t"
The Dark Mod only does it in idCollisionModelManagerLocal::ContentsTrm().

Prey only initializes "id", in idCollisionModelManagerLocal::Translation().
2022-03-18 03:11:35 +01:00
Davide Beatrici
229496cffb sound/OpenAL/AL_CinematicAudio.cpp: Remove address check against array
neo/sound/OpenAL/AL_CinematicAudio.cpp:246:6: warning: address of array 'this->alMusicBuffercin' will always evaluate to 'true' [-Wpointer-bool-conversion]
        if( alMusicBuffercin )
        ~~  ^~~~~~~~~~~~~~~~
2022-03-15 09:30:57 +01:00
Robert Beckebans
5b98d387ce Fixed compiling of the Vulkan backend 2022-03-06 10:26:37 +01:00
Robert Beckebans
219033e26a Fixed black screen after reloadImages #621 2022-03-06 10:10:18 +01:00
Robert Beckebans
2ce90cf97b Applied Astyle 2022-03-06 08:59:13 +01:00
Robert Beckebans
d212e5b948 Merge remote-tracking branch 'SRSaunders/master' 2022-03-06 08:34:02 +01:00
Robert Beckebans
e3101a6b05 Added Zoomap categories railing, pipe and ladder and changed it to look for .bobj and .bdae files 2022-03-05 18:55:30 +01:00
Robert Beckebans
f1668b7db8 Stencil shadows work again (thanks to Stephen Pridham), Renderer Sync #395 2022-03-05 18:27:27 +01:00
Stephen Saunders
1ac9baca5d Tiny fix for printing Bink audio stream sample format 2022-03-03 16:31:49 -05:00
Stephen Saunders
8f474b9cb4 Tiny fix for printing RoQ cinematic filename 2022-03-03 11:59:32 -05:00
Stephen Saunders
bd3c82c930 Align frame logic for Cinematic decoders (ffmpeg, Bink, RoQ), use correct shaders, fix bugs in RoQ looping and testVideo cmd 2022-03-02 20:49:26 -05:00
Robert Beckebans
5ebbbf32e4 Added support for the prototype.wad in the convertMapQuakeToDoom cmd 2022-03-02 17:47:05 +01:00
Robert Beckebans
6d7ebabcbf Fixed a divide by zero bug in the convertMapToValve220 cmd 2022-03-02 09:27:09 +01:00
Robert Beckebans
daf5ed43c0 Export FGD files to base/_tb/fgd/*.fgd 2022-02-27 17:26:58 +01:00
Robert Beckebans
3de739ae32 Added small hack to load autogenerated genmodel_ entities 2022-02-27 16:58:25 +01:00
Robert Beckebans
920df3df63 Tweaked export to TrenchBroom cmds with proxymodels 2022-02-27 13:56:14 +01:00
Stephen Saunders
69be2f1e05 Enabled RoQ & ffmpeg decoders in testVideo cmd, fixed RoQ looping with ffmpeg decoder 2022-02-26 18:51:01 -05:00
Robert Beckebans
67aaf93af8 Added 2D Bin Packing library 2022-02-26 18:48:15 +01:00
Robert Beckebans
5368eb5521 Added more categories to makeZooMapForModels cmd 2022-02-26 15:53:14 +01:00
Robert Beckebans
60d7801780 Added category sorting to makeZooMapForModels cmd 2022-02-26 15:29:39 +01:00
Robert Beckebans
75d55a7ed3 Tweaked makeZooMapForModels cmd with better sorting 2022-02-25 22:14:45 +01:00
Stephen Saunders
c4bc217d26 Linux case sensitivity hack for opening RoQ files with ffmpeg 2022-02-25 01:13:54 -05:00
Robert Beckebans
9cc5fa7a3a Write labels above model groups in zoo maps 2022-02-24 22:14:40 +01:00
Stephen Saunders
27c1fe476a Close all ffmpeg contexts, remove packet queue, support ffmpeg RoQ decoding with audio 2022-02-24 02:04:30 -05:00
Robert Beckebans
cbc9a31b74 Added cmd makeZooMapForModels 2022-02-23 22:52:23 +01:00
Stephen Saunders
f24d7ecc16 Fix XAudio2 and OpenAL errors on shutdown, improve cinematic audio queue mgmt
(cherry picked from commit 4bfdf622f94b52eae52faece058c0e3d6139551e)
2022-02-22 20:16:31 -05:00
Stephen Saunders
22cd420513 More cinematic audio memory mgmt fixes, support cinematic audio looping
(cherry picked from commit bb0b260baa187d2dd88ef2a631e7b7f163095b10)
2022-02-22 19:52:24 -05:00
Robert Beckebans
b2f68faffe exportModelsToTrenchBroom writes another FGD with helper entities 2022-02-22 21:36:00 +01:00
Robert Beckebans
2282cfb9d8 Differentiate between classic func_groups and TB layers 2022-02-19 14:43:49 +01:00
Stephen Saunders
922f9eddef Cinematic Video and Audio memory management fixes
(cherry picked from commit 40a9190283d30180a3b7e4ab9b77f3c3728dad4f)
2022-02-18 14:01:53 -05:00
Robert Beckebans
1f2df87be7 Fixed a couple of func_groups with TrenchBroom related bugs 2022-02-18 18:00:09 +01:00
Robert Beckebans
c23709c2db Formatted code with Astyle 2022-02-12 12:55:46 +01:00
Robert Beckebans
4bba6b3e46 Merge remote-tracking branch 'SRSaunders/gpu-support' 2022-02-12 10:54:56 +01:00
Stephen Saunders
1c6ec627f2 Minor fix for astyle-code.sh compatibility with macOS grep
(cherry picked from commit 82206ebeaac285d68add1042e1f151857e67e53b)
2022-02-10 10:40:43 -05:00
Stephen Saunders
d0d3917ba1 Simplify ffmpeg audio code, sync ffmpeg audio frames to video, enable Bink cinematic audio, ensure audio buffers are released
(cherry picked from commit 62853bfc0307d1507903f0454bd062f387f775e2)
2022-02-10 10:40:30 -05:00
Stephen Saunders
846c00c885 Fix XAudio2 cinematic audio and restore Windows build
(cherry picked from commit f09a3083e220f1a715816e097e0e5342ca48456d)
2022-02-05 21:08:27 -05:00
Stephen Saunders
3be85d9c4b ffmpeg 5 compatibility plus cinematic audio playback on OpenAL & XAudio2
(cherry picked from commit bcb683e8e6ba6cb23acac2f1121c6e3eece1ed01)
2022-02-05 21:08:11 -05:00
Robert Beckebans
cde21c018d Did a little Quake to Doom experiment 2022-02-05 15:49:50 +01:00
Stephen Saunders
813767feea Generalize handling of heap avoid flags in Vulkan and VMA Allocators
(cherry picked from commit 7c49b044d37ff65599470103d360b8d46045bfb5)
2022-02-01 14:38:59 -05:00
Stephen Saunders
6d41dae922 Add display of VK_MEMORY_HEAP_MULTI_INSTANCE_BIT to Vulkan_PrintHeapInfo console command
(cherry picked from commit 794d8e52c81448c09b537b4b9b9767d69dbfc563)
2022-02-01 01:18:27 -05:00
Robert Beckebans
2ea2db396d Fixed random alpha values within exportImagesToTrenchBroom cmd 2022-01-31 16:40:29 +01:00
Stephen Saunders
552ada02d7 macOS Vulkan: Check and disable MoltenVK's use of Metal argument buffers for shader allocation scalability
(cherry picked from commit 939ab3b6396bd7196ce7f0c16cf59c83ebdc6a4e)
2022-01-30 12:41:12 -05:00
Stephen Saunders
96da1f3eed Fix heap flags check in Vulkan Allocator and add heap flags check to VMA Allocator
(cherry picked from commit 488f8d27616570029de9429cf4794886f6d209e1)
2022-01-29 13:28:10 -05:00
Robert Beckebans
e978d92aeb Added TrenchBroom helper entities like func_door_model 2022-01-29 18:10:54 +01:00
Stephen Saunders
e4021513d1 Fixes for: Vulkan+BinkDec validation errors, BinkDec replay in PDAs, macOS Vulkan+BinkDec stall, VK_EXT_debug_utils handling, Vulkan gfxInfo on Windows & Linux, idVulkanAllocator::Free(), idCinematicLocal::GetStartTime(), ImGui timings for timedemo first pass
(cherry picked from commit 2a93ad2380374e1a327f7af4f8e71c27b2b51528)
2022-01-28 10:33:07 -05:00
Robert Beckebans
b31840bda1 Moved CommandlineProgressBar out of RenderCommon.h to its own files 2022-01-22 16:20:21 +01:00
Robert Beckebans
c7499aeb8e Bumped version to 1.4.0 2022-01-22 14:55:03 +01:00
Robert Beckebans
da947328f0 Fixed some wrong texture projections with convertMapToValve220 2022-01-21 19:38:58 +01:00
Robert Beckebans
92c5cbf758 convertMapToValve220 now works with just the .resource files 2022-01-21 18:33:42 +01:00
Robert Beckebans
7279cd5d05 Small export path change 2022-01-20 22:28:18 +01:00
Robert Beckebans
7a0ac78762 Added cmd exportImagesToTrenchBroom 2022-01-20 22:25:06 +01:00
Stephen Saunders
bf889b9631 Vulkan: Simplify Instance error checking, fix validation errors when using BINK decoder, check GPU's maxSamplerAnisotropy
(cherry picked from commit f0f7536e888e4a4b70a71510d5b61313aa4ebb6a)
2022-01-19 23:41:18 -05:00
Stephen Saunders
0c6e72be37 Improve Vulkan instance extension setup, add Vulkan instance and driver info to gfxInfo
(cherry picked from commit 631358eda14468bdc3f8dd5c0ed7998b8e0be0eb)
2022-01-19 23:40:45 -05:00
Robert Beckebans
b7f952ad80 Extended idFileSystem::ListFilesTree to recursive .resources files 2022-01-10 23:22:26 +01:00
Robert Beckebans
55abfc26aa Added entityDef misc_model helper for TB 2022-01-09 11:41:01 +01:00
Robert Beckebans
ef47fc9092 Fixed bug by last filesystem change 2022-01-08 18:33:55 +01:00
Robert Beckebans
c104fff7ea Autoremove rotation keyword for TrenchBroom 2022-01-08 14:30:19 +01:00
Robert Beckebans
3cc6c0744e Added exportModelsToTrenchBroom console command 2022-01-07 18:46:35 +01:00
Stephen Saunders
a6675c1689 Improve GPU Vendor detection for OpenGL renderer
(cherry picked from commit 5556575dc7620a2f25e91ad65306d335dc03588c)
2022-01-07 01:28:16 -05:00
Stephen Saunders
1b865406c0 Add support for Apple GPUs (e.g. M1) and fill-in gfxInfo data for Vulkan renderer
(cherry picked from commit 22f38cef0bbc3997c24990b5ee0f16c05e10de53)
2022-01-07 01:27:45 -05:00
Robert Beckebans
a89dc048e8 DOOM_CLASSIC is ON by default again. closes #627 2022-01-06 18:13:16 +01:00
Robert Beckebans
2b727db4c2 Merge branch 'master' of github.com:RobertBeckebans/RBDOOM-3-BFG 2021-11-16 22:11:31 +01:00
Robert Beckebans
362e7484e4 Added explanation about the difference between lite and full packages 2021-11-16 22:11:27 +01:00
Tobias Frost
b11cd5d1b5 Fix identation of CMakeLists.txt
The mixing of tabs and space lead to confusion; Changes back to tabs,
like the rest of the file
2021-11-15 07:33:05 +01:00
Tobias Frost
9c368cbf56 Fix linking of open_al.
Closes #623
2021-11-15 07:32:50 +01:00
Robert Beckebans
cbf0ffbcca Fixed UV projections within convertMapToValve220 cmd 2021-11-09 21:30:49 +01:00
Robert Beckebans
8863db872e Added CMake options STANDALONE and DOOM_CLASSIC 2021-11-09 19:47:06 +01:00
Robert Beckebans
ebdea5f6c9 Tweaked exportFGD command for new icons 2021-11-06 19:09:40 +01:00
Robert Beckebans
d0f5cd7308 Added new GFX options for SSAO and Ambient Lighting 2021-10-30 17:54:07 +02:00
Robert Beckebans
5b252f82d1 Fixed DPI Scaling problems #616 2021-10-28 11:12:07 +02:00
Robert Beckebans
50a722ec38 Started to port bswf JSON importer to Blender 2.93 2021-10-27 16:24:30 +02:00
Robert Beckebans
84f238fc00 Added _extra_ents.map files for ROE campaign 2021-10-23 16:02:08 +02:00
Robert Beckebans
083b031373 _extra_ents.map files can override entities 2021-10-20 14:49:45 +02:00
Robert Beckebans
b65bef4d62 Use snapped origin of env_probes for new naming convention 2021-10-12 21:08:59 +02:00
Robert Beckebans
77f8031eb9 Allow _extra_ents.map files next to the map files 2021-10-10 17:47:24 +02:00
Robert Beckebans
e1db32fe30 Little TrenchBroom interop fixes 2021-10-09 18:37:53 +02:00
Robert Beckebans
1d7bcb5f27 Tweaked exportFGD further to support sprite icons 2021-10-08 22:46:30 +02:00
Robert Beckebans
efcf72fae4 Tweaked exportFGD to support sprite icons 2021-10-08 20:51:08 +02:00
Stephen Saunders
aeefb34561 Revert commit using getters for gameThread times - wrong type size 2021-10-01 00:29:09 -04:00
Robert Beckebans
79b28779b7 Astyle cleanup 2021-09-28 09:58:48 +02:00
Stephen Saunders
af08e7d414 Use proper getters & setters for gameThread and renderSync times 2021-09-27 22:58:32 -04:00
Stephen Saunders
09e0a4c5c8 Fix Frame time calculation to properly handle CPU/GPU parallelism 2021-09-27 17:56:45 -04:00
Stephen Saunders
3d7cfe7351 Added Total CPU time to Perf Stats overlay, fixed Frame time calculation 2021-09-24 09:03:27 -04:00
Stephen Saunders
45b9850546 Disable detailed GUI timestamps only when 3D timestamps are active 2021-09-23 10:21:03 -04:00
Stephen Saunders
945684f55c Add CPU+GPU total time to Perf Stats & Fix Idle time for non-smp modes 2021-09-23 01:11:05 -04:00
Stephen Saunders
6f3f0ca491 Fix CPU timer scaling on Win64 + minor format changes for FPS overlay 2021-09-22 17:57:19 -04:00
Stephen Saunders
f75701a9ab Fix overwrite of RC_DRAW_VIEW_3D timestamps by RC_DRAW_VIEW_GUI rendering pass 2021-09-22 17:40:11 -04:00
Stephen Saunders
1c41e52fc0 Change libMoltenVK.dylib path in CMakeLists for MoltenVK custom build flexibility 2021-09-20 11:38:34 -04:00
Stephen Saunders
0306b6189a Improve accuracy of gpuMicroSec timer on macOS OpenGL 2021-09-17 14:44:30 -04:00
Robert Beckebans
cbf17d4f36 Cleanup and Astyle 2021-09-11 18:02:16 +02:00
Admer
2f58f2b0c2 Re-order all pragma once statements to be AFTER the precompiled.h include, to silence IntelliSense's warning about PCH header stops 2021-09-11 17:53:30 +02:00
Admer
474a299a27 Use idMapFile instead of CM for brush origin offsets 2021-09-11 17:43:50 +02:00
Admer
302c4aa14d Supress Windows API's DrawText macro, for proper highlighting of idRenderWorld::DrawText 2021-09-11 17:43:50 +02:00
Admer
9381796d3f idEntity: use origin brush offsets 2021-09-11 17:43:50 +02:00
Admer
17068426e4 dmap: write origin brushes to .cm files 2021-09-11 17:43:50 +02:00
Admer
677025bf6c idMaterial: origin flags
# Conflicts:
#	neo/renderer/Material.h
2021-09-11 17:43:50 +02:00
Admer
1e18029909 idParallelJobList: fix syntax highlighting for AddJob 2021-09-11 17:43:50 +02:00
Admer
a1e1bec54a r_skipBloom CVar 2021-09-11 17:43:50 +02:00
Robert Beckebans
80c48e3895 Astyle 2021-09-11 13:02:59 +02:00
Robert Beckebans
6510531ad8
Merge pull request #606 from SRSaunders/game-return-fix
Update gameReturn_t() to explicitly initialize sessionCommand
2021-09-11 12:55:00 +02:00
Stephen Saunders
0a6e7c976f Update gameReturn_t() to explicitly initialize sessionCommand vs. compiler-specific behaviour 2021-09-03 22:13:56 -04:00
Stephen Saunders
aa767c360c Properly delete renderWorld, soundWorld, and menuSoundWorld on shutdown 2021-08-31 10:49:57 -04:00
Robert Beckebans
87bbebac1c Applied Astyle 2021-08-28 15:05:12 +02:00
Robert Beckebans
306e980f8e
Merge pull request #601 from SRSaunders/master
Support for macOS Universal Binary builds and README updates
2021-08-28 14:57:23 +02:00
Robert Beckebans
530e96657e
Merge pull request #600 from SRSaunders/x11xcb-fixes
Remove X11_XCB dependencies for Linux and macOS
2021-08-28 14:55:03 +02:00
Stephen Saunders
a8f870ef18 Add support for macOS universal binary builds (x86_64 & arm64) 2021-08-20 02:13:19 -04:00
Stephen Saunders
04ac31b058 CMakeLists: define VULKAN_USE_PLATFORM_SDL for all UNIX platforms - remove Linux/macOS restriction 2021-08-16 16:57:24 -04:00
Stephen Saunders
c80d601276 Remove all X11_XCB platform-specific code from RBDoom3BFG 2021-07-30 14:08:44 -04:00
Robert Beckebans
b02eaf8f6b
Merge pull request #599 from SRSaunders/binkdec-fixes
Support FFmpeg / BinkDec optionality for macOS
2021-07-30 09:17:15 +02:00
Robert Beckebans
8fb98c011c
Merge pull request #598 from SRSaunders/master
Fix broken glslang include path in CMakeLists.txt
2021-07-30 09:16:02 +02:00
Robert Beckebans
9772dfd88b
Merge pull request #594 from tomgreen66/rbdoom3_osxcpufreqfix
Fix odd output for CPU frequency on Mac
2021-07-30 09:09:04 +02:00
Stephen Saunders
9e57d60850 Disable FFmpeg and enable libbinkdec for macOS release and retail builds 2021-07-29 21:03:18 -04:00
Stephen Saunders
d71eb2bf36 Disable X11_XCB dependencies for Linux and macOS 2021-07-29 00:10:13 -04:00
Stephen Saunders
cbb9610a1b Enable FFmpeg / BinkDec optionality for macOS 2021-07-27 17:24:01 -04:00
Stephen Saunders
7e50d6dcb8 Fix broken glslang include path in CMakeLists.txt 2021-07-27 15:42:54 -04:00
Robert Beckebans
c4030850ab
Merge pull request #595 from r-a-sattarov/master
loongarch64: added initial support of LoongArch64 CPU architecture
2021-07-26 09:36:48 +02:00
Robert Beckebans
34cc04358d idMath::FLT_EPSILON -> idMath::FLOAT_EPSILON for system define clash on macOS 2021-07-26 08:51:44 +02:00
Robert Beckebans
9a0a89dbbd idMath::INFINITY -> idMath::INFINITUM for system define clash on macOS 2021-07-26 08:46:39 +02:00
r-a-sattarov
c82bc9c52b loongarch64: added initial support of LoongArch64 CPU architecture 2021-07-25 21:03:25 +03:00
Thomas Green
3503dd2f17
Use integer to obtain cpufrequency in OSX
Using a double to try to obtain cpufrequency in OSX seems to not produce anything useful (integer representation in a double).  Using int64 seems to work.
2021-07-20 23:51:17 +01:00
Robert Beckebans
d430f6a1fd Astyle 2021-07-08 08:40:03 +02:00
Stephen Saunders
960cd1cd8c Add doc comments to macOS cmake-xcode-vulkan shell scripts 2021-06-28 19:42:26 -04:00
Stephen Saunders
afd7a5e69d Improve macOS build robustness re sysroot path spec 2021-06-21 19:47:19 -04:00
Stephen Saunders
d76110c0d7 Remove gcc/clang default option -fno-unsafe-math-optimizations (ref issue #575) 2021-06-18 01:03:58 -04:00
Stephen Saunders
ae44b1059d Remove unneeded macOS cmd line debug-version shell scripts 2021-06-16 16:09:07 -04:00
Stephen Saunders
041db6b348 Capture mouse properly on macOS when outside of window, fixes issue #584 2021-06-15 01:53:35 -04:00
Robert Beckebans
3b3e08510d
Merge pull request #586 from SRSaunders/master
Release mouse when console opened in-game: revert previous change
2021-06-14 13:24:25 +02:00
Stephen Saunders
b44f3694db Release mouse when console opened in-game: revert previous change to support map dev workflow 2021-06-13 21:10:47 -04:00