So ZyGL is basically the software rasterizer we all had to write in college graphics algorithms? So ZyGL is basically nothing more than Three.js, sans the option to render in SVG elements? And they want to patent this?
Sorry for the language, but seriously, fuck these guys. What complete trolls. This is completely unacceptable. Software rasterization fallback has been a thing forever. Actually, you know, longer than OpenGL of any flavor. Cuz that used to be the only way you could do graphics.
Is there any way I can help to get this patent blocked? And how do we go about shaming young developers into not joining Zynga just because it's a "game" company? This isn't the first unethical thing they've done.
This site is exactly for this reason: raising patent questions with the goal of identifying bad patents.
"Ask Patents is a question and answer site for people interested in improving and participating in the US patent system. It's built and run by you as part of the Stack Exchange network of Q&A sites. With your help, we're working together to find Prior Art on dangerous and overly broad US Patent Applications before they become issued Patents. "
The blog post is a puff piece for a new (at the time) StackExchange product and basically just talks about how they felt there was a need for something like this and how they felt the timing was good.
From the Stack Exchange blog post, "[USPTO director Kappos] came–twice!–to the Stack Exchange office in New York City to encourage us to open a Stack Exchange site that would generate heaps of prior art to help the patent examiners do their jobs."
Last year, then-acting USPTO director Rea said in a speech, "We consulted on a private-sector initiative called Ask Patents."http://www.uspto.gov/news/speeches/2013/rea_Managing_Ip.jsp Elsewhere they refer to a "partnership" with Ask Patents.
No, this doesn't mean that prior art submitted to Ask Patents is automatically read by the USPTO. But USPTO promotes it as a way to gather information which can then be submitted through their new public comment process.
Your comments may be true about most end-user forums, but it seems that "Ask Patents" really is different.
Firstly, from the help page:
"Ask Patents blocks dangerous applications by alerting the US Patent Examiner of record when good Prior Art is found for an application that he or she is examining."
Secondly, the site contains examples of patents that were rejected with the site's help. You can search for questions with the [rejected] tag:
"The rejected tag is used on patent applications and patents which have been successfully narrowed or rejected by the USPTO after having been the subject of a prior-art-request on Ask Patents."
When we search for questions with this tag, we see text like "This Patent Application received a Final Rejection by the US Patent Office! The rejection was based in part on prior art found by Ask Patents community below!"
Ugh: 'we developed a patent-pending solution called “ZyGL”.'
While there are a bunch of people working to make stuff performant on browsers, Zynga comes in from behind and starts patenting barely-novel stuff on top of it.
If the emscripten lot had decided to patent "Method to reconstruct flow structures from binary machine code" then Zynga would not have the privilege of porting their game to the web in the first place.
Actually, that's not the relevant patent. That patent is for a technique for hardware-accelerated 2D animations using 3D meshes on the GPU, and was used for the game Dream Zoo.
Hopefully they will be able to extend and extinguish as well, so that the so called "open web" (that is actually pretty much closed to different languages and technologies, unless you are willing to use crap-trans-pilation crutch like Emscripten) or at least WebGL will die as it should. All the best to Zynga!
Even before that change, I don't see any code that automatically reconstructs construct quads from pairs of triangles. But maybe I'm missing something?
(I've been working on OpenGL platform translation for years)
Reconstructing quads from pairs of triangles is just about doable in a one-liner. The harder part in my opinion is applying texture mapping to the resulting triangle, but it's not unreasonably difficult.
// this depends on your winding
triangles = [1, 2, 4, 2, 3, 4]
quads = []
for i in xrange(len(triangles), 6):
t = triangles[i:i+6]
quads += [t[0], t[1], t[4], t[2]]
The only things I think are interesting here are their heuristics on shaders to apply color maps, and the fact they shipped a game with it.
No, you're right, there's no quad reconstruction. I imagine you could have just used quads in both the WebGL and Canvas renderers to achieve a similar effect.
I don't know what exactly is being patented. As I read it, the novel part is this:
So, what about that arbitrary shader code? In practice, the shaders used in 2D games tend to be fairly simple. ZyGL applies a series of heuristics to the shader code to try to infer its intent. It then uses these heuristics to map the draw calls through to some approximations of common shader code that we wrote in JavaScript.
I'm not aware of any prior art that is (a) a polyfill for WebGL using canvas that also (b) reconstructs triangle strips into canvas quads and (c) attempts to mimic shader effects by scanning the shader code for common techniques.
This is the first time someone's announced a patent for a space I'm in. I have no idea what implications this has for me, but I may have some prior art on "software rasterization of OpenGL code that only uses it for 2D", including quad recovery.
Pixi.js ( http://www.pixijs.com ) supports WebGL with an automatic canvas fallback as well (and is also used as the renderer by Javascript game frameworks like Phaser.io and Panda.js).
I asked a patent office employee about this. Apparently, a thing is only prior art if it is patented itself, or is published in an accepted academic journal, and then only if such things can be found in the ten hours the examiner is given per patent application.
Sorry for the language, but seriously, fuck these guys. What complete trolls. This is completely unacceptable. Software rasterization fallback has been a thing forever. Actually, you know, longer than OpenGL of any flavor. Cuz that used to be the only way you could do graphics.
Is there any way I can help to get this patent blocked? And how do we go about shaming young developers into not joining Zynga just because it's a "game" company? This isn't the first unethical thing they've done.