Announcement

Collapse
No announcement yet.

Zink Now Supports OpenGL ES 3.2 Over Vulkan

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #11
    Originally posted by dragon321 View Post

    Wouldn't be so sure about it. If GPU is not capable of running recent OpenGL version then Zink won't change that. As far I know there was attempt to run Zink on Raspberry Pi and it was limited to OpenGL 2.x due to lack of GPU capability to support newest OpenGL versions. Videocore VI is still mobile GPU after all.
    It was limited by way of vulkan support. which is still progressing. so it could be possible in the future. I believe opengl 3.0 support is just lacking 2 vulkan extensions.

    Comment


    • #12
      Originally posted by rmfx View Post
      Nice.
      Soon, time to drop OGL drivers and focus on Vulkan drivers/Zink only.
      I know it's way too early to do it, but I am happy that it's the direction it goes.
      I don't really see a reason to drop existing OGL drivers. Zink is great, no doubt about it, but using it over native drivers is adding CPU overhead. It's still Mesa, so it's not like we're cleaning up much.
      Zink is good option moving forward, particularly for non-x86 platforms.

      Comment


      • #13
        does zink need opengl compiler in GPU driver or use something else ?
        Last edited by Aryma; 10 July 2021, 07:29 AM. Reason: Typo

        Comment


        • #14
          this will take few years yet, I doubt it can be better than driver with many years of performance tweaks

          Comment


          • #15
            While I root for him because of the technical possibilities he enables and his immensive output I am unsure about the created code quality, that means, not the quality of the logic but the quality of the style:

            (copy-paste did not work, see here)

            - ABSOLUTELY NO COMMENTS ANYWHERE
            - terrible commit messages: "pikachu.jpg"
            - unspeakable and nondescriptive branch names
            - "goto ohfuck;"
            - indenting with three spaces
            - etc etc...

            Comment


            • #16
              reba

              Well, to be fair, the commit you link to is on a zink-wip (work-in-progress) branch and has not been merged to Mesa proper (master branch). I would be very surprised if it finds its way to Mesa master in that shape. It will have to go through code reviews like every other commit to master and hopefully it will be cleaned up a bit by then, including any nondescriptive goto-labels...

              😉

              Comment


              • #17
                Originally posted by Aryma View Post
                does zink need opengl compiler in GPU driver or use something else ?
                Zink is a gallium driver. which means that the GPU doesn't need to be OpenGL aware at all. A quick rundown, Gallium is a driver API that serves as a generic set of instructions that you can target. Opengl would be a frontend, and Readeonsi is a driver.

                This means that Opengl gets converted to gallium, which then gets converted into the GPU's native "language". This is why we can have Native d3d9 support on linux.

                Gallumnine -> gallium -> radeonsi.

                With the background out of the way. zink is NOT an opengl translation layer like dxvk. it is a Gallium driver. and works like this in an amd system

                Opengl -> gallium -> Vulkan calls -> RADV (It also supposedly works with gallium nine G9 -> gallium -> vulkan -> RADV, but I borked my install and cannot test).

                Hope this clears things up.

                Comment


                • #18
                  Originally posted by Quackdoc View Post

                  It was limited by way of vulkan support. which is still progressing. so it could be possible in the future. I believe opengl 3.0 support is just lacking 2 vulkan extensions.
                  It still limited by hardware. One of the limitations is number of supported multiple render targets. Videocore VI supports up to 4 while OpenGL 3.0 requires at least 8. While probably it would be possible to implement at least some subset of newer OpenGL (just like there is driver for Videocore IV that provides some subset of Vulkan despite hardware not capable of running full Vulkan) it probably won't be fully conformant implementation.

                  Comment


                  • #19
                    Originally posted by dragon321 View Post

                    It still limited by hardware. One of the limitations is number of supported multiple render targets. Videocore VI supports up to 4 while OpenGL 3.0 requires at least 8. While probably it would be possible to implement at least some subset of newer OpenGL (just like there is driver for Videocore IV that provides some subset of Vulkan despite hardware not capable of running full Vulkan) it probably won't be fully conformant implementation.
                    I thought I had read somewhere that vulkan would be able to simulate/emulate the render target issue. however that might have been within a personal discussion. but I had been under the assumption that it was a solved issue, but thinking harder on where I heard it. it was likely a non-professional discussion

                    Comment


                    • #20
                      Originally posted by AJenbo View Post
                      Interestingly this would allow Raspberry PI 4s to run OGL ES 3.2 despite there native driver only implementing 3.1. Not to mention that that they don't even qualify for regular OpenGL 3.0 where Zink would allow them to run 4.6. Qualcomm chips are only at OpenGL 3.3 but implements enough to run Zink as well.
                      Unfortunately no, Zink actually downgrades OpenGL ES on the Raspberry Pi 4, from ES 3.1 to ES 2.0. Zink doesn't create new capabilities, and it depends on extensions in the Vulkan driver it's running on to work. Some Vulkan features just aren't possible to implement in the VideoCore hardware, so Zink won't be able to be full-featured on that hardware unless the v3dv driver emulates those extensions in software.

                      That said, I'm very excited by Zink in general, as I think it can potentially simplify the stack by allowing vendors and developers to focus on Vulkan drivers, knowing that Zink will handle OpenGL.
                      Last edited by mangeek; 10 July 2021, 05:16 PM.

                      Comment

                      Working...
                      X