Announcement

Collapse
No announcement yet.

Nouveau Picks Up Slightly Better OpenGL 4.0 Support

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

  • #16
    Originally posted by imirkin View Post
    Actually the nvc0 driver already has a bunch of the necessary support for tessellation (and there's no way it'll happen on nv50 -- while it could be emulated, it would be very slow, thus useless). But there is a lot of infrastructure missing (glsl, mesa core, gallium), and it'll require someone who knows what they're doing to implement it (i.e. not me). My hope is that the Intel guys will be doing the glsl/core bits soon. I _think_ shader subroutines should be possible on nv50; they're definitely going to be possible on nvc0. But again, the biggest challenge is actually the plumbing. By the time that's done, the work left for the driver is actually relatively small.
    Yeah, adding two new shader stages sounds like heaps of infrastructure work. Even if Intel takes on the glsl part, you still have to define new TGSI instructions, right?

    Comment


    • #17
      Imirkin: Thank you for all your hard work on this project.

      I am most grateful for the work you and the other nouveau developers are doing towards the NVIDIA driver support on Linux. It's important work. Writing code is hard, working on Open Source projects is hard. Not everyone is good at it, or skilled at it. I have a lot of difficulty concentrating on projects so I'm grateful to all the developers who are able to work and complete tasks they set their minds to. The Nouveau development work is fantastic. If you'd asked anyone 3 years ago if they'd get as much done as they have, a lot of people would have thought you were crazy. It's inspiring to see how far the drivers have come and how little is left to be done. People whining about OpenGL 4.3/4.4 don't understand that in 3 years Nouveau has made more progress with OpenGL support, than Wine has made with DirectX support in the entire lifetime of the Wine Project. Thank you for your hard work.

      Comment


      • #18
        Originally posted by Ancurio View Post
        Yeah, adding two new shader stages sounds like heaps of infrastructure work. Even if Intel takes on the glsl part, you still have to define new TGSI instructions, right?
        What instructions? It's just a question of adding the piping between the stages, which will largely mirror what GLSL has. The TGSI modifications shouldn't be too difficult... probably just adding a bunch of TGSI_SEMANTIC_* and modifying code to deal with the additional stages. But the core gallium logic knows fairly little about shaders, so it really shouldn't be too bad. (Yeah, famous last words...)

        Comment


        • #19
          Originally posted by imirkin View Post
          What instructions? It's just a question of adding the piping between the stages, which will largely mirror what GLSL has. The TGSI modifications shouldn't be too difficult... probably just adding a bunch of TGSI_SEMANTIC_* and modifying code to deal with the additional stages. But the core gallium logic knows fairly little about shaders, so it really shouldn't be too bad. (Yeah, famous last words...)
          I'm not sure.. maybe not instructions. But you need a way to define input/output registers via TGSI for tessellation, right? I mean the same way vertex position/fragment color is handled. I suppose that's what the SEMANTIC tokens are for?

          Comment


          • #20
            Originally posted by smitty3268 View Post
            The gain is that he then decides to go work where he's welcome on the radeon team and helps out that driver instead.
            That would make my day.

            Comment


            • #21
              Originally posted by Ancurio View Post
              Unfortunately I don't think there's any demand for tessellation shaders / subroutines atm., so I think nobody will work on these massive features any time soon. Which is unfortunate, because I'd totally like to try out shader subroutines. =/ I wonder if they can be implemented on GL3 hardware..
              Tessellation shaders is part of Google Summer of Code hopefully something will come of it: http://www.google-melange.com/gsoc/p...76830073815040

              There has been some dicussion around subroutines in this thread recently: http://www.phoronix.com/forums/showt..._shading/page2

              Comment


              • #22
                Originally posted by tarceri View Post
                Tessellation shaders is part of Google Summer of Code hopefully something will come of it: http://www.google-melange.com/gsoc/p...76830073815040

                There has been some dicussion around subroutines in this thread recently: http://www.phoronix.com/forums/showt..._shading/page2
                Thanks for the GSoC link, hopefully someone will pick that up.

                And I see you linked back to the thread that I linked from to here

                By the way, how's arrays_of_arrays going? Last I read you were having some troubles with the llvm side.

                Comment


                • #23
                  Originally posted by Ancurio View Post
                  By the way, how's arrays_of_arrays going? Last I read you were having some troubles with the llvm side.
                  Slowly. I took a break as I was feeling a bit burnt out working on this. I recently fixed up some lingering issues with the KHR_debug work I did, and finally got the last piglit test I wrote for that extension reviewed and pushed to the repo. There are a couple of places to start back on work with arrays_of_arrays one is making sure the frontend of the glsl compiler works correctly with geometry shaders as I currently have no piglit tests for this. The second is getting the linking stage working (this is where I was having trouble when I decided to take a break).
                  I hope to start working on this again soon, the difficult part is getting my head around how the code works as I'm usually working on this in short 1 hour bursts by the time I get my head around things the hour is up and I need to figure it all out again the next time I get a chance to work on it. Anyway hopefully I can make some progress on this soon.

                  Comment


                  • #24
                    Originally posted by Ancurio View Post
                    By the way, how's arrays_of_arrays going?
                    Ok, so your question gave me some motivation to get back into it and I've started to make some progress once again. I've posted a couple of small patches to the Mesa list as well as a patch to the piglit list to support more tests. I feel like I've got a better understanding of where I'm headed this time around so hopefully I will keep making good progress.

                    Comment


                    • #25
                      Originally posted by tarceri View Post
                      Ok, so your question gave me some motivation to get back into it and I've started to make some progress once again. I've posted a couple of small patches to the Mesa list as well as a patch to the piglit list to support more tests. I feel like I've got a better understanding of where I'm headed this time around so hopefully I will keep making good progress.
                      Hey, that's awesome to hear! I want to state that my post wasn't meant to sound demanding, I was just honestly curious. Work on it as your time and motivation permits. Your work is very appreciated in the community!

                      Comment

                      Working...
                      X