Announcement

Collapse
No announcement yet.

We need a Campaign for OpenGL Patent Exemptions for OSS, namely Mesa, and Linux

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

  • #16
    So let's say I wanted to approach someone with an average level of knowledge of computers and tried to persuade them against software patents. Considering that they'd likely be uninterested in technical stuff and that the longer I take to explain it, the less interest they will have, what would I tell them?

    Comment


    • #17
      Originally posted by Prescience500 View Post
      So let's say I wanted to approach someone with an average level of knowledge of computers and tried to persuade them against software patents. Considering that they'd likely be uninterested in technical stuff and that the longer I take to explain it, the less interest they will have, what would I tell them?
      Because of those your mp3 players and external hard drives cost more.

      Comment


      • #18
        Originally posted by XorEaxEax View Post
        Enough with your bullshit, practically the entire professional 3D content creation market runs on OpenGL
        And they can keep OpenGL. They don't use OpenGL 3, much less OpenGL 4, and use only a fraction of the features of a modern GPU, but good for them I guess.

        and does it extremely well. ID Software uses OpenGL even for it's newest engine id Tech 5, which will obviously be licenced and used in tons of new games.
        id Tech 5 uses Direct3D 9 on PC/Windows, not OpenGL.

        And yes, I've used pretty much every piece of 3d software out there at one time or another.
        How many have you written? Because that's a lot more relevant to the conversation. I have plenty of OpenGL apps that run just fine myself. It's not like I'm saying that OpenGL doesn't work at all and that it can't even render a triangle.

        Many under Linux, and performance and stability has been great using NVidia proprietary driver.
        Neat. I'm glad your personal anecdote is a pleasant one for you. It is only unfortunate that personal anecdotes of "works for me" don't really mean anything at all.

        OpenGL driver bugs are the largest source of support problems for many developers; a complaint I have never once ever heard of regarding Direct3D drivers. One popular Linux-friendly example: http://frictionalgames.blogspot.com/...f-amnesia.html

        You portray such a one-sided argument that it's a god damn travesty.
        So, funny story.

        When I entered into the game industry, I was the same staunch pro-OpenGL Linux fanboy you are. "OpenGL can do everything Direct3D can do!" "OpenGL has extensions so you get more features sooner, and on older plaftorms!" "It's open and cross-platform!" "COM is icky!" "Why write a Direct3D renderer for Windows when you can just write an OpenGL one for both Windows and OS X!"

        Then I actually started having to write OpenGL/GLSL code for large, complex, real-time interactive applications, instead of just sitting around on the Internet telling people that OpenGL is awesome and Direct3D sucks because OpenGL is open and runs on Linux and Direct3D is Microsoft proprietary evilness.

        I was clearly a dumbass before that, because dear god is OpenGL/GLSL a pain in the ass. 95% of your time is just spent figuring out what the NVIDIA driver randomly corrupts your FBOs if Chrome is open, or why ATI drivers compile your entirely correct and specification-compliant GLSL fragment shader without complaint but then execute it incorrectly unless you recombine two support functions back into a single less-flexible function, or why doing instancing the NVIDIA-recommended way on NVIDIA hardware is actually barely faster than not doing instancing at all while the Direct3D version is 10x faster and the non-recommended OpenGL instancing method is at least 4x faster, or why the drivers bother telling you an extension is supported when it's clearly implemented entirely in software and so there's no way to figure out what the fast path in your renderer should be for the current hardware it's running on, etc. etc. etc.

        "Surely," I thought to myself, "this is just the nature of graphics programming, and that silly Direct3D is just as bad. Heck, it's probably worse, because Microsoft is so freaking incompetent at everything they do!"

        Yeah, then I used Direct3D for like 15 minutes and the Sun shown through the clouds, the birds chirped, the townsfolk became friendly, and my socks stopped getting eaten by the dryer.

        OpenGL blows. The end.

        Comment


        • #19
          Originally posted by curaga View Post
          Because of those your mp3 players and external hard drives cost more.
          "Your $150 iPod costs $0.14 more for Apple to manufacture, but if that cost were removed Apple wouldn't drop the price, they'd just pocket a little more cash from every sale. Even if they did pass on the savings, it's at most a few bucks on a $150 purchase, less than your state's sales tax on the item... but still, this is super important and worth a lot of your time and effort to rally against!"

          Unless you can come up with some high-dollar examples, the cost argument won't work. It needs to be something where the consumer is paying a very visible, very weighty cost directly due to patents. Amortized costs that have little direct impact on product pricing just won't cut it.

          Comment


          • #20
            I'm fairly certain that Rage will be opengl based on the pc/mac/(linux) platforms. D3D-ish on xbox, naturally. Note that that only refers to the graphics components - audio, input, networking, etc, are obviously a different kettle of fish.

            Comment


            • #21
              Originally posted by mirv View Post
              I'm fairly certain that Rage will be opengl based on the pc/mac/(linux) platforms. D3D-ish on xbox, naturally. Note that that only refers to the graphics components - audio, input, networking, etc, are obviously a different kettle of fish.
              Hmm, think you're right. My mistake.

              Looks like they're sticking with OpenGL out of "inertia" according to some interviews with Carmack, which doesn't sound too good... heavily implies that id Tech 5 is really just id Tech 4 with incremental updates rather than the ground breaking wonder that the previous id engines were. (And that in fact is exactly what it looks like from what I can read online. I should've pestered the id guys when they were in town a few months ago for information, but honestly I don't at all like id's games, and nobody's really using their engine at all so I haven't cared much about what they're doing -- id Tech 4 has all of eight games using it, five of which were id's own franchises and two of which aren't even released, and that's over 7 years of the engine being around! id has long since stopped being the game industry's graphics wonderworks.)

              Comment


              • #22
                Originally posted by elanthis View Post
                Hmm, think you're right. My mistake.

                Looks like they're sticking with OpenGL out of "inertia" according to some interviews with Carmack, which doesn't sound too good... heavily implies that id Tech 5 is really just id Tech 4 with incremental updates rather than the ground breaking wonder that the previous id engines were. (And that in fact is exactly what it looks like from what I can read online. I should've pestered the id guys when they were in town a few months ago for information, but honestly I don't at all like id's games, and nobody's really using their engine at all so I haven't cared much about what they're doing -- id Tech 4 has all of eight games using it, five of which were id's own franchises and two of which aren't even released, and that's over 7 years of the engine being around! id has long since stopped being the game industry's graphics wonderworks.)
                I did read that they're trying to go back into engine licensing - I think Carmack has previously ignored the idea of making tech X "friendly" to work with, but he seems more focused on development tools now. Near as I can tell, that's the big thing that's being changed.
                But yes, I do remember reading that he's using OpenGL more out of inertia now than anything else.
                I'll be staying out of the api wars on the thread - I only use OpenGL as, well, I want cross platform - but I've been recently thinking of delving into OpenCL and trying it out for size as a kind of "software" renderer.

                Comment


                • #23
                  Originally posted by elanthis View Post
                  "Your $150 iPod costs $0.14 more for Apple to manufacture, but if that cost were removed Apple wouldn't drop the price, they'd just pocket a little more cash from every sale. Even if they did pass on the savings, it's at most a few bucks on a $150 purchase, less than your state's sales tax on the item... but still, this is super important and worth a lot of your time and effort to rally against!"

                  Unless you can come up with some high-dollar examples, the cost argument won't work. It needs to be something where the consumer is paying a very visible, very weighty cost directly due to patents. Amortized costs that have little direct impact on product pricing just won't cut it.
                  Actually, that's not entirely true. It helps keep out new entrants and relatively smaller firms from being in the market. The reason the cost factor with Apple is so low is because they have such a high market share. Getting rid of the patents will allow more competition and make markets more contestable. This would drive down overall costs a little bit more. I can tell you as someone who majored in economics in school that in such a situation, a portion of the savings would be passed onto the consumer because if they didn't, the would make less money than they otherwise would. Wouldn't the most effected area from patents be software itself? Software patents hold back open source software, which dramatically reduces competitive and contestability pressures.

                  Comment


                  • #24
                    Using an iPod is actually a bad example. While the price doesn't move much what ends up happening is as the parts get cheaper the specs are upgraded of the product. You get more for the same amount of money as costs decrease.

                    Comment


                    • #25
                      Originally posted by elanthis View Post
                      id Tech 5 uses Direct3D 9 on PC/Windows, not OpenGL.
                      No it doesn't.

                      Originally posted by elanthis View Post
                      Neat. I'm glad your personal anecdote is a pleasant one for you. It is only unfortunate that personal anecdotes of "works for me" don't really mean anything at all.
                      If it was just a personal anecdote the 3d content industry would have left OpenGL a long time ago. The reason NVidia is catering for Linux with top notch drivers is due to Linux being dominant in this very industry.

                      Originally posted by elanthis View Post
                      When I entered into the game industry, I was the same staunch pro-OpenGL Linux fanboy you are.
                      I use OpenGL driven programs extensively, and thus can vouch for their performance. I'm not denying that DirectX is better geared for games, since it's a framework specifically designed for that, but that doesn't mean that OpenGL is suddenly crap.

                      On the contrary, YOU display all the characteristics of a typical fanboy/zelot, with the 'OMG it suxxors!!' mentality. And anything that doesn't fit your 'worldview' (like the fact that OpenGL is the de facto standard in the 3d creation industry) is simply brushed aside.

                      Originally posted by elanthis View Post
                      OpenGL blows. The end.
                      Thus the fanboy/zelot hath spoken.

                      Comment


                      • #26
                        I use OpenGL driven programs extensively, and thus can vouch for their performance. I'm not denying that DirectX is better geared for games, since it's a framework specifically designed for that, but that doesn't mean that OpenGL is suddenly crap.
                        It isn't "suddenly" crap. It just stopped evolving. Over a decade ago.

                        And the drivers suck. That your handful of apps (yes, handful, because there are only a handful of "professional 3D apps" compared to the number of games) is just a personal anecdote that does nothing to counteract the fact that those drivers are very, very buggy.

                        And your point about NVIDIA only supporting its Linux drivers for those few apps is NOT a point in your favor. It's a point about how the only shit that works with their buggy OpenGL drivers is the handful of apps that the handful of large Linux customers demanded work.

                        Making the drivers stable, efficient, featurful, and high quality for anything else is a low-priority for them.

                        On the contrary, YOU display all the characteristics of a typical fanboy/zelot, with the 'OMG it suxxors!!' mentality. And anything that doesn't fit your 'worldview' (like the fact that OpenGL is the de facto standard in the 3d creation industry) is simply brushed aside.
                        Because it doesn't matter. The 3D content industry is not something anyone but a handful of people care about. Those people can go live in their little tiny corner of the world. That corner can keep OpenGL all to themselves, and they can be happy with it, and the rest of us can be happy that OpenGL is gone off in the corner with them.

                        The rest of us want something that works for what the rest of us buy and use our computers for. Not what you and some tiny handful of people use computers for.

                        We want Firefox to be able to enable composited rendering on something other than Direct2D platforms.

                        We want to be able to run Chrome and a game simultaneously without crashes.

                        We want instancing to actually work.

                        We want our expensive GPUs to get the same level of performance on the OpenGL drivers that they get on the Direct3D drivers.

                        We want our Linux compositing managers to not have to blacklist half the proprietary driver releases and most of the OSS ones because they crash randomly, slow down randomly, or just misrender entirely.

                        We want our many-cored CPUs to actually be usable for multi-core rendering.

                        We want a shading language that actually allows us to write optimized shaders rather than having to manually bind every single attribute by name for every program individually one at a time.

                        The "professional 3D content industry" doesn't care about any of that. They were the asshats who blocked 3D Labs' rewrite of OpenGL because the whiny little babies didn't want to re-engineer their poorly, non-abstracted rendering engines and modernize their code for modern hardware.

                        But hey, you use those programs, and that's all that matters in your tunnel-visioned view of the world, so you keep using your 1995-era 3D apps and let us worry about how much OpenGL sucks ass for utilizing 2011-era hardware.

                        You are sticking your head in the sand and ignoring all of OpenGL's many, intractable problems because "it works for you." Why the hell shouldn't we have something that works for _everyone_ ?

                        Defending the status-quo because you feel some insane loyalty _to an API_ for whatever crazy-ass reason is just stupid. And the literal definition of fanboyism.

                        Comment


                        • #27
                          And as one final point in what is otherwise likely a useless conversation... Unigine's Heaven demo runs at 60% of the speed on the OpenGL mode as it does in Direct3D 11.

                          Yes, it's just one app, but since Michael busts a nut over everything Unigine does, it must be the most relevant point evar for a thread on this site.

                          Comment


                          • #28
                            Originally posted by elanthis View Post
                            And the drivers suck. That your handful of apps (yes, handful, because there are only a handful of "professional 3D apps" compared to the number of games) is just a personal anecdote that does nothing to counteract the fact that those drivers are very, very buggy.
                            Are you kidding? Windows IS the pc games market, DirectX (unlike OpenGL) is a framework directly aimed at games development, obviously games will mostly be developed in Directx since the vast majority of PC games only targets the Windows platform.

                            Originally posted by elanthis View Post
                            And your point about NVIDIA only supporting its Linux drivers for those few apps is NOT a point in your favor. It's a point about how the only shit that works with their buggy OpenGL drivers is the handful of apps that the handful of large Linux customers demanded work.
                            LOL so NVidia programmed their OpenGL drivers particularly around certain Linux applications? You realize that NVidia OpenGL drivers work on windows aswell, and on OSX (where OpenGL is also the standard 3d framework as in the mobile sector with ios, android, maemo, symbian...).

                            Originally posted by elanthis View Post
                            Making the drivers stable, efficient, featurful, and high quality for anything else is a low-priority for them.
                            What so you say that the drivers are stable/efficient and featureful for 3d applications but somehow not for games? Again are you kidding me?

                            Originally posted by elanthis View Post
                            Because it doesn't matter. The 3D content industry is not something anyone but a handful of people care about.
                            Handful? Seriously? Where do you think the 3d graphics in all those games come from? Or the special fx in movies, or fully 3d generated movies?

                            Originally posted by elanthis View Post
                            But hey, you use those programs, and that's all that matters in your tunnel-visioned view of the world, so you keep using your 1995-era 3D apps and let us worry about how much OpenGL sucks ass for utilizing 2011-era hardware.
                            1995-era apps? WTF are you babbling about? Do you think the games sector has any techniques in it that isn't available in the modern 3d apps of today? How do you think stuff like normal/displacement maps used in games are generated in the first place? 3d packages of today are capable of realtime lightning/shadows on objects using millions of polygons while yet being fully interactive for modeling/sculpting. Have you ever even used a modern 3d package?

                            Originally posted by elanthis View Post
                            You are sticking your head in the sand and ignoring all of OpenGL's many, intractable problems because "it works for you." Why the hell shouldn't we have something that works for _everyone_ ?
                            What works for everyone? DirectX? Really?

                            Originally posted by elanthis View Post
                            Defending the status-quo because you feel some insane loyalty _to an API_ for whatever crazy-ass reason is just stupid. And the literal definition of fanboyism.
                            I have no loyalty for OpenGL, it works great for the software I use so yes I have no problems with it, but if something better came along which I could use instead then certainly I would use that. But there isn't anything better. DirectX (if better) is not available on non-windows platforms. Meanwhile OpenGL works perfectly well for my needs. Also you continously bash the OpenGL framework and instability of certain drivers as if they were the same thing. Khronos can't affect the driver quality, and no I can't vouch for the quality of OpenGL drivers for cards I do not own, but for NVidia they are excellent from my quite extensive experience with 3d applications.

                            So no, your generalistic 'OpenGL sucks' doesn't hold water. Buggy drivers are buggy drivers, doesn't matter if they are for OpenGL or DirectX.

                            Comment


                            • #29
                              What so you say that the drivers are stable/efficient and featureful for 3d applications but somehow not for games?
                              What is so hard to believe about that statement?

                              You do realize that the way a 3D modeler's renderer is implemented and the way a video game's renderer is implemented are _totally freaking different_, right? Night and day.

                              And movies are not rendered using OpenGL. I've seen some recent-ish work on getting things like RasterMan/REYES running on the GPU, but that was actually using Direct3D 11 + DirectCompute, not OpenGL.

                              I have no loyalty for OpenGL, it works great for the software I use so yes I have no problems with it, but if something better came along which I could use instead then certainly I would use that. But there isn't anything better.
                              So why are you throwing a royal hissy fit because someone dares to claim (along with thousands of other developers) that OpenGL doesn't work just peachy-keen for a use case other than your own pet one?

                              Khronos can't affect the driver quality
                              YES THEY CAN!!

                              A specification that's nothing but text describing what the API should be is completely worthless. No major, successful industry specification is developed like that. It simply is not a successful model, period.

                              Write some code, Khronos! Write samples! Write tools! Write a test suite!

                              I get that you don't understand software engineering, but get this: there is absolutely no damn excuse for Khronos' incompetence and negligence with how it's handling OpenGL, or the ARB's incompetence and negligence before it.

                              This is old hat. Developers have been pissed off with the ARB since they swept 3D Labs' redesign of OpenGL under the rug, and then pissed off twice as much when Khronos reneged on the Long Peaks' OpenGL 3 redesign.

                              OpenGL has been mishandled and left to rot by its caretakers over and over again throughout its history. This is why it's in such an awful state today, and why so many developers absolutely freaking hate using the API.

                              and no I can't vouch for the quality of OpenGL drivers for cards I do not own, but for NVidia they are excellent from my quite extensive experience with 3d applications.
                              NVIDIA's drivers are the best. By a long shot. Everybody knows that. And they still have a ton of bugs that their Direct3D drivers don't have.

                              When you code against OpenGL, and your app misbehaves, you have to question every single time whether it's some crazy ass illogical driver bug or not. You're buiding a house on quicksand. It's a nightmare.

                              When you code against Direct3D, and your app misbehaves, you just debug your code to figure out what your likely obvious and simple mistake was, and then carry on. Regular application development stuff.

                              If your OS had hard-drive controllers that randomly corrupted data or stopped responding because you wrote a particular pattern of characters to a file, you'd call the entire system broken. If your OS had network drivers that randomly stopped accepting packets after you sent 37 AIM packets over the wire, you'd call the entire system broken. If your input drivers randomly returned nonsense keystrokes or button click events whenever your processor's FPU was instructed to add 7e23 and 2.34e2, you'd call the entire system broken.

                              If your OS has video drivers that randomly cause loops in shaders to execute only the first iteration of a constant eight-iteration loop containing more than three if statements and only if you happen to have more than 2 functions defined before the main function, you'd call the entire OS broken.

                              The first paragraph is silly hyperbole. The second paragraph is just one of many actual illogical sanity-breaking bugs that developers have to work around in actual up-to-date OpenGL drivers from one of the the big two GPU providers... but only on OpenGL.

                              So no, your generalistic 'OpenGL sucks' doesn't hold water. Buggy drivers are buggy drivers, doesn't matter if they are for OpenGL or DirectX.
                              You're attempting to ignore every other point in a (very weak) attempt to knock down my argument on a single facet.

                              OpenGL is a hard to use crufty state-machine C API originally designed for 1980's SGI hardware. OpenGL lags hardware capabilities, by years sometimes, and the extension system is most often used just to play catchup with D3D rather than being used for innovation like it used to be. OpenGL is poorly documented, and there simply are not any good tutorial or documents available on how to write a modern high-performance OpenGL renderer, because even NVIDIA's engineers use the API wrong in their sample code (because the API sucks and is hard to learn and hard to use). OpenGL has no test suite to help driver developers implement stable drivers, which would handily solve the excessively buggy driver problem. OpenGL literally cannot do several important things that Direct3D can do... at least one of which D3D has been able to do since freaking D3D 8 and is fundamental to using shaders efficiently and easily!

                              But your modeler app works, so screw everyone else, right?

                              Comment


                              • #30
                                Originally posted by elanthis View Post
                                You're attempting to ignore every other point in a (very weak) attempt to knock down my argument on a single facet.
                                elanthis, no one is ignoring you. You published lots of valuable info, thanks!

                                I don't think that knocking everything from the table and starting third API as OpenGL replacement is sane.

                                Nor is current situation any good. Support it means supporting something broken by design, and with bad owner. It is true that result is as good, as the inventor/owner is.

                                Developers seem to be FORCED to use DirectAPI. I wonder IF any microsoft people are involved in Khronos or who has brought it down by carrying out ill decisions leading to:
                                1) Evolution/Invention momentum loose
                                2) All patent crap
                                3) Absence of actually hearing what GPU/3D programmers have to SAY (which is actually how things are assembled in Linux!) instead of pushing decision from the top
                                4) Having or focusing on features that are currently required and demanded
                                5) Absence of quality control and certification
                                6) Absence of solid, discrete versioned API
                                7) Being unpredictable, badly documented and non-oversee-able

                                The API should also have broad recognition from start at same time maintaining open standards and cross-platform interoperability due to money charged for actual work instead of "implementation and ongoing milking"-model.

                                Some big entity should fork OpenGL and take the leadership, someone whos leadership is based on amount of positive drive.

                                Comment

                                Working...
                                X