Commit graph

839 commits

Author SHA1 Message Date
nashmuhandes
a39c84a77a Define the shadow casting style on an Actor using a property. Currently only for lightmaps. 2025-06-13 12:57:02 +08:00
Magnus Norddahl
ad4a923cc9 Remove the mesh limits and resize the GPU buffers as needed 2025-06-11 23:13:07 +02:00
Magnus Norddahl
03d0177fc9 Oops, wrong value suggested for vk_amd_driver_check 2025-06-11 18:46:48 +02:00
Magnus Norddahl
772b4629e1 Put the AMD driver check behind a CVAR 2025-06-11 18:40:01 +02:00
nashmuhandes
c40a36ea7c Allow lm_dynamic to be able to set level-wide in ZDRayInfo 2025-06-12 00:23:36 +08:00
Magnus Norddahl
3f1dcce970 Bake models into the level mesh 2025-06-11 03:38:40 +02:00
Magnus Norddahl
cfe282f4bd Model rendering to mesh builder 2025-06-10 20:32:27 +02:00
Ricardo Luís Vaz Silva
daab336784 make lm_dynlights toggling work 2025-06-01 01:10:42 +02:00
Ricardo Luís Vaz Silva
42e20f248d force allow light updates when lm_dynlights is on 2025-06-01 01:10:42 +02:00
Magnus Norddahl
1791167fe5 Draw sorted by pipeline 2025-05-30 18:52:44 +02:00
dpjudas
cc92dda41a Avoid applying state on every draw 2025-05-26 04:26:36 +02:00
Magnus Norddahl
f302f03287 Change level mesh draw code to draw ranges in the mesh rather than the entire mesh 2025-05-25 18:18:29 +02:00
Ricardo Luís Vaz Silva
7461fc202b match gzdoom light limit 2025-05-25 13:54:16 +02:00
Magnus Norddahl
a85cd66747 Use the tonemap PP pass to convert blended render styles back to palette colors 2025-05-20 04:09:31 +02:00
Magnus Norddahl
5a5c8d4bde Use the game palette to find the material color 2025-05-20 03:20:46 +02:00
dpjudas
3dbb4d7b9c Add lightmap and dynamic lights 2025-05-19 17:23:28 +02:00
Magnus Norddahl
990ce7c6c9 Render scene with indexed textures for vid_rendermode 2 2025-05-19 05:55:03 +02:00
Ricardo Luís Vaz Silva
e0897ae8b2 remove broken precise midtexture trace, fix sky tracing for actors 2025-05-16 00:47:50 +02:00
Magnus Norddahl
156d7e7af2 Correctly apply sunlight to line portals 2025-05-13 15:18:33 +02:00
Magnus Norddahl
0c0e29b18d Add sunlight to line portals 2025-05-13 14:38:35 +02:00
Magnus Norddahl
76fb5901d7 Only force baking of tiles where the geometry changed 2025-05-13 01:52:02 +02:00
Magnus Norddahl
2d772dc0f2 GCC doesn't like this static const int for some weird reason... 2025-05-12 20:00:32 +02:00
Magnus Norddahl
be4b0cb67b Stop memory allocations by keeping the RectPacker around 2025-05-12 14:26:24 +02:00
Magnus Norddahl
2c069349a3 Portal and high update count fixes 2025-05-12 00:39:41 +02:00
Magnus Norddahl
6cf3cdb871 Make LevelMeshUpdater responsible for updating the tiles (playsim tells the mesh updater, the level mesh tells the tiles) 2025-05-11 20:11:18 +02:00
Magnus Norddahl
bfb37a89c3 Fix deactivated lightmap light not working 2025-05-11 17:58:07 +02:00
Magnus Norddahl
737b7ece96 Dynamically allocate and free lightmap tiles 2025-05-10 03:07:17 +02:00
Ricardo Luís Vaz Silva
d5f5c71d67 Bone Getters Part 2/3, plus fixed warnings for MSVC
* add getters for frame poses

* fix missing joint in GetJointPose

* clean up models_iqm.cpp

* clean up usage of I_GetTimeFrac, split out matrix calculation into its own function

* clean up SetModelBoneRotationInternal

