FiniteSingularity / obs-stroke-glow-shadow

An OBS plugin to provide efficient Stroke, Glow, and Shadow effects on masked sources.
GNU General Public License v2.0
110 stars 8 forks source link

[BUG] - Alpha Color broken since 1.0.0 #36

Open Landiie opened 8 months ago

Landiie commented 8 months ago

Describe the bug Alpha coloring on any of the Stroke, Glow, and Shadow filters no longer work properly since version 1.0.0 (0.3.0 works fine)

To Reproduce

  1. Install any version of Stroke Glow Shadow above 0.3.0
  2. Apply any Stroke, Glow, or Shadow filter to a source
  3. Edit the filter so that the effect is visible
  4. Change the color to something like magenta (for easy visibility)
  5. Notice how it works fine, then, change the alpha channel of the color from 255 to 0
  6. No alpha channel difference should be visible.

Expected behavior Expecting the behavior to be like 0.3.0, where Alpha Channel support works

Screenshots If applicable, add screenshots to help explain your problem.

Here's how it should look, this is version 0.3.0

This is how it currently looks in the latest version, 1.0.2

Environment

GPU

Additional context As a workaround, I'll be downgrading to version 0.3.0 in the meantime. Thank you for all that you do!

FiniteSingularity commented 8 months ago

Hi @Landiie,

Thank you very much for opening the issue. I was able to replicate it in the latest version.

Interestingly, both the pre 1.0 and 1.0 releases seem to be rendering the glow incorrectly. A glow with an alpha of zero should not show up at all, as the color being blended would have no and thus would not blend into the existing source. I suspect I know what is causing the current behavior, and it will likely be fixed when I update the rendering pipeline to use the new pipeline I developed for the blur and mask plugins. I'll try to get it merged in in the next few days, and we can revisit what the proper behavior should be.

Landiie commented 8 months ago

Interesting, alright! I just enjoyed using it as a choker/feather in some cases, and It would be really sad to loose that but I rather something work intentionally instead of relying on a bugged feature.