1
0
Fork 0
mirror of https://github.com/bjornbytes/lovr.git synced 2024-07-12 08:53:35 +00:00
lovr/etc/shaders
bjorn 339e6cf94b Shrink DrawData from 128 to 64 bytes!;
- Last row of transform matrix is unused, make it 4x3
  - Requires funny row-major packing due to vec3 std140 padding.
  - Teach spirv parser to tolerate non-square matrix types, though
    they aren't supported anywhere else yet.
- Compute cofactor in shader for normal matrix, ALU is free,
  optimize out many terms, rm maf_cofactor.
- Take out complex UBO alignment logic since stuff is PO2 these days.

This was a common bottleneck for some workloads, so there are measurable
performance gains (up to 2x faster pass submission on CPU).  GPU time is
identical, at least on desktop.
2023-08-01 18:57:09 -07:00
..
animator.comp Blend shapes and skinning work at the same time; 2023-03-31 18:45:16 -07:00
blender.comp Fix issue with blend shape compute shader; 2023-06-20 21:42:44 -07:00
cubemap.frag Fix cubemaps being horizontally flipped; 2022-09-20 22:17:58 -07:00
cubemap.vert Fix cubemap shader; 2022-08-26 22:22:37 -07:00
equirect.frag Fix seam in equirect shader; 2023-05-10 18:14:09 +01:00
fill.vert Default shaders use lovrmain; 2022-07-31 11:18:15 -07:00
fill_array.frag Add GL_EXT_samplerless_texture_functions; 2023-06-24 14:00:22 -07:00
font.frag Add GL_EXT_samplerless_texture_functions; 2023-06-24 14:00:22 -07:00
logo.frag Make the logo a default shader; 2022-09-13 17:36:10 -07:00
lovr.glsl Shrink DrawData from 128 to 64 bytes!; 2023-08-01 18:57:09 -07:00
normal.frag Add normal DefaultShader; 2022-09-10 11:07:55 -07:00
tallymerge.comp Pass rework; 2023-05-02 00:06:01 -07:00
unlit.frag Default shaders use lovrmain; 2022-07-31 11:18:15 -07:00
unlit.vert Default shaders use lovrmain; 2022-07-31 11:18:15 -07:00