Add TextEffect compositing#495
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: e4549552de
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| } | ||
|
|
||
| if (render || markups) { | ||
| if (!effect_state->alive) { |
There was a problem hiding this comment.
I don't understand.
Is this included so that the elapsed time is only ticked once per frame?
There was a problem hiding this comment.
Yeah, that's exactly right. Without it, an effect's elapsed time was being incremented multiple times per frame. I can't remember if this was because of the while loop I introduced to support compositing effects, or if it happened after I ran multiple effects with the same text_id via cf_draw_push_text_id
There was a problem hiding this comment.
If we're looking for something more explicit I could introduce another bool, but, this one seemed to have the same lifetime semantics that I needed.
Text Effect Rendering
<strike>) now uses a per-glyph approach, storing the thickness and deferring the actual line drawing until after all effects and color changes are applied. This ensures the strike line matches the final rendered color and position, including gradients and alpha.CF_Strikestruct now includes acolorfield, allowing strike-through lines to use the correct color, including gradients.Fixes #480