Slashdot Mirror


A Lawyer's View on the OpenGL Patent Mess

PDAJames writes "This article has an interesting take on Microsoft's claims on OpenGL technology. An IP lawyer says that Microsoft could make things difficult for OpenGL if they feel like it, basically. "

16 of 339 comments (clear)

  1. The case for OpenGL by stevenbee · · Score: 4, Interesting
    From the article:

    OpenGL owes its current success to an unrestrictive licensing system, which allows developers to write to the API without a licence, and which carries no royalty fees.

    I think they were a little remiss in overlooking the technological case for OpenGL; the fact is that many developers prefer it to DirectX, and not for ideological reasons.

    --
    Don't read this!
    1. Re:The case for OpenGL by ewhac · · Score: 5, Interesting

      the fact is that many developers prefer it to DirectX, and not for ideological reasons.

      Unfortunately, this is not as true as we might wish it to be. Micros~1, as usual, has stacked the deck in its favor.

      If you're a graphics card manufacturer, you want to make sure that your drivers will do the right thing. Thus, you need to test the hell out of it. Surprise, surprise, Micros~1 has a little thing called WHQL (Windoze Hardware Quality Labs) which exhaustively tests your hardware and drivers to make certain they behave properly. If you pass, you get a little WHQL sticker to put on your box. Thus, the graphics OEM can save the expense of creating its own verification department.

      What do you have to do to earn WHQL certification? Well, that changes over time as Windoze acquires more cruft^H^H^H^H^Hfeatures. But one thing you must do is fully complete their DirectX validation suite. If you fail, you don't get the sticker.

      So who does OpenGL validation? Well, Micros~1 will do that for you, too. But it's optional, not required. Moreover, they won't perform OpenGL testing unless and until you've already passed DirectX testing. So, if you're a graphics OEM living on razor-thin margins, you're not going to spend one engineering dollar more than is absolutely necessary to get that WHQL sticker, and to heck with everything else. So OpenGL gets short shrift.

      So why did OpenGL get anywhere at all? Two words: John Carmack. Carmack and id Software are the de facto certification authority for OpenGL: "If Quake runs, it works." Trouble is, earlier versions of Quake only used a subset of the full OpenGL API, so card makers only supported exactly that. As Carmack exercised more of the API in new releases of Quake, card vendors slowly got the idea that supporting the complete API was probably a wise move. NVidia got the hint way early, and it didn't hurt that they had a bunch of ex-SGI engineers on staff.

      But even so, OpenGL support remains spotty and uneven, because there is no comprehensive certification authority (that wields any political clout) for OpenGL. If your DirectX implementation is broken, Micros~1 will tell you exactly what you messed up. There is, to my knowledge, no such facility in place for testing OpenGL. Thus, OpenGL implementations are broken in different ways across different cards. DirectX is fundamentally broken, but because of WHQL testing, it's broken the same way across all cards. Because of this comparative uniformity across cards, game developers just go straight to DirectX, and maybe will write an OpenGL rendering layer as an afterthought, despite the fact that OpenGL is easier to write for, and can often be seen offering higher performance. id Software was the sole exception to this rule, offering OpenGL support only. It looked like CroTeam, creators of Serious Sam, were going to boost OpenGL's mindshare, but they have since caved in, and their latest Serious Sam release features DirectX support.

      Now, Micros~1 has acquired the lever it needs to kill OpenGL. Vertex shaders are the Next Big Thing in hardware-assisted rendering, and they have been under development for some time. It was hacked into DirectX as of DX8 (IIRC), but the OpenGL ARB has been trying to come up with an equivalent solution that is cross-platform and network-transparent. (Hence the perception that OpenGL is "lagging" DirectX.) Even if the ARB makes vertex shaders an optional extension, it will effectively kill OpenGL's already-tenuous popularity as a rendering API, because developers won't be able to rely on vertex shading extensions being installed. Thus, if you're a game developer, and you want vertex shading in your game, then you'll use DirectX and nothing else.

      This is Micros~1's idea of, "Competing on the merits."

      Schwab

  2. Re:Here we go again. by stevenbee · · Score: 4, Insightful

    No, but if you had a history of violent assault, one might reasonably lay strong odds for the likelihood of you doing it again!

    --
    Don't read this!
  3. Trying not to bash Microsoft... by MarvinMouse · · Score: 5, Interesting

    But don't they just make it way to easy lately.

    Like, I don't mind other companies that have tons of products and are making tons of money. Plus, they may have a somewhat stranglehold on industries. But I would have to say the only reason I dislike Microsoft is their apparent philosophy of don't produce good products, kill the competition, and use lawyers as much as possible to help both of the above.

    If MS produced quality products, I wouldn't care much about their attempts at complete world domination. But, since they don't produce quality products because they don't have to with the monopoly they have. (Remember Bill Gate's quote from some book I read recently which said (approximately), "You don't want them to want your product, you want them to think they cannot survive without your product. Then you win." Or in rough translation, "Don't worry about creating good products, just manuever yourself into a position where they have no choice but to use your products."

    Seems about right for MS lately. (Again, I really am not trying to bash Microsoft, just frustrated with what they have been doing.)

    --
    ~ kjrose
  4. Then it's time to strike back. by Rahga · · Score: 5, Insightful

    I would love to see SGI, Nvidia, ATi, and other leading graphics companys to step it up. You can not tell me that Microsoft hasn't borrowed heavily from patented concepts and ideas that were first implemented by some of these companies. I bet it would be extremely easy for a few lawyers and engineers to get together and build up a solid case that Microsoft did not pay to implement technologies patented by these groups.... The concept of Microsoft INNOVATING any of the concepts embodied in DirectX is absolutely ridiculous.

  5. OpenGL's future by maynard-lag · · Score: 5, Insightful

    Since I first saw the stories about Microsoft and OpenGL recently, I've been wondering how this is going to play out. Microsoft's whole DirectX thing has largely been targeted/used by games, but what about the other markets that us OpenGL. My specific interest is in the 3-D CAD market. In this particular market, the software vendors and hardware vendors have been exclusively using OpenGL for a number of reasons:

    1) Multiple platform support, (most CAD systems run on unix or started on Unix)

    2) OpenGL existed long before DirectX

    I'm sure there's other reasons, but I wonder if the CAD vendors and other vendors are going to consider DirectX in the future, especially with so many vendors shifting more focus towrads Windows in the last couple of years. What about other markets that use OpenGL extensively?

    --
    Have you hugged your Karma Whore today?
  6. Re:Incredible Insight! by Yohahn · · Score: 5, Interesting

    Actually one of the most interesting things that was pointed out was the question of the legality of selling something that was already agreed to be released in an open manner.

    They agreed to release the patent to OpenGL, so can they sell it to somebody who is going to "un-release" it?

    If this is what Microsoft and SGI did, it's an interesting problem.

  7. Re:Incredible Insight! by Catskul · · Score: 5, Funny

    I really dont understand why the parent was modded as funny. It is a serious point.

    --

    Im not here now... Im out KILLING pepperoni
  8. How to Take Over the 3D Industry in a Ten Steps by MBCook · · Score: 5, Interesting
    Here is Microsoft's plan (as I see it):
    1. Get computers to the point where 3D is a possiblity - Done
    2. Get computers to the point where 3D is common - Done
    3. Notice a competitor/3rd party owns the dominant 3D standard - Done
    4. Develop your own standard (Direct3D maybe?) - Done
    5. Refine it to the point where it's actually useable - Done
    6. Help make many of the important features of modern 3D and get it in competitor/3rd party's standard - Done
    7. Point out that you have patents/etc on those parts of the standard and that you will charge large licensing fees on using that standard - In Progress
    8. Use fee to strangle the competing standard - To Be Done
    9. Now everyone is forced to use your software for 3D if they don't want to pay tons of license fees - To Be Done
    10. Watch as competing platforms (let's call them Fruit Computers, and Penguindynamics) die under licensing fees becase you refuse to put your royalty-free API on their platforms - To Be Done
    11. Have a good maniacle laugh - To Be Done
    See how simple that was?
    --
    Comment forecast: Bits of genius surrounded by a sea of mediocrity.
    1. Re:How to Take Over the 3D Industry in a Ten Steps by ryants · · Score: 5, Interesting
      # Develop your own standard (Direct3D maybe?) - Done
      Except MS didn't develop the original DirectX API. It was developed by a company called RenderMorphics (and it was called something like Reality Lab 3D) and Microsoft just bought it.

      This, apparently, is "innovation".

      --

      Ryan T. Sammartino
      "Ancora imparo"

    2. Re:How to Take Over the 3D Industry in a Ten Steps by Dalroth · · Score: 4, Funny
      Sorry, your list was VERY good, however I have to make a few small adjustments to the end of it since I believe you missed one key point. My changes are in bold towards the end.

      1. Get computers to the point where 3D is a possiblity - Done
      2. Get computers to the point where 3D is common - Done
      3. Notice a competitor/3rd party owns the dominant 3D standard - Done
      4. Develop your own standard (Direct3D maybe?) - Done
      5. Refine it to the point where it's actually useable - Done
      6. Help make many of the important features of modern 3D and get it in competitor/3rd party's standard - Done
      7. Point out that you have patents/etc on those parts of the standard and that you will charge large licensing fees on using that standard - In Progress
      8. Use fee to strangle the competing standard - To Be Done
      9. Now everyone is forced to use your software for 3D if they don't want to pay tons of license fees - To Be Done
      10. Watch as competing platforms (let's call them Fruit Computers, and Penguindynamics) die under licensing fees becase you refuse to put your royalty-free API on their platforms - To Be Done
      11. Begin charging fees to your current customers (since they no longer have a choice) - To Be Done
      12. Laugh maniacally all the way to the bank (again) - The Ultimate Goal
      See how simple that was?
  9. Their claims are probably invalid by dh003i · · Score: 5, Interesting

    The most likely scenario here is that they bought IP from SGI which SGI had given to the OpenGL project under a public/OSS/FS license. Thus, MS' claims are invalid. You can't put something into the public domain and then take it back. Sorry, that's just not permitted. Once something's in the public domain, its there forever.

  10. MS has pure Hatred towards OpenGL by ShwAsasin · · Score: 5, Interesting

    It's obvious that Microsoft hates/fears OpenGL. Since the beginning release of 1.1 for Win95, Microsoft has done nothing about releasing the stub/dll source-code, updating the source-code, or even trying to progress the development of OpenGL.

    Time and time again they have attempted to copy and improve upon OpenGL, first with Fahrenheit/XSG, then with DirectX. Yet, through all the technology and resources Microsoft puts in, the masses still like OpenGL.

    The principals of OpenGL are the same as the day it started with IrixGL. Keeping it simple, functional, and cross-platform. Although Microsoft has gone great strides with DirectX API, they have nowhere near the simplicity of OpenGL. And with the Alternative OS's supporting OpenGL (Mac OSX, Linux, FreeBSD, Solaris, Ps2Linux, etc...) there are more emerging platforms which they cannot touch.

    Game/Multimedia Developers are starting to realize that Linux and other platforms are decent for games, and are developing software for them. No, Linux isn't going to take over the world tommorrow because it has OpenGL, but think of this: If a developer gives both the Linux Binary and the Windows Binary, wouldn't you be curious to compare speeds between the two? People would problably spend the extra $0-5 difference for a dual-os game starting the eventual craze. It only takes a few people/companies to start a revolution.

    Microsoft is trying to attack every angle of the industry to focussing our attention on their superior product, yet nothing screams superior when their is a true choice and competition in the market.

  11. The key is this phrase - get used to it by Anonymous Coward · · Score: 5, Insightful

    Microsoft hinted that it would prefer an alternative licensing arrangement. At this month's OpenGL meeting, Microsoft representative Dave Aronson suggested that "other bodies have licensing terms that are more effective in a corporate sense, and we should look at adopting some of those terms."
    This is something we'll begin to hear a lot - Microsoft will do license fees of $0.00 for many of their technologies, but restrict the platforms to non-open ones. The real target here is not OpenGL but rather Open Source. The lack of fee will give them the ability to say "look, we're giving it away" to deflect the attention away from the restrictions in the license.
    I'm sure they'll be "super excited" about the resulting "ecosystem".

  12. OpenGL is very vulnerable to stuff like this... by kabir · · Score: 5, Informative

    ... and it doesn't take MS to cause problems. The general consensus amongst developers who use the more advanced OGL features (pixel and fragment shaders/programs, etc.) is that things are currently a mess.

    OpenGL is comprised of a central body of standard functionality which _must_ be implemented in order to use the name OpenGL. Additionally there's an extension mechanim which allows IHVs (like NVidia, ATI, etc.) to implement their own funcitonality which isn't currently a part of the core standard. That's how we have Fragment/Pixel shaders/programs today, as IHV extensions from NVidia and ATI. This system tends to work pretty well, but you start to get into problems with the interface. Essentially what happens is that all the IHVs decide that they need to do something along the lines of vertex programs (a way to manipulated verticies after they have been passed to the GPU, more or less), which is true. It's a cool feature any everyone likes it. Since they're being implemented as IHV extensions they're not standardized at all, so if you want to use a vertex program from NVidia you have to use their vertex program assembly language, but if you want to accomplish the same thing on an ATI card you have to use _their_ vertex program assembly (which, by the by, tends to follow a completely different model than NVidia), ad naseum.

    Naturally all of this is a pain in the ass for developers. You now not only have to have different rendering paths for the various combinations of available extensions, but you have to write the same routines in drastically different languages to support a given set of functions.

    Now getting all of this into a standard extension to the core API is supposed to solve some of these problems, but the IHVs aren't totally in favour of that as they then lose some product differentiation/control/etc. Mind you, this bit is speculation and observation, I don't actually know what the IHVs are thinking, but history shows that they sometimes have trouble working together ;) In any case, there's been a lot of stalling over this issue due to that sort of crap as well.

    And it's exactly these kinds of disagreements that are holding up OpenGL 2.0, which is supposed to directly address many of these problems. NVidia, for instance, has CG, their high level shading language. CG can be compiled down to their proprietry shader code (for use with NV_* extensions on NVidia cards) and, _in theory_ down to the proprietary code for other cards. However, for that to actually work ATI, etc. need to create so called "profiles" which allow the CG compiler to do it's thing. Clearly NVidia wants some degree of control/name recognition/whatever here... in the case where CG takes off you'd need to get your dev tools from NVidea regardless of which cards you're targeting. Now this idea is in direction competition with the OpenGL 2.0 proposal, which gives much of the same functionality but via a standard set of interfaces that replace current IHV proprietary code rather than a compiler ship on the top. Natrually this makes NVidia a little less enthusiastic about OpenGL 2.0 in it's current (proposed) form.

    And on, and on, and on.

    Right about now DX 9 (really the D3D componant...) is starting to look pretty damn good to a lot of us. It's got standard interfaces for pixel shading, etc. that just work with the various cards, it's a much improved API from it's early days, and given all the extension thrash it's much easier to write clean, readable code under D3D than OpenGL anymore.

    Of course you're screwed if you need to port, but that's the plan, right?

    The point of all this is simply that while MS is certainly doing their part to muck about with OpenGL (like not updating the damn dev tools since OpenGL 1.1!!!) they're not alone in that hobby. IHV squabbles have always been an issue in that area, and MS' best tactic to date has been to take advantage of the slowness of the ARB (often arising from IHV squabbling) and run right on by with their own API. So their adding to the infighting isn't really that much of a change to the situation, as I see it.

    --
    Behold the Power of Cheese!
  13. Re:Incredible Insight! by Citizen+of+Earth · · Score: 4, Insightful

    They agreed to release the patent to OpenGL, so can they sell it to somebody who is going to "un-release" it?

    I would presume that this cannot be legal, since if it were, we would have a different RAMBUS-type fiasco every day of the week. Every company would agree to give free access to their patents that are used in an open standard, and immediately after the standard is deployed, they would sell their patent to a 'collection agency' and tell all of the suckers who implemented the open spec to pay up.

    Maybe I should patent this business model right away...