Patent Issue Delays Doom 3 Source Code Release
An anonymous reader writes "id Software is still planning to release the Doom 3 source this year, but it's been delayed by a patent issue that's causing John Carmack to personally rewrite some of the code. The patent issue in Doom 3 concerns the Carmack's Reverse algorithm and has led Carmack to rewrite it in the open-source Doom 3."
So some patent troll deserves money because someone discovered something a random genius discovered again from scratch a year later, long before the patent was granted? And this helps innovation somehow?
My understanding is that Carmack independently discovered the method AFTER the patent was filed, but before it was granted (public). Wouldn't his implementation of the method be patentable itself? Why does it need to be re-written? Also, if the Carmack version of the method was made public before the original discovery patent was accepted doesn't that make the method un-patentable too? Seems both the original discovery team and Carmack would have independent methods that accomplish the same thing...why would there be a violation?
This time, the pages linked from the story are very helpful. Carmack independently discovered the algorithm a few months after Creative's employees. They properly patented the process. I'm not sure how it escaped litigation this long; Carmack's lawyers were right to question this issue before the code release.
This has all been above-board WRT Creative. It merely raises the question again as to whether patents should last over 10 years, or whether patents should be issued for software in the first place.
Gamingmuseum.com: Give your 3D accelerator a rest.
I realize there may be a financial incentive for rewriting what is no doubt a fair chunk of one of the key "selling points" of the DOOM 3 engine, however I'm glad to see that this is being done so the source can be released *publically*. Even if not much comes from it, I personally enjoy going over the code released from id Software...it's like going and in time and watching Da Vinci with a hammer and chisel.
(Yes, yes "Carmack's no Da Vinci", but he is as close to one as most Programmer's can get.)
"When I am king, you will be first against the wall..."
It's like we're trolling ourselves.
"Here Lies Philip J. Fry, named for his uncle, to carry on his spirit"
I sent John Carmack an email about this back in April 2009:
Hi John,
I believe you've said publicly that you are planning a GPL release of the Doom 3 source code, but I remember around the time the game was launched you had Creative holding a patent on the shadows algorithm, and you assuaged them by including support for EAX. Is that still causing problems?
-Dave
When we release the code (no date set), anyone that uses it would potentially be infringing. There are workarounds at a modest performance cost.
John Carmack
It sounds like id's lawyers are asking him to implement one of the workarounds he mentioned before he makes the public release.
If it's his patent, then under GPL3, anyone using his patent can do so without license ONLY IF they GPL3 their code.
What, then, is the problem? If Jon's listening and this gets modded up, maybe he can consider the problem in a light not driven by accountants (where every lost opportunity to profit is counted a concrete loss of revenue).
Somebody reverse Carmack's Reverse and put it on a tshirt!
So Carmack is doing something for the good of society, and a commercial company chooses to add a roadblock. But rather than give up, he spends his own time to rewrite the algorithm in a way that avoids the patent. That is a phenomenal level of dedication to the open-source community. He doesn't have to release the code. He doesn't have to rewrite that section.
Thank you John.
"The idea that I can be presented with a problem, set out to logically solve it with the tools at hand, and wind up with a program that could not be legally used because someone else followed the same logical steps some years ago and filed for a patent on it is horrifying." - John Carmack
I hope that what he writes doesn't conflict with another patent elseware.
...but on the bright side, Carmack's Reverse can always be reimplemented by the open source community, and this may hasten the implementation of shadowmaps in source ports to replace Doom 3's stencil shadows. The visual quality improvement would be non-trivial, and for all but hardware that was *ahem* not exactly groundbreaking when Doom 3 was new, the performance delta shouldn't be too massive. In some scenarios it may even be faster.
Just remove it. While it was a clever optimization for its time, on current hardware it is unnecessary.
This is what JC's tweet suggests he is doing, not re-writing it.
Because I'm sure they won't release the art to the public, and it'll take a while for some public versions to be generated.
I swear I bought Quake 4, but I don't know where it is, or what engine it uses. Ah, Doom 3. Hopefully it'll be compatible, so that'll just leave the problem of finding out where I put the box.
I installed it once, then forgot about it. I'm not entirely sure it's even Quake 4, but I don't think it was Quake III.
It amazes me that very few people mention what the news is really about: Carmark is a true HERO.
This is an amazing gift to the FOSS community. Not only are they just deciding to give away code they don't use anymore - but they are putting SERIOUS EFFORT into making it safe to release to the community. This shows without a shadow of a doubt that Id Software are GOOD GUYS. We need to give these guys our thanks.
Whats the harm in yelling 'Computer, end program!'? You could be living in Star Trek! Go on.. give it a try.
someone got a patent on mathematics... it's an algorithm for deity's sake... it can be reduced to pure mathematical expressions...
Donald 'Duck' Dunn: We had a band powerful enough to turn goat piss into gasoline.
When I was your age, we http://www.youtube.com/watch?v=W1ZtBCpo0eU
Enjoy :)
!!!
This is why I love id software, even though I'll admit their games may not be as great as some of the other companies' offerings. The fact that Carmack is going through the trouble of working around a potential patent issue all to open source their Tech 4 engine is awesome.
...You deserve every twin-turbo F50 you can get your hands on. Mad propz.
Carefree highway, let me slip away on you.
Remove the infringing code save for function stubs, document the expected behavior (perhaps with some examples of input/return values useable for test-driven design) and let the community rewrite it. id doesn't have to worry about releasing patent-infringing code, and the community gets a chance to come up with a better solution.
And at the same time, "modest performance cost" is probably negligable at this point. Doom 3 was released in 2005 according to wiki, and via Steam in 2007. While the margin of improvement has slowed, systems will be quite a bit beefier by the time it is released. And when open source takes hold of it and makes derivative games (I mean that in a good way) the hardware will be able to compensate.
Remember, this patent is for a speed hack, which is generally useful for about 5 years max in computer land. The speedier algorithm of Phil Katz's pkzip over other libraries largely disappeared due to the i/o bottleneck by the time open versions were widely used. Today, it's faster in most cases to have a file zipped on disk, and unzipped while being read into memory (if async i/o is used of course, and even if not the overhead is still a tiny part of the operation).
This is a great show by Mr. Carmack. To take the time to actually rewrite it himself so that there is no patent issues. I think everyone should send him a Thank You note. He could have just as easily said "I have made my money off this who cares." But he is thinking of the Open Source community instead of his pocket book alone.
Kosh: "Understanding is a 3 edged sword, your side, their side, the Truth."
And at the same time, "modest performance cost" is probably negligable at this point.
Agreed. The wikipedia article linked from this story illustrates that the industry hasn't stood still and there have been developments by nVidia and others for alternative methods. If we're lucky the new Doom 3 source will have a better algorithm than the retail version.
Seriously. Call me ignorant, or just plain dumb, if you must, but what is so bad about a software patent?
Here's my understanding of the patent system...
Basically, a normal patent protects an inventor for the product invented for a set number of years. One can argue all day about the implementation of the system, which I do understand is broken, but it seems that the basic premise is fine.
The logical extension of this leads to software patents; in software, though, the "product" is an idea, but how is this different from a normal patent? In the normal situation, a product is created and is patented. In software, an idea is created and patented, they are both effectively the same thing.
From a post above:
"The idea that I can be presented with a problem, set out to logically solve it with the tools at hand, and wind up with a program that could not be legally used because someone else followed the same logical steps some years ago and filed for a patent on it is horrifying." - John Carmack
Let's rephrase: The idea that I can be presented with a problem, set out to logically solve it with the tools at hand, and wind up with a product that could not be legally used because someone else followed the same logical steps some years ago and filed for a patent on it is horrifying.
In my understanding, the former is bad, but the latter is acceptable. Why is this so, or are software patents and physical patents equally evil? Or are the patents fine, just the implementation that is screwed? It seems no different to me than a physical patent protecting an inventor for his invention, in the case of software just change "physical" to "software" and what's the problem?
Sure, anyone can come up with an idea, and people see it as unfair that the originator of the idea is the only one that can get the credit and can claim ownership, but isn't that kind of the way of the world? Einstein owns relativity, but surely someone would have come up with it later if he did not. There are numerous patents on various physical objects we use everyday and they belong to their originator (or first to file the claim for it) and those who use the design later are infringing...so why is it so bad/different when done with software? Scale?
So... you're saying patents are causing global warming!
"Companies like Microsoft buy tons of patents from college kids for pennies"
Please consider, no one forces them to sell?
imagine if with offer to sell in hand- they instead donate the patent to a 501c qualified free software organization and derived a tax benefit
the offer to buy should stand as evidence of value.
every day http://en.wikipedia.org/wiki/Special:Random
Patents prevent others from manufacturing something that includes some IP. Open sourcing the software is not an issue for the users of the open source software unless they want to monetize it. You can use any patented device or process for personal use; you only butt heads with lawyers when you try to sell it. The only argument I can think of is that providing a software implementation of the IP is "selling it" for $0.00.
// LOL!
// He could just comment it out.
/* amiright? */
"False hope is why we'll never run out of natural resources!" - Lewis Black
It sounds like Carmack is implementing a workaround to the Creative patent. That's very decent of him, but there's still nothing preventing release of the original (claimed infringing) source code. At worst, anyone who *used* the source would be infringing but publishing it would not be a problem (the patent is disclosed by definition, after all).
Seeing the original implementation side-by-side with the new workaround would be incredibly interesting, I think.
Nobody who reads slashdot or who works in real software development would ever tell you that software patents were good things. Even the devs at Microsoft, Apple, and Google, who hold a significant chunk of all software patents, probably hate them themselves. But we all know this. Complaining about them here is just preaching to the choir. The only way to fix this is to educate the people that make decisions about patents, aka, Congress, about why they are bad, and get their hands out of the pockets of patent trolls like Rambus and Creative. I just had to put that out there. There are, literally, like 1000 stories a week on patent fudges, and its only going to get worse as more and more troll companies buy up patents to sue everyone with them. You don't accomplish anything by explaining to the Slashdot community why they are bad, we all know they are bad.
If they distribute the software as source code, can it still infringe? Lets not restrict this to id software, they have a license for this patent. But if software is distributed as source, one could claim it's a description of an algorithm much like the text of a patent application is a description of the algorithm ("invention"). Could people distributing software in source form then not have to worry? The infringing activity would then be left to those who compile and run the software. It's just a question...
Software patents and physical patents are both evil, but physical patents usually slightly less so, because a physical patent is often tied to one or more well paid engineers and a costly lab. So one can argue that a patent is necessary to recover these costs.
For a software patent, this is not so much the case; a good idea for a new algorithm might easily come from 5 minutes more spent on the toilet, or from 5 minutes in a hot tub, sometimes literally so: http://en.wikipedia.org/wiki/Eureka_(word)#Archimedes
Also, due to good school education, there are 100.000s, if not millions, of people able to develop software algorithms or even mathematical ideas, while engineers are more rare, especially since these are spread out over different fields of expertise.
There really is no way to fix the patent system.
In theory, obvious stuff should not be allowed to be patented, but leading countries like the USA allow everything to be patented, since they believe in the equation more patents=more power =more wealth
Hey don't blame me, IANAB
imagine if it was donated to a foundation, dedicated to, I dunno, 'Free Software'
and as it began amassing donations - this 'foundation' would build a portfolio of it's own with which to wage battle, or at least defend itself...
every day http://en.wikipedia.org/wiki/Special:Random
Wait, you're suggesting it might be a speed increase to enable Compressed Folders in windows?
I can't believe no one said it already.
make imaginary.friends COUNT=100 VISIBLE=false
You know there's a problem when an ALGORITHM called "Carmack's Reverse" is patented by someone other than Carmack.
dose that mean i can patent oh say the (-b +OR- SQRT(b^2 -4*a*c))/2*a as long as i do it on a computer?
---Saying gnome 3 is better than windows 8 not so much a compliment as it is damning with light praise.
Nobody is suggesting that, they're suggesting that use of a competent compression algorithm and framework allows you to trade unutilized CPU time to effectively speed up I/O by doing less of it.
"You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
Assuming that you're using vanilla Doom 3 content, that may be true. But if the Doom 3 mod community receives a shot in the arm as a result of the source release (and I don't imagine there's any reason it wouldn't), it's likely that maps and content will be released which push modern hardware quite a bit further than the original game ever managed. At that point, every speed optimization available will make a positive difference, especially if map and/or asset complexity increases by some significant factor.
Note that this is probably more academic than many here realize - as long as the offending algorithm is not "officially" released, I'm pretty sure Creative won't care enough to go after individual projects with a legal banhammer to force them to stop using "their" algorithm in non-profit projects. And if worse comes to worse, I'm 100% sure someone will implement shadowmap support within the first year or so, which will render* this issue irrelevant.
* Oh, that's a pun. I'm sorry.