* clean up a few float <-> double and unsigned <-> signed warnings

* fix more warnings

* further clean up warnings

* split mode ObjectToWorldMatrix stuff

* initial work on bone getters, matrix hell

(the matrix/vec3 multiplications are probably wrong af, just gotta add more stuff 'till i can test it)

* clean up matrix math

* GetBone/TransformByBone

* fix GetBoneFramePose

* fix ObjectToWorldMatrix

* fix missing array resize

* raw matrix getters (for use with gutamatics/etc)

* reverse matrix mult order

* replace GetBoneLength/GetBoneDir with GetBoneBaseTRS

* fix GetBonePosition, remove GetBoneWorldMatrix as it's useless

* GetBonePosition

* deduplicate code

* rename GetBonePosition to GetBoneBasePosition to avoid confusion

* GetBoneBaseRotation

* GetBonePosition helper function

* forgot include_offsets
2025-05-10 08:42:20 +08:00
Magnus Norddahl
91cc8b15ae Oops, this shouldn't have been committed :p 2025-04-26 15:57:02 +02:00
Magnus Norddahl
64e08cc921 Include address info to access violations 2025-04-26 15:56:39 +02:00
Magnus Norddahl
98ff358a3a Workaround AMD driver crash by disabling rayquery for all AMD cards 2025-04-21 18:49:22 +02:00
Magnus Norddahl
213305cc2d Move the fatal error logging out of win32 and use it on Linux and macOS 2025-04-20 23:19:45 +02:00
Magnus Norddahl
8090f395e2 Fix some warnings 2025-04-20 18:25:08 +02:00
Magnus Norddahl
26b10dbdda Validation layer wants layout specified during linking (is it right? nobody knows! the vulkan spec is unreadable in this part, thanks khronos!)
Fix light probe pass using depth stencil format selection before it was set
2025-04-20 18:15:38 +02:00
dpjudas
4f1316b3fd Add thread safety to VkShaderCache 2025-04-19 09:30:17 +02:00
dpjudas
74e2e39e35 Add thread safety to VkShaderManager::GetProgram 2025-04-19 08:57:43 +02:00
dpjudas
22b7f02305 Remove vulkan shader modules 2025-04-19 08:24:43 +02:00
dpjudas
8f180e3a3f Never clear the RenderPassSetup map as that will force pipelines to rebuild 2025-04-14 01:41:44 +02:00
Magnus Norddahl
3823196765 Revert "Remove resource system voodoo and make some lines slightly more readable"
This reverts commit 9bc869e1a6.

Revert "Fix race condition"

This reverts commit 883e3ce907.

Revert "Run the GLSL compiler on the worker thread"

This reverts commit da0ff9ab04.
2025-04-13 17:15:13 +02:00
Magnus Norddahl
9bc869e1a6 Remove resource system voodoo and make some lines slightly more readable 2025-04-13 14:49:04 +02:00
RaveYard
b1a61d5f30 Add fallback for pipeline creation
Wait... you have to check an extra boolean to know if the extension is actually supported?! What were they thinking?!
2025-04-12 17:25:55 +02:00
Magnus Norddahl
dd782038e4 Add async texture loading 2025-04-12 01:52:17 +02:00
Magnus Norddahl
883e3ce907 Fix race condition 2025-04-12 00:35:14 +02:00
Magnus Norddahl
da0ff9ab04 Run the GLSL compiler on the worker thread 2025-04-11 23:17:43 +02:00
nashmuhandes
167114a110 Hide pipeline creation debug messages 2025-04-12 00:46:34 +08:00
Magnus Norddahl
389ad18411 Prioritize seen pipelines over precached and spread the work across the threads 2025-04-11 00:20:01 +02:00
RaveYard
c975360b38 Fix Linux/macOS builds 2025-04-10 16:46:10 +02:00
RaveYard
5fb2fa48c5 Add support for multiple pipeline work threads 2025-04-10 16:46:10 +02:00
RaveYard
6f83f166e9 Fix crash when switching gl_ubershaders off 2025-04-10 16:46:10 +02:00
dpjudas
202d99bf9e Add worker thread for creating pipelines 2025-04-10 08:17:45 +02:00