Conversation
|
this should probably be fixed by ensuring sane limits here instead (ex. a clamp for enforcing a minimum of 16 - as for why 16, it's the minimum alignment for anything std140, and most of the code was made with that in mind, and most drivers also report that as the minimum alignment) https://github.com/ZDoom/gzdoom/blob/master/src/common/rendering/gl_load/gl_interface.cpp#L188-L189 |
|
The people who wrote this driver should hook up with Raymond Chen... https://devblogs.microsoft.com/oldnewthing/20251013-00/?p=111677 |
|
From the OpenGL Wiki
Perhaps changing the line in hw_lightbuffer.cpp#L55 for something like in hw_bonebuffer.cpp#L47 would do the trick? --- mBlockAlign = screen->uniformblockalignment / ELEMENT_SIZE;
+++ // 64 ?
+++ mBlockAlign = screen->uniformblockalignment < 64 ? 1 : screen->uniformblockalignment / ELEMENT_SIZE; |
closes #2292
Needs testing with Nvidia, Intel and AMD gpus (pre-RDNA) before merge.