Commit graph

1660 commits

Author SHA1 Message Date
Robert Beckebans
b4b025979d Refactored DeviceManager_DX12 members for better diffing with orig Donut sample 2023-03-06 17:05:43 +01:00
Robert Beckebans
d765afa278 Added more profiling events in the render backend 2023-03-06 16:32:20 +01:00
Robert Beckebans
cbdd0b06c8 Merge branch 'master' into sync-changes 2023-03-06 14:59:16 +01:00
Robert Beckebans
d878f99e5c Added more profiling events 2023-03-06 14:59:04 +01:00
SRSaunders
23c3b66c8f
Merge branch 'master' into sync-changes 2023-03-05 09:44:21 -05:00
Stephen Saunders
764469ab31 Revert #if USE_OPTICK wrappers 2023-03-05 09:36:44 -05:00
Stephen Saunders
378b66075c Revert screen shot fs_savepath change for Windows and linux 2023-03-05 08:51:34 -05:00
Stephen Saunders
7b9d36c1d1 Revert compileshaders.cmake to use SPIRV target = vulkan1.2 for macOS / MoltenVK 2023-03-05 08:38:59 -05:00
Robert Beckebans
52398a88cd Changed ENGINE_BRANCH to master 2023-03-05 10:39:59 +01:00
Robert Beckebans
784c46ebc7 Fixed Optick related compile warnings on Linux #750 2023-03-05 11:03:54 +01:00
Stephen Saunders
b1c2cdbec8 More conservative frame sync: wait before vs after DX12 / Vulkan present operations 2023-03-04 21:15:32 -05:00
Stephen Saunders
0c217ebbe9 Fix win32 compilation errors when Optick profiling is off 2023-03-04 21:06:08 -05:00
Stephen Saunders
76da1beefd Fix compilation errors when Optick profiling is off 2023-03-04 16:39:43 -05:00
Stephen Saunders
c5aa8afe8a Fix SDL display size / refresh rate changes when already in fullscreen mode 2023-03-04 16:37:02 -05:00
Stephen Saunders
967f38d64b Save screen shots to fs_savepath versus fs_basepath 2023-03-04 16:19:39 -05:00
Stephen Saunders
f0c61a3f55 Use command queue sync method vs. device sync for higher performance / frame rate 2023-03-04 16:19:39 -05:00
Robert Beckebans
0ac23b5f94 Removed obsolete cvar r_useHDR 2023-03-03 20:48:53 +01:00
Robert Beckebans
c8e32876a0 Removed obsolete cvar r_useSeamlessCubeMap 2023-03-03 20:36:45 +01:00
Robert Beckebans
2583765889 Went back to 15 bits for VERTCACHE_FRAME_MASK 2023-03-03 20:32:48 +01:00
Robert Beckebans
f4f416bc75 Merge branch 'optick-profiler' 2023-03-03 19:53:24 +01:00
Robert Beckebans
c9aefec3ce Added PROFILE_EVENT to RunFrame() 2023-03-03 19:52:46 +01:00
Robert Beckebans
cfd3981409 Fixed the CMake option -DOPTICK=ON/OFF 2023-03-01 16:50:27 +01:00
Robert Beckebans
b3e9c27d74 Display all the common different threads in Optick 2023-03-01 16:20:37 +01:00
Robert Beckebans
18e0e7f2e7 Fixed crash of RBDoom after stopping an Optick capture 2023-03-01 16:13:48 +01:00
Robert Beckebans
513674c4bf Added r_graphicsAdapter to select a specific GPU 2023-02-28 22:01:26 +01:00
Robert Beckebans
a441eccfd0 Super basic Optick profiler integration 2023-02-28 18:00:54 +01:00
Robert Beckebans
b8a99d1330 Tweaked DrawFPS maxTime to reduce flickering if V-Sync is on 2023-02-28 10:40:25 +01:00
Robert Beckebans
6ca5eae2c3 Show picked GPU with com_showFPS > 1 2023-02-28 10:32:39 +01:00
Robert Beckebans
c95419e1d9 Small performance fix 2023-02-27 15:57:00 +01:00
Robert Beckebans
a44a691254 Tweaked exportFGD to output more FGDs with autogenerated model definitions 2023-02-24 15:36:29 +01:00
Robert Beckebans
99d7338d12 Blend shadowmaps smoothly in for small distant lights #746 2023-02-24 15:21:19 +01:00
Robert Beckebans
ee3fbb46f0 Skip shadowmaps for small distant lights #746 2023-02-24 13:55:29 +01:00
Robert Beckebans
302eb3fa85 Don't allocate non shadow casting lights into the shadow atlasgit difftool #746 2023-02-24 13:05:38 +01:00
Robert Beckebans
91abc9dffd Added menu option to choose between DX12 and Vulkan 2023-02-23 20:22:03 +01:00
Robert Beckebans
f1e9d79fb7 Added Stephen Pridham and HarrievG to menu credits 2023-02-23 10:11:58 +01:00
Robert Beckebans
fc7802e007 Astyle 2023-02-23 09:55:53 +01:00
Stephen Saunders
1af7a289d5 Align permitted SDL monitor refresh rates with Windows 2023-02-23 01:48:30 -05:00
Stephen Saunders
395eabb2d2 Fix frame-over-frame timers for F12 screenshots 2023-02-23 01:39:28 -05:00
Robert Beckebans
3ad7774376 Don't display messed up timings caused by taking screenshots using F12 2023-02-22 21:11:13 +01:00
Robert Beckebans
0a1162aea0 Detect displays that only support 144, 165 and 240 Hz 2023-02-22 17:47:21 +01:00
Robert Beckebans
bdd5d8dd81 Merge branch 'master' into vma-integration 2023-02-22 13:19:55 +01:00
Robert Beckebans
204611036e Removed obsolete shader globs from CMakeLists.txt 2023-02-22 13:04:55 +01:00
Robert Beckebans
e4b7122006 Added cmake .bat files for VS2022 2023-02-22 12:37:41 +01:00
Robert Beckebans
c1fdd0cffb Fixed SSAO flickering when TAA is off #744 2023-02-22 09:48:00 +01:00
Stephen Saunders
abb3e12d39 Clean up bufferDesc initialization for idUniformBuffer::AllocBufferObject() 2023-02-19 11:30:14 -05:00
Stephen Saunders
2a0341df5f Enable shaderStorageImageReadWithoutFormat device feature for new SSAO compute shader 2023-02-19 02:25:16 -05:00
Stephen Saunders
82a39cd59a Improve cvar name for r_vmaAllocateBufferMemory 2023-02-17 10:35:03 -05:00
Stephen Saunders
8c2cae0458 Define r_vmaUseForBufferMemory cvar to control if VMA is used for buffer memory allocation 2023-02-17 00:22:58 -05:00
Stephen Saunders
658521bd22 Fix PCH with VMA allocator for all platforms: Win32, Linux, macOS 2023-02-16 20:22:25 -05:00
Stephen Saunders
5a881847be Simplify BufferObject_NVRHI logic for VMA, support *Buffer::Reference() for VMA buffer objects 2023-02-16 12:44:09 -05:00
Stephen Saunders
46fc1b8b7c Add NVIDIA copyright notices to borrowed code in BufferObject_NVRHI.cpp and Image_NVRHI.cpp 2023-02-16 00:39:44 -05:00
Stephen Saunders
3029b80486 Fix posix pthread_yield and readdir_r deprecations on linux 2023-02-16 00:06:43 -05:00
Stephen Saunders
ea2982c445 Improve Vulkan SDK component detection (dxc & MoltenVK) using FindVulkan.cmake module 2023-02-15 23:36:18 -05:00
Stephen Saunders
8ac44895e1 Fix PCH build failures (on linux) when USE_VMA allocator option enabled 2023-02-15 23:00:50 -05:00
Stephen Saunders
86a6e486d5 Set NVRHI upload buffer size to avoid Vulkan staging buffer fragmentation
(cherry picked from commit 3a55e9701a6f4ad5297d41e3486aeb4075972383)
2023-02-14 01:11:43 -05:00
Stephen Saunders
73df924ee2 Add VulkanMemoryAllocator (vma) to the libs directory 2023-02-14 01:05:23 -05:00
Stephen Saunders
421160087d Integrate the AMD Vma allocator for images and buffer objects 2023-02-13 19:06:41 -05:00
Robert Beckebans
a12db413fc Added missing TAA pixeloffset to SSAO pass 2023-02-11 18:08:00 +01:00
Robert Beckebans
3e201f63be Switched back to old projection matrix for less warping 2023-02-11 16:36:46 +01:00
Robert Beckebans
01c2db8bbd Fixed pixelNormal in ssao_compute.cs.hlsl 2023-02-11 15:41:45 +01:00
Robert Beckebans
c4748f584f Merge branch '649-donut-ssao' 2023-02-11 14:32:08 +01:00
Robert Beckebans
b4d2b03079 Removed old obsolete SSAO minify shader 2023-02-11 14:31:26 +01:00
Robert Beckebans
5de9dd9b68 Donut SSAO is kind of working 2023-02-11 14:24:59 +01:00
Robert Beckebans
2ca5a759c9 Merge branch '649-donut-ssao' 2023-02-08 09:24:39 +01:00
Robert Beckebans
9d45866a1a Simplified old SSAO backend code 2023-02-08 09:24:23 +01:00
Robert Beckebans
1d1ad26adf More SSAO experiments 2023-02-07 21:07:29 +01:00
Robert Beckebans
846cf265fb Added code for debugging Donut's SSAO pass 2023-02-07 15:06:40 +01:00
Stephen Saunders
050c766f9d Optimization: Skip ssao compute step for 2d gui overlay views 2023-02-04 01:08:46 -05:00
Stephen Saunders
0f869604c9 Run new ssao pass on 3d + 2d overlay views to avoid flickering, skip for 2d-only views 2023-02-03 17:20:25 -05:00
Stephen Saunders
c7ad3f2801 Add required render matrices to SsaoConstants and init them for render pass 2023-01-30 16:00:51 -05:00
Robert Beckebans
defe317c50 Applied MD3 crashfix by Daniel Gibson 2023-01-30 16:28:00 +01:00
Stephen Saunders
6d83ad0f8d Include modelMatrix in new SSAO compute shader constant buffer 2023-01-29 23:38:40 -05:00
Stephen Saunders
866244ffdd Fix AmbientOcclusion_blur.ps.hlsl shader for legacy r_ssaoFiltering option 2023-01-29 02:01:15 -05:00
Stephen Saunders
a466a7a4ad Restore bounded array in mipmapgen.cs.hlsl for DXIL UAV binding 2023-01-25 21:08:25 -05:00
Stephen Saunders
8fe25bf987 Fix legacy SSAO for NVRHI Vulkan and enable SSAO compute shader alternative 2023-01-25 14:23:14 -05:00
Stephen Saunders
0c7f8be44e Restore rm_precomp_header custom target for makefile / ninja command line builds 2023-01-25 12:42:42 -05:00
Stephen Saunders
ace8829cda Fix ImGui include path handling to be consistent with other external libs 2023-01-25 12:27:32 -05:00
Robert Beckebans
dfcbcc2a0a Ran astyle 2023-01-18 10:16:21 +01:00
Robert Beckebans
0a983d32ad Merge remote-tracking branch 'SRSaunders/cinematic-updates' 2023-01-18 10:04:00 +01:00
Robert Beckebans
6f89d31d19 Applied astyle 2023-01-18 09:55:03 +01:00
Robert Beckebans
68144334b6 Reverted shader related changes in CMakeLists.txt 2023-01-18 09:54:36 +01:00
Robert Beckebans
7a4c56e105 Merge remote-tracking branch 'SRSaunders/basepath-sdl-fixes' 2023-01-18 09:48:04 +01:00
Stephen Saunders
d62e8a1e55 Disable precompiled headers for the Ninja Multi-Config generator on linux & macOS 2023-01-16 11:28:20 -05:00
Stephen Saunders
2565b1f58f Generalize basepath search logic for single-config dev builds on linux/macOS when using make or ninja 2023-01-14 01:37:49 -05:00
Robert Beckebans
eb017e40c5 Cleanup 2023-01-13 14:43:09 +01:00
Stephen Saunders
c4a2f52fbf Simplify precompiled.h.gch cleanup for linux/macOS using post-build custom command 2023-01-12 15:40:35 -05:00
Stephen Saunders
245d06c4d6 Comment out redundant Shaders source groups in main CMakeLists, already handled inside Shaders target 2023-01-12 15:31:18 -05:00
Stephen Saunders
2d1945044a Create macOS app bundle for Xcode release / universal builds, add macOS app icon, update README 2023-01-12 14:46:36 -05:00
Stephen Saunders
502522826a Minor consistency change for USE_VK define in DeviceManager.h 2023-01-09 13:41:23 -05:00
Stephen Saunders
26edabe752 Rename / update macOS cmake build scripts, update README to reflect new names 2023-01-08 00:30:02 -05:00
Stephen Saunders
5137637126 Filter SDL video modes same as on Win32, fix SDL window position drift when exiting fullscreen 2023-01-08 00:25:05 -05:00
Stephen Saunders
7485a123f6 Fix idParser::Directive_include() to properly handle full os path as fetched by idLexer::GetFileName() 2023-01-07 22:53:11 -05:00
Stephen Saunders
1c4883354b Fix linux/macOS CreateOSPath() regression by eliminating path-relative references in fs_basepath 2023-01-07 22:44:42 -05:00
Stephen Saunders
1340adb820 Restore support for FFMPEG legacy channel_layout & channels fields, remove self-assignment in idSoundDecoder_Vorbis::Open()
(cherry picked from commit 22f9e5cc0e42a8d101f628df461ee7649acb3e01)
2022-12-26 12:20:50 -05:00
Stephen Saunders
21b021c3c0 Update FFMPEG deprecated calls to use supported ch_layout structure
(cherry picked from commit c6fca09b0e2e24735ca808e75e90f6d03e4d16e5)
2022-12-26 12:20:42 -05:00
Stephen Saunders
f1b0f2ec00 R_TestVideo_f command fixes and Cinematics startup fix for NVRHI (BinkDec green frame)
(cherry picked from commit 846fcf14c723391c6e6b311eaaeb31926b1e65d1)
2022-12-26 12:20:25 -05:00
Stephen Saunders
600f4de937 Merge branch 'master' of https://github.com/RobertBeckebans/RBDOOM-3-BFG into cinematic-updates 2022-12-26 12:18:55 -05:00
Stephen Saunders
e7b681a06e Build-time perf improvement for PCH, c_str() fix in idCameraAnim::gltfLoadAnim() 2022-12-24 14:10:55 -05:00
Robert Beckebans
21947e8f08 Merge branch 'master' into 635-nvrhi5 2022-12-22 16:49:18 +01:00
Robert Beckebans
5eaa7801db Merge fixes, default models scene remains Scene 2022-12-22 16:46:29 +01:00