Stephen Saunders
16077c7cd6
Update jpeglib's format_message() error routine to use snprintf() for buffer security
2023-06-20 13:16:37 -04:00
Stephen Saunders
52dd6193bf
Replace sprintf() / vsprintf() with idStr::snPrintf() / idStr::vsnPrintf() for buffer security
2023-06-20 12:24:24 -04:00
Stephen Saunders
5ff88fdfd0
Fix Doom Classic crashes on exit and/or quit
2023-06-15 15:13:52 -04:00
Stephen Saunders
078eb4e779
Fix SDL window vs. Vulkan swapchain extent errors, align SDL vs. Win32 window handling & error logic
2023-06-09 14:48:36 -04:00
Stephen Saunders
db79692287
Implement Vulkan eMailbox present mode option, perform runtime check for all present modes
...
(cherry picked from commit 268c057af1aaf59833c52744ee76465c697ebdac)
2023-06-06 11:43:50 -04:00
Stephen Saunders
9ab8c2a4da
Init swapChainBufferCount to NUM_FRAME_DATA (all renderers) and clamp to Vulkan surfaceCaps
2023-06-06 11:42:22 -04:00
Stephen Saunders
89ad088ef3
Set r_maxFrameLatency max value constraint to NUM_FRAME_DATA
2023-06-01 01:01:53 -04:00
Stephen Saunders
444b25a1e8
Wait for Vulkan device idle in DestroyDeviceAndSwapChain() to avoid random crashes on exit
2023-06-01 00:53:02 -04:00
Stephen Saunders
85e980421a
Change r_maxFrameLatency cvar name and set to default value of 2 frames
2023-05-27 01:40:40 -04:00
Stephen Saunders
8a915b88a4
Enable PCH in CMakeLists for Optick-enabled builds with non-MSVC compilers
2023-05-24 01:11:18 -04:00
Stephen Saunders
9ebe476f4f
Remove unnecessary Vulkan cast for m_SwapChain when calling OPTICK_GPU_FLIP()
2023-05-23 14:45:34 -04:00
Robert Beckebans
387c10ee52
Fixed crash in Delta Labs Sector 3 with Vulkan on Linux (Radeon RX 6700)
2023-05-23 17:50:25 +02:00
Stephen Saunders
34332dbeeb
Implement m_frameLatencyWaitableObject sync for reduced DX12 frame latency
2023-05-23 08:48:56 -04:00
Stephen Saunders
2b933df6da
Enable VSync / Present queue frameID labeling for DX12
2023-05-23 08:24:40 -04:00
Stephen Saunders
22dc020401
Redo Optick D3D12 VSync / Present queue labeling using measured vs. calculated frame latency
2023-05-23 08:19:53 -04:00
Robert Beckebans
5cbca047e7
Merge remote-tracking branch 'SRSaunders/dx12-alt-enter-fix'
2023-05-22 18:36:26 +02:00
Robert Beckebans
1788b9c92f
Bumped version to 1.5.1
2023-05-22 18:30:00 +02:00
Robert Beckebans
87bedde244
Fixed PSO creation error in Erebus 3 map. #770
2023-05-22 18:27:32 +02:00
Stephen Saunders
6bb8c1feeb
Remove unneeded Vulkan extensions: VK_KHR_present_id + macOS-specifics
2023-05-13 10:22:52 -04:00
Stephen Saunders
cf7883f688
Replace std::llround() with (int64_t) cast in optic_gpu for linux compatibility (no C++23)
2023-05-13 10:07:47 -04:00
Stephen Saunders
2d46e47046
Disable DXGI automatic display mode switching for alt-enter borderless fullscreen
2023-05-12 14:43:07 -04:00
Stephen Saunders
be6088eee4
Extend Optick to support labeling of D3D12 VSync / Present queue with frame IDs
2023-05-12 03:04:06 -04:00
Stephen Saunders
0b510de3e9
Update RenderBackend to select OPTICK_GPU_CONTEXT graphics API at runtime
2023-05-12 03:01:11 -04:00
Stephen Saunders
7c4f41bfd5
Extend Optick GPUContextScope() with typeless prototype for runtime selection of graphics API
2023-05-12 02:40:05 -04:00
Stephen Saunders
6769126b14
Add Vulkan Present / VSync queue profiling if VK_GOOGLE_display_timing extension available
2023-05-04 22:51:30 -04:00
Stephen Saunders
85a9186c5b
Add Optick profiler support for Vulkan Present / VSync queue via VK_GOOGLE_display_timing extension
2023-05-04 22:51:30 -04:00
Stephen Saunders
4ca70e0e17
Resolve Optick delayed GPU timestamps before dumping data on stop capture
2023-05-04 22:51:30 -04:00
Stephen Saunders
23e313cb6f
Improve Optick Vulkan GPU profiler clock sync to reduce offset errors and drift
2023-05-04 22:51:30 -04:00
Stephen Saunders
18665e34a1
Fix Optick threadTLS nullptr check and OPTICK_SET_MEMORY_ALLOCATOR stub #define
2023-05-04 22:51:30 -04:00
Stephen Saunders
d9d721a73e
Add Optick for Vulkan, remove need for USE_OPTICK_GPU, fix calls to OPTICK_SHUTDOWN()
2023-05-04 22:51:30 -04:00
HarrievG
ab7fefcadc
- Added possibility to use Focal Length / FOV animation with GLTF Camera animations.
...
- Added blenderPy script which shows howto set lenscurves as a custom prop float array containing all evaluated fov values
- minor cleanup to gltfparser and gltfExtras.
- gltfExtra key value pairs can now contain a bracket enclosed string as value
# Conflicts:
# neo/idlib/gltfProperties.h
2023-04-29 12:43:54 +02:00
Robert Beckebans
edb62c15d9
Never commit stuff before testing
2023-04-29 12:22:33 +02:00
HarrievG
03bbf9aaf4
-Fixed timestamp check while loading a camera animation from a gltf file
...
- Set gltfCamera fov to framefov during anim
# Conflicts:
# neo/d3xp/Camera.cpp
2023-04-29 12:02:58 +02:00
Robert Beckebans
ad41a268b0
Fixed crash when executing extract_resources.cfg on Linux
2023-04-29 13:35:07 +02:00
Robert Beckebans
f07d8881b2
Find bone of selected armature if -transfermotion is given
2023-04-18 21:09:10 +02:00
Robert Beckebans
97c302f761
If -DSTANDALONE=ON option is set filesystem will look for content/ instead of base/
2023-04-13 22:04:34 +02:00
Robert Beckebans
d5473c51f1
Added glTF2 import option -nomikktspace
2023-04-13 21:49:39 +02:00
Robert Beckebans
097995d21a
Fixed crash and made the -rotate [yaw] glTF2 import option functional
2023-04-13 21:31:34 +02:00
Robert Beckebans
52acc84901
[glTF2] Fetch all skinned for selected rig
2023-04-12 18:43:26 +02:00
Robert Beckebans
d1d04d70da
Fixed support for static glTF2 models
2023-04-12 14:09:21 +02:00
Robert Beckebans
9e927137c6
Use FindModelRoot() in idRenderModelGLTF::GetAnimBin()
2023-04-12 12:56:01 +02:00
Robert Beckebans
00b27d3141
Extended FindModelRoot logic
2023-04-10 17:17:28 +02:00
Robert Beckebans
c67a1b4379
Added glTF2 code comments
2023-04-09 20:51:01 +02:00
Robert Beckebans
f2739e4abc
Fixed bone hierarchy when -addorigin is used
2023-04-09 20:41:18 +02:00
Robert Beckebans
114dbcd2c3
Some fixes to get the xaero.glb loading. Still broken
2023-04-09 17:24:52 +02:00
Robert Beckebans
0ca9d755a1
Fixed glTF2 root node lookup
2023-04-08 18:47:27 +02:00
HarrievG
cdce094518
gltf GetNode mesh* fix
2023-04-08 15:25:53 +02:00
HarrievG
a8703607d3
+ bug fixes for animated gltf models
...
+ crude attempt to support translation animations on armature bone
# Conflicts:
# neo/renderer/Model_gltf.cpp
2023-04-08 15:25:18 +02:00
Robert Beckebans
bc5b4d97e9
Made idRenderModelGLTF::rootID private
2023-04-08 15:17:07 +02:00
Robert Beckebans
d2115c1a07
Cleanup, indented comments
2023-04-06 15:44:07 +02:00
Robert Beckebans
033282f8d6
Avoid copy constructor in glTF library
2023-04-04 22:36:46 +02:00
HarrievG
41a0c9a310
- Fixed loading gltf models with multiple skinned meshes
...
- All skeletons wil now automatically use the armature node as root bone. In gltfs with a single armature you can name the armature "origin". You can also rename the armature node on import with -rename "armature" "origin".
2023-04-04 22:36:46 +02:00
Robert Beckebans
1d36dcf1a4
Removed glew and updated LICENSE_EXCEPTIONS with new third parties
2023-04-02 16:02:35 +02:00
Robert Beckebans
383d4b84c7
exportEntityDefsToBlender exports to _bl/entities.json
2023-04-02 15:42:14 +02:00
Robert Beckebans
75e6fe2a27
Prefer high performance GPUs in laptops with DX12 #746
2023-04-02 12:31:22 +02:00
Robert Beckebans
8c9f79b28f
Applied Astyle
2023-03-31 12:28:41 +02:00
Stephen Saunders
7880773f1a
Disable Win32 SC_MAXIMIZE for faster borderless fullscreen transitions
2023-03-31 11:54:44 +02:00
Stephen Saunders
acc3038933
Improve SDL desktop window position error handling and sdl_vkimp error reporting
2023-03-31 11:54:44 +02:00
Stephen Saunders
dafed51a79
Simplify VKimp_Init() and remove defunct cvars
2023-03-31 11:54:44 +02:00
Stephen Saunders
b427ec338c
Support Borderless Fullscreen and Borderless Window modes for Win32 and SDL platforms
2023-03-31 11:54:44 +02:00
Robert Beckebans
33b54481d1
Little cleanup
2023-03-30 22:58:59 +02:00
Robert Beckebans
49dc6cee46
Reverted com_smp back to boolean
2023-03-30 19:30:33 +02:00
Robert Beckebans
aeb219589a
Merge branch 'master' into vsync-fixes
2023-03-30 18:10:31 +02:00
Stephen Saunders
e8b76ee1ab
Give each Vulkan swapchain image (vs frame) its own acquire/present semaphore
2023-03-30 01:07:43 -04:00
Robert Beckebans
a05d73ecef
Removed unused cvar r_useHalfLambert
2023-03-29 21:20:19 +02:00
Stephen Saunders
3c4cdea02a
Define r_mvkSynchronousQueueSubmits cvar to control MoltenVK's queue submit option
2023-03-28 12:15:41 -04:00
Stephen Saunders
59b4555bc9
Optimize macOS frame sync / fps by enabling MoltenVK asynchronous queue submission
2023-03-27 15:51:43 -04:00
Stephen Saunders
4207e22e10
Fix frame "Sync" timer calculation to handle Vulkan Vsync modes
2023-03-26 23:32:16 -04:00
Stephen Saunders
98a5d63cdc
nvrhi sync option for DX12 supporting NUM_FRAME_DATA = 2 or 3
2023-03-24 13:15:00 -04:00
Stephen Saunders
5968997562
Fix Vulkan Vsync mode and handle NUM_FRAME_DATA = 2 or 3
2023-03-24 11:29:40 -04:00
Stephen Saunders
2faa15bab5
Fix Vsync mode switching to support all modes: 0 (off), 1 (smart), 2 (on)
2023-03-24 10:04:34 -04:00
Robert Beckebans
fd86362724
Show shadow atlas stats with com_showFPS 3
2023-03-18 14:44:59 +01:00
Robert Beckebans
518af4c257
Enable D3D12 Debug Layer with r_useValidationLayers 2
2023-03-17 19:01:41 +01:00
Robert Beckebans
9f305c2399
Removed stencil shadow volumes with additional fixes by icecoldduke
2023-03-16 20:49:30 +01:00
Robert Beckebans
a6d76a7104
Stencil shadows work but some flicker as bad as in RBDOOM 1.4.0
2023-03-15 12:36:43 +01:00
Robert Beckebans
1e29c5e15d
Fixed r_useShadowAtlas 0
2023-03-14 23:55:37 +01:00
Robert Beckebans
d846b54e72
Fixed most stencil shadows related bugs. Still not working
2023-03-14 22:06:19 +01:00
Robert Beckebans
a5a6bf0e33
Format doomclassic with Astyle too
2023-03-14 10:33:41 +01:00
HarrievG
fd975a8f24
Fixed recursive mesh adding in findEntities for gltf scenes
2023-03-13 19:28:55 +01:00
Robert Beckebans
972a727f1e
Changed animated glTF2 models to be cached like md5 so model overlays work on them
2023-03-13 19:25:30 +01:00
Robert Beckebans
d1c8425153
Store glTF2 source timestamp in .bglb binary cache file
2023-03-13 19:17:07 +01:00
Robert Beckebans
ef9b2e6504
Removed broken aviDemo code. External tools do a better job on this
2023-03-12 12:40:21 +01:00
Robert Beckebans
1c2380e285
Removed obsolete sdl_glimp.cpp
2023-03-11 12:49:44 +01:00
Robert Beckebans
e5519c5fc4
Removed many obsolete #if defined( USE_NVRHI )
2023-03-10 19:25:56 +01:00
Robert Beckebans
a973403fd7
Removed OpenGL code from win_glimp.cpp
2023-03-10 19:02:59 +01:00
Robert Beckebans
95f9b4de4a
Removed more obsolete Vulkan code
2023-03-10 18:49:32 +01:00
Robert Beckebans
f8faac469a
Cleanup of RenderSystem.h
2023-03-10 18:39:53 +01:00
Robert Beckebans
cf9f430d1c
Killed entire HLSL -> GLSL conversion code
2023-03-10 18:23:28 +01:00
Robert Beckebans
8975f59f62
Removed more obsolete Vulkan & OpenGL code
2023-03-10 18:03:20 +01:00
Robert Beckebans
9121f84559
Started to clean up the renderer removing obsolete Vulkan bits
2023-03-10 17:10:25 +01:00
Robert Beckebans
e664ac1665
Speed up bakeLightGrids by turning off vsync temporarily
2023-03-08 18:37:52 +01:00
Robert Beckebans
d17a537d3b
Moved OPTICK_GPU_CONTEXT into #if USE_OPTICK_GPU firewall
2023-03-07 20:25:12 +01:00
Robert Beckebans
fa3589de66
LightEditor: Draw volume of selected light and move it with arrow keys
2023-03-07 18:26:43 +01:00
Robert Beckebans
814e5c2686
Merge branch '750-better-vsync'
2023-03-07 11:23:35 +01:00
Robert Beckebans
5f269a84a6
Merge branch '750-better-vsync' of github.com:RobertBeckebans/RBDOOM-3-BFG into 750-better-vsync
2023-03-07 11:22:52 +01:00
Robert Beckebans
12789bd95e
Added basic support for Optick and D3D12
2023-03-07 11:22:46 +01:00
Robert Beckebans
e98272d708
Merge remote-tracking branch 'SRSaunders/sync-changes' into 750-better-vsync
2023-03-07 10:03:06 +01:00
Robert Beckebans
a09273af32
Fixed compile issues on Linux
2023-03-07 09:45:54 +01:00
Stephen Saunders
5aad7eb005
Disable Metal API Validation for Xcode debug builds
2023-03-07 00:10:46 -05:00
Robert Beckebans
2ad666adcf
NUM_FRAME_DATA cleanup
2023-03-06 20:31:54 +01:00
Robert Beckebans
dc27b0dd40
Fixed merge conflicts and updated copyright notices
2023-03-06 20:06:15 +01:00
Robert Beckebans
9b67e2a91a
Merge branch 'sync-changes' into 750-better-vsync
2023-03-06 19:58:14 +01:00
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
HarrievG
defc18ddaa
[!] Fixed loading animations when the armatures option is not used..
2022-12-22 15:27:16 +01:00
HarrievG
0a48ec16d4
[!] Fixes loading animations from different GLTF files
...
[!] Fixes loading file exclusive skinned models when multiple scenes are present and scene with model is not the default scene.
2022-12-22 15:27:16 +01:00
HarrievG
8496f9bf30
[!] Fixes regenerating bMD5Anim from GLTF animation when source is newer than binary
2022-12-22 15:27:16 +01:00
HarrievG
e5ec631caf
[+] Allowing binding of asset library instances in gltf scenes.
2022-12-22 15:27:16 +01:00
HarrievG
1cd57dce1d
[!] dont crash when trying to load an animation from and GLB does not match last loaded model glb
2022-12-22 15:27:15 +01:00
HarrievG
0e42fbba93
[!] Root motion transfer fixes.
2022-12-22 15:27:15 +01:00
HarrievG
34d616b08c
GLTF model import improvements
...
- Added rename node option
- Added option for root motion transferal
- Fixed re-orient option parsing
- Fixed last(?) bug in orientation frame conversion
2022-12-22 15:27:15 +01:00
HarrievG
0829898cb4
[!] Fixed loading animated file exclusive models
...
[!] Fixed reloading of models with a commandline (anims: todo)
2022-12-22 15:27:15 +01:00
HarrievG
e97584642a
[!] Make missing joints on player model non-fatal
2022-12-22 15:27:15 +01:00
HarrievG
250c06bfc0
[!] Make checkmodelhierachy non-fatal
2022-12-22 15:27:14 +01:00
HarrievG
8c18d58c49
[+] Added -reorient option to gltf model import
2022-12-22 15:27:14 +01:00
HarrievG
0cf9dac1ef
A-Style
...
# Conflicts:
# neo/d3xp/Camera.cpp
# neo/d3xp/Camera.h
2022-12-22 15:27:14 +01:00
HarrievG
31d79dfd36
[~] idAssert -> assert
...
[+] addOrigin model import option
# Conflicts:
# neo/renderer/Model_gltf.cpp
2022-12-22 15:25:01 +01:00
HarrievG
bba7ddd665
[!] Merge error fixes
...
# Conflicts:
# neo/idlib/MapFile_gltf.cpp
# neo/renderer/Model_gltf.cpp
2022-12-22 15:22:30 +01:00
Robert Beckebans
407086a603
Astyle
2022-12-19 12:40:45 +01:00
Robert Beckebans
91a33de38e
Deleted obsolete cmake shortcut bash files
2022-12-19 12:39:35 +01:00
Stephen Saunders
308892db87
Change DeviceManager_VK Vulkan API calls to NVRHI API, fix vulkan dll unloading bug
2022-12-16 13:42:12 -05:00
Stephen Saunders
591d9d71a7
Clean up macOS cmake build scripts and handle macOS makefile build path within Sys_DefaultBasePath()
2022-12-14 12:50:05 -05:00
Stephen Saunders
cd2bb986c2
Handle macOS / linux differences for build path option within Sys_DefaultBasePath()
2022-12-14 01:30:48 -05:00
Stephen Saunders
7f37eccf61
Extend Sys_DefaultBasePath() to check IDE build path for linux and macOS
2022-12-13 21:28:26 -05:00
Stephen Saunders
55a9950dd8
Support USE_MoltenVK cmake option for macOS NVRHI builds, update xcode cmake scripts
2022-12-12 18:13:55 -05:00
Stephen Saunders
fbeb02df9c
Fix Vulkan descriptor set selection within bink and bink_gui shaders
2022-12-12 17:55:08 -05:00
Stephen Saunders
f41cc5e46a
Decouple FFMPEG / BINKDEC cmake options from x86-only SSE intrinsics, fix macOS-specific logic for intrinsics and PCH
2022-12-12 17:48:49 -05:00
Stephen Saunders
4dc2a8ca12
Fix compileshaders.cmake to reference USE_VULKAN, fix missing override warning in Model_local.h
2022-12-12 17:35:51 -05:00
Robert Beckebans
3f8bc0a568
Fixed FramebufferInfoEx in CommonPasses
2022-12-06 23:51:49 +01:00
Robert Beckebans
a94f67adaa
Point to latest RB/nvrhi/main
2022-12-06 23:43:56 +01:00
Robert Beckebans
22f10571e3
Fixed Win64 build. Renamed USE_NVRHI_VULKAN to USE_VULKAN
2022-12-06 23:28:48 +01:00
Robert Beckebans
e02f2f92c2
Removed obsolete glslang submodule
2022-11-22 18:49:25 +01:00
Robert Beckebans
432af457ca
Removed legacy GL/Vulkan backends from CMakeLists.txt
2022-11-22 18:47:31 +01:00
Robert Beckebans
632ad33f80
Write constant buffers if changed or layout changed
2022-11-20 15:42:48 +01:00
Robert Beckebans
c48346c551
Move nvrhi::Device->waitForIdle() back to GL_BlockingSwapBuffers()
2022-11-20 13:37:10 +01:00
Robert Beckebans
74c8a9f94e
Always write the constant buffer -> BAD but works
2022-11-20 13:34:46 +01:00
Stephen Pridham
a7f83bf631
Update the render state whenever the constant buffer is written to
2022-11-20 12:52:07 +01:00
Stephen Pridham
47d68fb6e0
Invalid binding set cache if either vertex data or joint data changes
2022-11-20 12:52:07 +01:00
Stephen Pridham
2ac23b0c9b
Add back uniformsChanged = false
2022-11-20 12:52:07 +01:00
Stephen Pridham
8f190b85c2
Remove unused comment
2022-11-20 12:52:07 +01:00
Stephen Pridham
7a82dc1c9b
Update NVRHI submodule
2022-11-20 12:52:07 +01:00
Stephen Pridham
726c4524e9
Update map buffer calls. Astyle
2022-11-20 12:52:07 +01:00
Stephen Pridham
4af1742b17
Astyle
2022-11-20 12:52:06 +01:00
Stephen Pridham
e3ede978d4
Update to make it easier to switch constant buffer usage
2022-11-20 12:52:06 +01:00
Stephen Pridham
47312f8997
Allow buffer ranges for constant buffers
2022-11-20 12:52:06 +01:00
Stephen Pridham
c1c0334bf2
Fix VK descriptor set slot for motionBlur shader
2022-11-20 12:52:06 +01:00
Robert Beckebans
3a3af32ddb
Replaced std::min/max with Min/Max
2022-11-19 16:46:21 +01:00
Robert Beckebans
636e64a1f4
Astyle after merge conflicts
2022-11-18 16:58:08 +01:00
Robert Beckebans
37127cde0e
Merge branch 'master' into 635-nvrhi4
2022-11-18 16:51:40 +01:00
Robert Beckebans
8a821c3a7a
Astyle
2022-11-18 16:47:29 +01:00
Stephen Saunders
96347cab74
Minor defensive #ifdef change in sdl_vkimp for SetScreenParmsWindowed() - handle non-macOS / non-linux case
2022-11-18 10:30:08 -05:00
Stephen Saunders
afacd8014c
Improve timer stats, get / set displayFrequency, implement Vulkan vsync mode 1, fix DX12 vsync mode 0 for fullscreen
2022-11-17 23:42:06 -05:00
Stephen Saunders
8d57d5399b
Skip GL_BlockingSwapBuffers() sync during shutdown when in Doom 3 mode (com_smp = -1)
2022-11-14 23:38:55 -05:00
Stephen Saunders
7a7571f88a
Fix window resize/fullscreen handling and make consistent between DX12 and Vulkan (Windows & SDL)
2022-11-11 21:51:31 -05:00
Robert Beckebans
f1d7f2ff9e
Fixed compile errors
2022-11-11 17:34:38 +01:00
Robert Beckebans
ad78435446
Merge branch '721-gltf2-cameras' into 705-gltf2-import-options
2022-11-11 17:00:47 +01:00
Robert Beckebans
6689d60b74
Passed idImportOptions along the animations loader code
2022-11-11 16:59:36 +01:00
Robert Beckebans
0d5d947f17
Apply import options to glTF2 models
2022-11-11 16:59:36 +01:00
Robert Beckebans
6cbb205ece
Hook idImportOptions into idRenderModel*::InitFromFile()
2022-11-11 16:59:36 +01:00
Robert Beckebans
81d70dc5d8
Parse idImportOptions for model declarations
2022-11-11 16:59:36 +01:00
Robert Beckebans
e499514fea
Little cleanup of the glTF2 code
2022-11-11 16:59:35 +01:00
Robert Beckebans
891ba7478e
Added idMat4::GetTranslation() and some comments
2022-11-11 16:58:19 +01:00
Robert Beckebans
9f50dbc9bc
Astyle
2022-11-11 13:12:38 +01:00
HarrievG
389798ee4b
[!] Corrected Spot light transforms
...
[+] Added support for GLTF cameras. useable with idCameraView and idAnimatedCamera
2022-11-11 13:11:21 +01:00
HarrievG
3d366ba386
[!] Fixed runtime reloading for gltf models
...
[!] Fixed timestamp check for static models
2022-11-11 13:11:21 +01:00
Stephen Saunders
f5745b4ab6
Support window resize and fullscreen changes on Windows and Linux without validation errors
2022-11-10 14:56:18 -05:00
Stephen Saunders
f6e5571d39
Support image depth/stencil format D32S8 when D24S8 not available (e.g. Vulkan on AMD GPUs)
2022-11-10 14:50:09 -05:00
Stephen Saunders
80c56e573d
Fix compile errors: DeviceManager.h include path for DX12, sync2 structure initialization typo for Vulkan
2022-11-10 12:19:54 -05:00
Stephen Saunders
f756ef26c2
Move DeviceManager_<API>.cpp files to neo/sys directory for single stream common maintenance
2022-11-08 16:33:29 -05:00
Stephen Saunders
7703d4221d
Vulkan timer query fixes, support in-game display mode / window size / vsync changes
2022-11-08 15:27:09 -05:00
Stephen Saunders
1adedfd3fc
Vulkan volatile buffer and validation error fixes (sync2, fillModeNonSolid, MoltenVK imageViewFormatSwizzle)
2022-11-08 15:21:50 -05:00
Robert Beckebans
7fb6948777
Merge branch '635-nvrhi3-cleanexit' into 635-nvrhi3
2022-11-03 18:54:56 +01:00
Robert Beckebans
600e50ad50
Astyle
2022-11-03 18:54:38 +01:00
Robert Beckebans
e9284c3818
Use fixed size (-8 -8 0, 8 8 16) bounds for all model based entities for TB
2022-11-02 15:51:12 +01:00
Robert Beckebans
15a9d12661
exportFGD proxymodel fix
2022-11-02 11:44:38 +01:00
Robert Beckebans
1ee669c31f
Merge branch 'master' into 635-nvrhi3
2022-10-29 19:09:30 +02:00
Robert Beckebans
3a877568e4
Support glTF2 vertex colors for static models
2022-10-29 19:08:12 +02:00
Robert Beckebans
b53271fc68
No need to set the rotation for the Blender lights
2022-10-29 18:25:56 +02:00
Robert Beckebans
7166b50501
Astyle
2022-10-29 17:42:09 +02:00
HarrievG
889f613610
[+] Ext_KHR_lights_punctual::Point support
...
[!] Fix for multple collections, entity names will be written out according to the full hierarchy.
2022-10-29 17:37:47 +02:00
Stephen Saunders
3d3658384d
Cleanup references to nvrhi::IDevice on shutdown, otherwise device won't clean up properly on final exit
2022-10-28 17:50:48 -04:00
Stephen Saunders
9734df5f01
Fix NVRHI device shutdown for SDL and do additional resource cleanup on exit
2022-10-28 14:11:10 -04:00
Stephen Saunders
8219860378
Clean up NVRHI resources before Sys_Quit(), otherwise non-zero exit code (destructors too late)
2022-10-27 14:52:08 -04:00
HarrievG
2cf8d5c8f9
[+] Recursive entity/collection support for gltf maps
...
[+] KHR_lights_punctual spotlight support
2022-10-27 12:10:32 +02:00
HarrievG
9589ea300d
[+] Inline support for gltf maps; add "inline" 0 property to an idStaticEntity or func_static to not inlude it in the map bsp. Defaults to 1
2022-10-27 12:10:32 +02:00
Robert Beckebans
98ed96adf4
LoadOgg fix
2022-10-27 12:09:47 +02:00
Robert Beckebans
dd69e30e40
Reenabled parallel shader compiling on Windows
2022-10-26 11:09:50 +02:00
Robert Beckebans
b3bab4de96
Merge branch 'master' into 635-nvrhi3
2022-10-26 10:59:41 +02:00
Robert Beckebans
822ff7d860
Astyle
2022-10-26 10:59:22 +02:00
Robert Beckebans
b12379e1af
Merge branch '635-nvrhi3-sdl' into 635-nvrhi3
2022-10-25 20:55:54 +02:00
Robert Beckebans
bb79eae285
Turn off SSAO if Vulkan is active
2022-10-25 20:42:16 +02:00
Robert Beckebans
40aec4ca2e
Turn off timer queries if Vulkan is active
2022-10-25 20:33:03 +02:00
Robert Beckebans
bdea96cc2a
Astyle
2022-10-25 19:11:22 +02:00
Robert Beckebans
7ee1180d22
Build with NVRHI Vulkan by default
2022-10-25 19:10:47 +02:00
Robert Beckebans
b58f009369
LoadOgg fix
2022-10-25 19:02:34 +02:00
Stephen Saunders
9eef374819
Update DeviceManager_VK.cpp for Windows and SDL (linux + macOS) cross-platform portability
2022-10-23 23:31:12 -04:00
Richard Tollerton
bc8882b8a2
Cinematic.cpp: Revert removal of void from METHODDEF(void), etc.
...
In fd6c589d
, all instances of (void) were replaced by (). However, the libjpeg
defines `METHODDEF`, `LOCAL`, `GLOBAL`, and `EXTERN` (see `jmorecfg.h`) are
occasionally used in code as if they are functions:
```
METHODDEF(void)
METHODDEF void
init_source( j_decompress_ptr cinfo )
```
fd6c589d
therefore breaks these builds when `USE_NEWER_JPEG` is defined, because
several function definitions are missing return types.
2022-10-23 17:49:56 -05:00
Richard Tollerton
a7322c1131
Add various move constructors
...
Commit 93b8564b
requires move constructors for many classes which do not
presently exist; they seem simple enough to add.
Fixes #708 .
2022-10-23 17:49:54 -05:00
Stephen Saunders
2ffb89c80e
Fix builtin/VR case sensitivity on linux, fix r_useValidationsLayers on macOS when USE_MoltenVK set
2022-10-23 08:45:53 -04:00
Stephen Saunders
86bcffdd00
Build / Source changes for NVRHI on SDL, source cleanup for clang C++17 std, initial macOS NVRHI implementation
2022-10-21 23:46:42 -04:00
Robert Beckebans
ddb2be02ff
Merge branch 'master' into 635-nvrhi3
2022-10-20 17:08:08 +02:00
Robert Beckebans
9866e121ba
Cleanup & Astyle
2022-10-20 16:40:11 +02:00
HarrievG
b1e198ce57
- fixed dmap crash while trying to merge leaf nodes
2022-10-20 16:28:40 +02:00
HarrievG
3702fb1dec
- removal of backface genration in Aasbuild for polygonmeshes.
2022-10-20 16:28:40 +02:00
Robert Beckebans
73b70ce4ba
Astyle
2022-10-19 18:26:14 +02:00
Robert Beckebans
0119d754b9
Merge pull request #659 from SRSaunders/vulkan211-fixes
...
Enable VK_KHR_portability_enumeration for macOS on Vulkan SDK 1.3.211.0 or later
2022-10-19 18:17:30 +02:00
Robert Beckebans
f11ae43dcf
Merge pull request #707 from SRSaunders/compiler-fixes
...
List.h fix and Doom Classic snprintf() fixes for modern clang and gcc compilers
2022-10-19 18:15:29 +02:00
Robert Beckebans
2a9d846dab
Merge pull request #699 from Admer456/better-idlist-perf
...
Thanks for the contribution :)
2022-10-19 18:14:19 +02:00
Stephen Saunders
4691a4cf01
Include STL <algorithm> in List.h to define std::copy() for clang 14+
...
(cherry picked from commit 2c36496af53d89a74cf3e9d7889a019c829afb48)
2022-10-18 14:24:05 -04:00
Robert Beckebans
fc42078ccf
Fixed Linux compile issues. Closes #702 #703
2022-10-13 09:37:14 +02:00
HarrievG
67022836c4
~ Fixed pose root root matrix correction.
...
- Removed single bone orientation hack
- removed unused code.
2022-10-11 20:48:03 +02:00
Robert Beckebans
e792a586a6
Merge branch 'master' into 635-nvrhi3
2022-10-01 14:22:37 +02:00
Robert Beckebans
f08657cb3f
Fixed random Unknown punctuation error while loading a glTF2 model
2022-10-01 13:59:10 +02:00
Robert Beckebans
0991956693
Merge branch 'master' into 635-nvrhi3
2022-09-26 22:13:43 +02:00
Admer
93b8564b6e
Add move semantics to idList and idStr
...
* idListArrayResize uses std::move
* idStr implements move constructor
* and move operator
* mpMap_t also implements a move operator
2022-09-26 20:54:27 +02:00
Robert Beckebans
e4ed5733fc
Moved BSP visualization into separate dmap -asciiTree option
2022-09-26 13:32:42 +02:00
HarrievG
28730655a1
Fixed boneless TRS animations
2022-09-26 12:05:50 +02:00
HarrievG
d8f7b72d74
Fixed multiplication order for idRenderModelGLTF::ProcessNode_r
2022-09-26 11:52:49 +02:00
Robert Beckebans
0ede52ba72
Transform entity geometry for dmap -glview .obj output into world space
2022-09-26 11:51:41 +02:00
Robert Beckebans
d8aba3e850
Renormalize normals & tangents from dmap .glb import
2022-09-26 11:50:29 +02:00
Robert Beckebans
ace5c7e87f
Merge branch 'master' into 635-nvrhi3
2022-09-26 10:18:23 +02:00
Robert Beckebans
0b677fe752
Fixed dmap .glb world+entity geom for the Y-Up case
2022-09-26 10:06:13 +02:00
Robert Beckebans
02941624f9
Repaired glTF2 animations for the Y-Up case
2022-09-26 00:31:47 +02:00
Robert Beckebans
64cd34412c
Fixed math problem and transposed idMat4::ToMat3()
2022-09-26 00:30:20 +02:00
Robert Beckebans
c23a30003b
Merge branch 'master' into 635-nvrhi3
2022-09-25 14:41:39 +02:00
Robert Beckebans
868fd1dce3
.glb models require the +Y-Up option to be turned off
2022-09-25 14:16:29 +02:00
Robert Beckebans
abff7d850c
Merge branch 'master' into 635-nvrhi3
2022-09-25 13:48:54 +02:00
Robert Beckebans
111c554215
Merge branch '519-background-music'
2022-09-25 13:32:13 +02:00
Robert Beckebans
d36cbec34b
Make sound files in base/music/* automatically loop
2022-09-25 13:31:56 +02:00
Robert Beckebans
379057ecaa
Cleanup
2022-09-24 21:28:39 +02:00
Robert Beckebans
d3227eb2b0
Sub meshes for entities from Blender work but only without the Y-Up option
2022-09-24 21:06:30 +02:00
Robert Beckebans
03c1a91647
Attempt to use submodels with origin != 0 0 0
2022-09-24 20:13:48 +02:00
Robert Beckebans
cc169f9ba8
Merge branch 'master' into 635-nvrhi3
2022-09-23 19:26:13 +02:00
Robert Beckebans
a02f7dde13
Merge branch '694-nvrhi-vulkan-swapchain' into 635-nvrhi3
2022-09-23 19:21:26 +02:00
Robert Beckebans
283e94269f
Removed obsolete HLSL shaders and changed Vulkan descriptor sets
2022-09-23 19:15:01 +02:00
Robert Beckebans
620a1616ed
Made sure that struct VS_IN has the same signature for all idDrawVert shaders
2022-09-23 18:04:59 +02:00
Robert Beckebans
4c85798e67
Fixed rendering of the main menu with Vulkan
2022-09-23 09:39:48 +02:00
Robert Beckebans
c55467ef33
Fixed several Vulkan errors
2022-09-22 20:08:07 +02:00
Robert Beckebans
1d456a9026
Probably fixed Vulkan swapchain problem
2022-09-22 18:34:07 +02:00
Robert Beckebans
d6f4ccb072
Extended dmap glview option to print an ASCII art BSP tree in the proc file
2022-09-21 18:38:23 +02:00
Robert Beckebans
6512628af8
Tweaked dmap -glview option to dump an .obj next to the .proc file with similar content
2022-09-20 18:01:18 +02:00
Robert Beckebans
d7d699258b
Tweaked dmap -glview option to dump an .obj next to the .proc file with similar content
2022-09-19 20:05:31 +02:00
Robert Beckebans
9307983475
Some code to debug the NVRHI swapchain problem
2022-09-17 20:01:06 +02:00
Robert Beckebans
44d65a6377
Switched nvrhi to github.com/RobertBeckebans/nvrhi.git
2022-09-17 13:37:34 +02:00
Robert Beckebans
f975108e43
Merge branch 'master' into 635-nvrhi3
2022-09-17 09:06:53 +02:00
Robert Beckebans
f426ae3472
Bumped required C++ standard to 14
2022-09-17 08:55:55 +02:00
Robert Beckebans
5569af4f26
Astyle
2022-09-17 08:55:07 +02:00
HarrievG
4401deac27
idList iterator fix
...
parser cleanup fix
2022-09-17 08:55:07 +02:00
Robert Beckebans
5c01fb206e
Astyle
2022-09-17 08:12:31 +02:00
HarrievG
e0d178b14d
idList iterator fix
...
parser cleanup fix
2022-09-17 08:04:34 +02:00
Robert Beckebans
4dbb4bd114
Renamed r_gapi to r_graphicsAPI
2022-09-17 08:01:22 +02:00
Robert Beckebans
322245d9f1
Small fixes to get the ingame AF editor running
2022-09-15 11:44:26 +02:00
Robert Beckebans
25b7680cfb
Added Imgui AF editor by Stephen Pridham
2022-09-15 11:03:22 +02:00
Robert Beckebans
f4e84b50db
Adapted imgui_stdlib to idStr
2022-09-15 11:02:43 +02:00
Robert Beckebans
86dd5558da
Added imgui_stdlib.h interface
2022-09-15 10:36:37 +02:00
Robert Beckebans
2249abbbd8
Updated Imgui to version 1.88
2022-09-15 10:34:02 +02:00
Robert Beckebans
a72b78fd26
Synced renderer with SP branch for the most parts
2022-09-14 18:03:29 +02:00
Robert Beckebans
75b299b6c0
Merge branch 'master' into 635-nvrhi3
2022-09-14 16:26:15 +02:00
Robert Beckebans
55b9937380
Formatted jpeg-6 code with Astyle
2022-09-12 20:47:41 +02:00
Robert Beckebans
a86e001738
Added more Makkon textures to convertMapQuakeToDoom cmd
2022-09-12 18:53:26 +02:00
Robert Beckebans
5d5de028ea
Improved Quake .map converter to get Makkon's samplemaps working
2022-09-11 15:34:29 +02:00
Robert Beckebans
4335eed1a7
Added sample sound shaders for looping background music
2022-09-10 22:09:24 +02:00
Robert Beckebans
18a4af8dd4
Formatted terrible oggvorbis code with Astyle
2022-09-10 21:28:59 +02:00
Robert Beckebans
3219e86f01
Also play music after loading a savegame
2022-09-10 21:14:24 +02:00
Robert Beckebans
12c9664a55
Scan for music/*.ogg files and play a different track for each map
2022-09-10 19:52:35 +02:00
Robert Beckebans
7e4694aa3e
Merged Ogg Vorbis support from DNF id Tech 4 branch
2022-09-10 14:01:35 +02:00
Robert Beckebans
d7d3694118
Added ancient oggvorbis code from vanilla Doom 3
2022-09-10 13:35:51 +02:00
Robert Beckebans
7f95839129
[bakeLightGrids] Fixed too bright grid points caused by bad cubemap captures
2022-09-06 18:39:47 +02:00
Robert Beckebans
2e6f61f9cb
Merge branch 'master' into 635-nvrhi3
2022-09-06 12:24:11 +02:00
Robert Beckebans
4652eb94d9
Merge pull request #646 from davidebeatrici/collisionmodel-contactinfo-material-id-init
...
cm/CollisionModel: Initialize "material" and "id" fields in "contactInfo_t"
2022-09-05 22:33:15 +02:00
Robert Beckebans
de6ab9d31f
Removed #define JPEG_INTERNALS from Cinematic.cpp. Closes #684
2022-09-05 22:29:53 +02:00
Robert Beckebans
539c3a93cd
Formatted doomclassic code with Astyle
2022-09-05 22:25:33 +02:00
Robert Beckebans
b04ba7fcfd
Fixed GCC compile error caused by the glTF2 code
2022-09-05 22:07:19 +02:00
Robert Beckebans
30b394bd3f
Fixed inconsistent override warnings
2022-09-05 21:57:17 +02:00
Robert Beckebans
3c1bcc2153
Fixed Linux compile issues caused by glTF2 code
2022-09-05 19:29:11 +02:00
Robert Beckebans
fd6eee32e3
Removed idVec4i
2022-09-04 16:15:02 +02:00
Robert Beckebans
007c601c58
Merge branch '679-gltf-map-support2' into 679-gltf-map-support-nvrhi
2022-09-04 13:43:31 +02:00
Robert Beckebans
b775de0e99
Merge branch 'master' into 679-gltf-map-support2
2022-09-04 13:41:47 +02:00
Robert Beckebans
4258367037
Fixed glTF2 bounding box calculation if GPU skinning is used
2022-08-16 20:35:52 +02:00
HarrievG
8b5dc677e3
- fixed asserts while converting gltf meshes primitives
2022-08-16 20:26:37 +02:00
Robert Beckebans
f22d7f511b
Merge branch '679-gltf-map-support2' into 679-gltf-map-support-nvrhi
2022-08-16 13:45:58 +02:00
Robert Beckebans
f195a7670e
Merge branch '635-nvrhi2' into 679-gltf-map-support-nvrhi
2022-08-16 13:44:44 +02:00
Robert Beckebans
3ea4ac29fe
Fixed support for glTF2 uint16 weight indices
2022-08-16 13:00:52 +02:00
Robert Beckebans
88b02efd6d
Fixed camera clipping with static glTF2 models
2022-08-16 10:41:00 +02:00
Robert Beckebans
5f43800b02
Merge remote-tracking branch 'HarrievG/679-gltf-map-support2' into 679-gltf-map-support2
2022-08-16 09:21:12 +02:00
HarrievG
1d354e995f
- fix for file exclusive gltf models
2022-08-15 16:13:04 +02:00
Robert Beckebans
f451b41981
SP: Update debug drawing so that it's only allocating vertex/index buffer once.
2022-08-15 14:28:10 +02:00
Robert Beckebans
1e30b08363
SP: Fix null indexbuffer issue when the validation layers are enabled
2022-08-15 14:20:19 +02:00
Robert Beckebans
b709b4ee6b
Merged reloadImages fix from SP branch #674
2022-08-15 13:36:00 +02:00
Robert Beckebans
c52e4c345d
( ) -> ()
2022-08-15 12:23:38 +02:00
Robert Beckebans
e243072f56
Merge remote-tracking branch 'origin/679-gltf-map-support2' into 679-gltf-map-support2
2022-08-15 11:16:02 +02:00
HarrievG
457e0e143b
- Fixed missing surfaces in multi surface/texture gltf models.
2022-08-14 20:02:06 +02:00
HarrievG
486315c7e7
- removed global gltfParser so it cannot be used as an singleton anymore.
...
- fixed destruction and cleanup of gltfData and gltfParser
- gltfParser always fixes up skeletonID's for skins that do not have it set.
- fixed gltfData::GetAnimation to also check for duplicates taking multple targets for the same animation into account.
- several boneless animation fixes
[!] [ BUG WARNING ] Be aware -> for some reason models/meshes that use multple textures are not drawn correctly; ATM onlt single texure users are correct.
2022-08-14 13:43:12 +02:00
HarrievG
ecaf297ef6
Allow for multple GLTF/GLB to be loaded at the same time.
2022-08-07 15:56:46 +02:00
HarrievG
d0ff0a7f64
Dont load GLTF data when loading bglb/bgltf
2022-08-07 15:05:14 +02:00
HarrievG
8e889c1804
Fixed non Simdpath for idRenderModelGLTF::UpdateSurface
2022-08-06 20:43:25 +02:00
HarrievG
2ef1fe3ce2
idRenderModelGLTF::NearestJoint
2022-08-04 01:40:59 +02:00
HarrievG
b41411f8d0
Fixed axis conversion for gltfModels with animated translations
2022-08-03 21:44:42 +02:00
HarrievG
7e7ee22f3b
AAS support for MapPolygonMehses
2022-08-03 02:14:06 +02:00
HarrievG
b6bccf19d0
Fixed gltf animation bounds.
2022-08-01 22:05:13 +02:00
HarrievG
c5f8af3b66
corrected sw skinning bounds
2022-07-31 21:37:42 +02:00
HarrievG
e56f696c9c
- Skinned / animated GLTF models
2022-07-31 12:13:07 +02:00
HarrievG
edf657f50d
- Initial GLTF Animation Implementation. For now only supports boneless TRS animations without scale.
...
![only works with r_UseGpuSkinning 0]!
- Writes bmd5anim for each animation. its not perfect yet but, rot + trans looks good.
- Model tag supports gltf Animations. Indexed the same way as meshes.
- Enabled weights and bone index in ConvertFromMeshGltf
2022-07-10 21:09:25 +02:00
GoGo de Sica
c2b2598ced
Fix include in OpenGL RenderBackend
2022-07-04 00:55:57 +02:00
Robert Beckebans
007ad7dde7
Don't use TAA jitter when capturing env probes!
2022-07-03 14:46:14 +02:00
Robert Beckebans
60330e2d8d
Always clear the envprobe FBO for lightgrid capturing
2022-07-03 14:16:04 +02:00
Robert Beckebans
cdc39a0294
Merged some smaller cleanups from the SP branch
2022-07-03 11:26:54 +02:00
SRSaunders
62161be257
Merge branch 'master' into cinematic-updates
2022-07-03 00:12:40 -04:00
Robert Beckebans
d292e46148
Merge pull request #644 from davidebeatrici/sound-openal-pointer-check-array
...
sound/OpenAL/AL_CinematicAudio.cpp: Remove address check against array, zero out music buffer on shutdown
2022-07-02 14:29:22 +02:00
Robert Beckebans
c824d41152
Fixed merge conflict
2022-07-02 13:01:25 +02:00
Robert Beckebans
374897f750
Merge branch '679-gltf-map-support2' into 679-gltf-map-support
2022-07-02 12:55:10 +02:00
Robert Beckebans
525f00395c
Print engine version when starting to write a qconsole.log
2022-06-29 10:24:28 +02:00
Robert Beckebans
1664626bbb
Fixed window icon by adding the missing doom.rc
2022-06-28 09:31:57 +02:00
Robert Beckebans
ad922d6f49
Merge branch '655-nvrhi-gpu-skinning' into 635-nvrhi2
2022-06-27 19:56:30 +02:00
Robert Beckebans
539b25d799
Merged GPU skinning code by SP and did additional refactoring
2022-06-27 19:54:20 +02:00
Robert Beckebans
fbc07156d2
Merge branch 'master' into 635-nvrhi2
2022-06-26 15:46:48 +02:00
Robert Beckebans
3d269124b2
Don't generate collision models for every rendermodel in advance
...
(cherry picked from commit 82928cce8b6544466f4131b9bfd602ab2fa033d6)
2022-06-26 15:29:51 +02:00
Robert Beckebans
a664f8599e
Dmap: always write a .cm file, especially when overwriting from a mod dir
2022-06-26 15:29:13 +02:00
Robert Beckebans
04606dc3cf
Dmap: always write a .cm file, especially when overwriting from a mod dir
2022-06-26 15:28:15 +02:00
Robert Beckebans
ffd18bf9d4
Fixed duplication of glTF models
2022-06-26 13:24:55 +02:00
Robert Beckebans
5446ae31e4
Fixed binaryzation of .glb models that don't have 'models' as main scene
2022-06-26 12:23:21 +02:00
Robert Beckebans
cd41a6b785
Merge branch 'master' into 635-nvrhi2
2022-06-26 10:27:45 +02:00
Robert Beckebans
844bbb577f
Support the Valve 220 texture projection in MapPolygonMesh::ConvertFromBrush()
2022-06-26 10:20:58 +02:00
Robert Beckebans
0364eeb2f9
Automatically remove map collision .cm, .bcm files before running dmap
2022-06-26 10:20:57 +02:00
Robert Beckebans
131e4f1ce3
Crashfix: Don't refesh the screen using prints during engine shutdown.
2022-06-26 10:20:57 +02:00
HarrievG
833f112f4e
- gltfMesh support for mesh tag in idDeclModelDef
2022-06-25 15:05:59 +02:00
HarrievG
8030a5b1de
- idRenderModelGLTF now set dynamicModel_t to DM_STATIC when no anims are found, or to DM_CONTINUOUS
...
- idRenderModelGLTF now does only transform the model verts on read for DM_STATIC. Vertices for dynamicmodels are transformed on instantiation [wip]
- A-Style update
2022-06-24 21:40:08 +02:00
HarrievG
8f80816183
- binary loading/writing for (static) gltfMesh
2022-06-21 22:07:27 +02:00
HarrievG
6840b3a13e
- added cnew make batch file for vs2019
2022-06-21 00:44:01 +02:00
Robert Beckebans
90d329c78b
Moved FinishSurfaces for gltf
2022-06-21 00:20:25 +02:00
Robert Beckebans
d87d05e82c
Split Model_gltf.cpp into idlib/MapFile_gltf.cpp
2022-06-21 00:18:24 +02:00
HarrievG
39bdcba4ba
Merge remote-tracking branch 'RB/679-gltf-map-support2' into 679-gltf-map-support2
2022-06-21 00:03:31 +02:00
HarrievG
e84ef1edb2
transform bugs
2022-06-21 00:02:58 +02:00
Robert Beckebans
5f58f73845
Fixed missing generation of tangent spaces for glTF files
2022-06-20 23:57:13 +02:00
HarrievG
18677c0e4a
Merge remote-tracking branch 'RB/679-gltf-map-support2' into 679-gltf-map-support2
2022-06-20 22:34:43 +02:00
Robert Beckebans
6e3a048833
Merge remote-tracking branch 'HarrievG/679-gltf-map-support2' into 679-gltf-map-support2
2022-06-20 22:34:25 +02:00
Robert Beckebans
4f6f65f4b8
Ignore line definitions in OBJ files
2022-06-20 22:33:01 +02:00
HarrievG
d0b9d8f8a8
astyle
2022-06-20 22:25:52 +02:00
Robert Beckebans
57b0b9620f
Fixed idassert in Release builds
2022-06-20 20:55:50 +02:00
HarrievG
9e4cd947a1
- cleanup YUP define
...
- added rotation for entities
- models scene can be overriden with cvar
2022-06-20 01:12:45 +02:00
Robert Beckebans
52a99ea5f6
Astyle
2022-06-19 22:25:33 +02:00
HarrievG
44c4ba9e46
- if no meshname is given while trying to load a idRenderModelGLTF, add all primitives from the default scene of that gltf as surfaces
2022-06-19 22:19:27 +02:00
HarrievG
1f22320d37
- correct axis transform for gltf assets
2022-06-19 21:58:43 +02:00
HarrievG
72b535f0ac
- Fixed bsp/worldspawn scene node traversal
2022-06-19 01:26:16 +02:00
Robert Beckebans
0cb72166f8
Added missing copyright notices
2022-06-18 11:09:09 +02:00
Robert Beckebans
fd6c589da0
( ), ( void ) -> ()
2022-06-18 10:43:30 +02:00
Robert Beckebans
35d809a145
Astyle
2022-06-18 10:36:48 +02:00
HarrievG
e5ecb219e5
- hierarchical bsp/worldmodel loading
...
- gltf support for model def. Looks up item within the "models" scene of the target gltf!
2022-06-18 01:18:28 +02:00
Robert Beckebans
b147183658
Don't generate collision models for every rendermodel in advance
...
(cherry picked from commit 82928cce8b6544466f4131b9bfd602ab2fa033d6)
2022-06-16 12:32:58 +02:00
Robert Beckebans
2d133b6910
Made hashing faster in MapPolygonMesh::GetGeometryCRC()
2022-06-11 11:54:01 +02:00
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