• Isadora
  • Get it
  • Forum
  • Help
  • ADD-ONS
  • Newsletter
  • Impressum
  • Dsgvo
  • Impressum
Forum

Navigation

    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Popular
    • Tags

    How to determine GPU with Alpha-Channel?

    How To... ?
    4
    11
    2337
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Mikhail
      Mikhail last edited by

      Hi All!!

      Is there is someone who know how to detect that GPU stream consists  alpha-Channel? 
      I need change mode projector blending mode to transparent for all transparent/partically-transparent GPU-streams.
      Thanks in advance.

      Win7, i7(SkyWell), 16GB RAM, SSD, nvidia GTX 1070, Isadora 2.5

      1 Reply Last reply Reply Quote 0
      • DusX
        DusX Tech Staff last edited by

        I can't think of any prebuilt actors that can offer you this feature.

        The only thought I have, is that a GLSL shader could be used to strip away the RGB video values, and leave only the Alpha.
        Then the 'calc brightness' actor could be used to determine if there are alpha values, and how much.
        I haven't seen a shader that does this, although I would think this would be a rather simple shader.

        Troikatronix Technical Support

        • New Support Ticket Link: https://support.troikatronix.com/support/tickets/new
        • Isadora Add-ons: https://troikatronix.com/add-ons/
        • My Add-ons: https://troikatronix.com/add-ons/?u=dusx

        Running: Win 10 64bit, i7-8750H, M.2 PCIe SSD's, 16gb DDR4-2666, nVidia GTX 1070 | located in Ontario Canada.

        1 Reply Last reply Reply Quote 0
        • Mikhail
          Mikhail last edited by

          Thanks, DusX !

          As I've understand, you suggest to use Shader to calculate Alpha-brightness? Good idea!
          I'll try this and post here if it will be successful.
          Do you mean Isadora doesnt have any build-in actors to isolate alpha-channel? 

          Win7, i7(SkyWell), 16GB RAM, SSD, nvidia GTX 1070, Isadora 2.5

          1 Reply Last reply Reply Quote 0
          • DusX
            DusX Tech Staff last edited by

            @Mikhail

            Exactly. There are no built-in actors to isolate alpha (correct me please if I am wrong).
            A Shader may be a good option for adding this feature.
            Since shaders are expected to output video, simply output the alpha as a black and white video, then use the 'calc brightness' actor to give you a numerical reading.
            Please let me know if you succeed...

            Troikatronix Technical Support

            • New Support Ticket Link: https://support.troikatronix.com/support/tickets/new
            • Isadora Add-ons: https://troikatronix.com/add-ons/
            • My Add-ons: https://troikatronix.com/add-ons/?u=dusx

            Running: Win 10 64bit, i7-8750H, M.2 PCIe SSD's, 16gb DDR4-2666, nVidia GTX 1070 | located in Ontario Canada.

            1 Reply Last reply Reply Quote 0
            • mark
              mark last edited by

              Dear @Mikhail + All,

              Good idea Ryan. Here's the shader code to strip out RGB and give you only alpha. Then you could use the CalcBrightness actor after the GLSL Shader actor. If the brightness ever goes below 100, then there is alpha.
              Best Wishes,
              Mark

              uniform float time;

              uniform vec2 mouse;

              uniform vec2 resolution;

              uniform sampler2D tex0;

              void main(void) {

              vec4 c0 = texture2D(tex0, gl_TexCoord[0].xy);

              gl_FragColor = vec4(1.0, c0.a, c0.a, c0.a);

              }

              Media Artist & Creator of Isadora
              Macintosh SE-30, 32 Mb RAM, MacOS 7.6, Dual Floppy Drives

              1 Reply Last reply Reply Quote 0
              • jhoepffner
                jhoepffner last edited by

                @ mark @Mikhail

                If a you want a B&W representation of alpha layer (not red and white), the code is this one (c0.a also in red layer)

                uniform float time;

                uniform vec2 mouse;

                uniform vec2 resolution;

                uniform sampler2D tex0;

                void main(void) {

                vec4 c0 = texture2D(tex0, gl_TexCoord[0].xy);

                gl_FragColor = vec4(c0.a, c0.a, c0.a, c0.a);

                }

                Best wishes,

                Jacques

                Jacques Hoepffner http://hoepffner.info
                GigaByte 550b / Ryzen 7 3800X / Ram 64 Go / RTX 3090 24 Go / SSD 2 To / raid0 32 To
                MBP 13' i5 2.6 Ghz 16 Go / Intel Iris / macOs 10.11.6 / izzy 2.6.1 + 3.0.3b2
                MBP 15' i7 2.6 Ghz 16 Go / GTX 650M 1Go/ MacOs10.13.3 / Izzy 2.6.1
                MSI GS65 i7 3.6 Ghz 32 Go / GTX 1070 8 Go / Windows 10 / Izzy 3.0.3b2

                1 Reply Last reply Reply Quote 0
                • DusX
                  DusX Tech Staff last edited by

                  @mark @jhoepffner

                  Thanks!! I can make use of this as well.  :)

                  Does this warrant a KB article?

                  Troikatronix Technical Support

                  • New Support Ticket Link: https://support.troikatronix.com/support/tickets/new
                  • Isadora Add-ons: https://troikatronix.com/add-ons/
                  • My Add-ons: https://troikatronix.com/add-ons/?u=dusx

                  Running: Win 10 64bit, i7-8750H, M.2 PCIe SSD's, 16gb DDR4-2666, nVidia GTX 1070 | located in Ontario Canada.

                  1 Reply Last reply Reply Quote 0
                  • mark
                    mark last edited by

                    @jhoepffner - Mine made black and white? It was just not transparent. Yes? (Slightly confused by your addition and the mention of red.)

                    Media Artist & Creator of Isadora
                    Macintosh SE-30, 32 Mb RAM, MacOS 7.6, Dual Floppy Drives

                    1 Reply Last reply Reply Quote 0
                    • jhoepffner
                      jhoepffner last edited by

                      @mark

                      When I use yours on film with alpha mask, the mask is in red (not in black).
                      Because you wright "gl_FragColor = vec4(1.0, c0.a, c0.a, c0.a);" with 1.0 in red value
                      The value of the alpha mask is not important now, because you dont use it anymore so you can write "gl_FragColor = vec4(c0.a, c0.a, c0.a, c0.a);" or "gl_FragColor = vec4(c0.a, c0.a, c0.a, 0.0);"
                      I join a patch with the result with your proposition and my correction
                      All the best,
                      Jacques

                      1fbc29-markproposition.jpg 8f9419-jacquesproposition.jpg b38e88-testalpha02.izz

                      Jacques Hoepffner http://hoepffner.info
                      GigaByte 550b / Ryzen 7 3800X / Ram 64 Go / RTX 3090 24 Go / SSD 2 To / raid0 32 To
                      MBP 13' i5 2.6 Ghz 16 Go / Intel Iris / macOs 10.11.6 / izzy 2.6.1 + 3.0.3b2
                      MBP 15' i7 2.6 Ghz 16 Go / GTX 650M 1Go/ MacOs10.13.3 / Izzy 2.6.1
                      MSI GS65 i7 3.6 Ghz 32 Go / GTX 1070 8 Go / Windows 10 / Izzy 3.0.3b2

                      1 Reply Last reply Reply Quote 0
                      • DusX
                        DusX Tech Staff last edited by

                        I just got to testing this method today.. and its perfect!

                        Troikatronix Technical Support

                        • New Support Ticket Link: https://support.troikatronix.com/support/tickets/new
                        • Isadora Add-ons: https://troikatronix.com/add-ons/
                        • My Add-ons: https://troikatronix.com/add-ons/?u=dusx

                        Running: Win 10 64bit, i7-8750H, M.2 PCIe SSD's, 16gb DDR4-2666, nVidia GTX 1070 | located in Ontario Canada.

                        1 Reply Last reply Reply Quote 0
                        • Mikhail
                          Mikhail last edited by

                          To : [DusX](http://troikatronix.com/troikatronixforum/profile/149/DusX) , [jhoepffner](http://troikatronix.com/troikatronixforum/profile/15/jhoepffner) , [mark](http://troikatronix.com/troikatronixforum/profile/2/mark) , Wow! Thanks Guys! You're cool!
                          A lot of thanks! I try to use this shader also in my patch.

                          Win7, i7(SkyWell), 16GB RAM, SSD, nvidia GTX 1070, Isadora 2.5

                          1 Reply Last reply Reply Quote 0
                          • First post
                            Last post