VSE: Text shadow blur / outline #121478

Merged
Aras Pranckevicius merged 10 commits from aras_p/blender:vse_text_effects into main 2024-05-08 11:13:33 +02:00

10 Commits

Author SHA1 Message Date
90933b8acd Cleanup: pass nullptr for float buffer to BLF_buffer to better indicate intent 2024-05-08 11:20:43 +03:00
dd7fa3b4a4 Merge branch 'main' into vse_text_effects 2024-05-08 11:17:13 +03:00
df263e746e VSE: make outline width also be relative to font size, similar to shadow blur/offset 2024-05-07 20:20:10 +03:00
d199cfe108 VSE: initialize new variables of text strips when loading older files
All checks were successful
buildbot/vexp-code-patch-darwin-x86_64 Build done.
buildbot/vexp-code-patch-darwin-arm64 Build done.
buildbot/vexp-code-patch-windows-amd64 Build done.
buildbot/vexp-code-patch-lint Build done.
buildbot/vexp-code-patch-linux-x86_64 Build done.
buildbot/vexp-code-patch-coordinator Build done.
And shadow offset/angle defaults that better match the previous hardcoded values
2024-05-07 14:18:33 +03:00
3e2b8b08e4 Merge branch 'main' into vse_text_effects 2024-05-07 13:51:50 +03:00
d9c9c7d786 VSE: text shadow blur does not get too dark at edges when shadow color is bright enough
Gaussian blur code is not fully premultiplication-correct. So render
text as white, blur it, and then tint with shadow color when compositing.
Makes large blurs with small shadow opacity work better too.
2024-05-07 12:53:05 +03:00
2a3f88d7d0 VSE: Text outline is now done via JFA algorithm
Advantages:
- "More round" outlines especially at large widths,
- Actually faster, e.g. 4K VSE resolution, outline width 30: outline
  calculation 110ms -> 40ms. At small outline widths, about the same
  performance as blur based approach.
- If someone wants to make outlines "fancy" someday (e.g. mapping a
  gradient across outline radius), this is trivially doable with JFA.
2024-05-07 11:23:15 +03:00
6e044195b5 VSE: Text got outline option 2024-05-06 15:13:23 +03:00
df2e5f60a5 VSE: Text strip shadow can be blurred 2024-05-06 14:22:25 +03:00
564d3318c0 VSE: Text strip gets configurable shadow angle and offset 2024-05-06 12:33:54 +03:00