Conversation
|
I'm getting some findings with light styles on my diff testing system. I wasn't sure if the difference is real at first, but then I noticed that the correlation between the brightness of the light fixture and the brightness of the rest of the room is broken. Observe how in this screenshot, the closest fixture is bright but the walls are dark. On master they change together. Thanks for splitting up the PR, now there will be a lot less stuff to narrow down.
This is not true btw. |
Apaprently it is indeed, but all the values that are ever assigned to it are either all 0s, all 1s, an 8-bit precision colour (like |
Interestingly enough, I don't get this issue with a build of #1473 on my end, so I might have messed up the cherry-pick somehow (or fixed this issue later without knowing). |
`u_Color` was a vec4 that was being set from a `Color` object, which only has 8-bit precision per colour, so using up 4 times more memory than that to transfer it was quite atrocious. Instead, pack it into a uint32_t, then use `unpackUnorm4x8()` to unpack in the shader. Also adds a macro for unpacking for hardware that doesn't support `GL_ARB_gpu_shader5`.
6d9e9e5 to
7453c4c
Compare
|
When set to >= 0, the value of this cvar (in milliseconds) will be used for time-based shader effects.
|
I've added an |
|
The time for my screenshot is 2375. |
|
The bright light with dark walls can also happen on master with some combination of cvars. Need to track down which ones. |
What settings are you using there? I've tried both high and low, the result is the same as on my screenshot. |
That was In the testing script all renderer settings are default, except some resolution/fullscreen stuff. Try with |
|
Apparently this is because |
This is being multiplied by tr.mapLightFactor, which can result in values > 1.0, so use a separate uniform for now, and move this value into color modulate later.
|
I've added a fix for this, although I plan to move the value into |
|
Merging everything together in #1476 seems better to me, rather than spending any more time reviewing or testing some "temp" stuff. |
|
Sure, I'll do that. |
|
Updated version now in #1476. |





Picked from #1473.
u_Colorwas a vec4 that was being set from aColorobject, which only has 8-bit precision per colour, so using up 4 times more memory than that to transfer it was quite atrocious. Instead, pack it into a uint32_t, then useunpackUnorm4x8()to unpack in the shader.Also adds a macro for unpacking for hardware that doesn't support
GL_ARB_gpu_shader5.