Float extensions are out...

Just to say that the ARB released the 3 extensions for float control:

http://oss.sgi.com/projects/ogl-sample/registry/ARB/color_buffer_float.txt
http://oss.sgi.com/projects/ogl-sample/registry/ARB/half_float_pixel.txt
http://oss.sgi.com/projects/ogl-sample/registry/ARB/texture_float.txt

Just give us EXT_framebuffer_object to wrap it up… :smiley:

While reading GL_ARB_texture_float:

  1. Should the new names of the internal formats be changed to a different spelling?

RESOLVED: Internal format names have been updated to the same convention as the EXT_framebuffer_object extension.
:smiley:

Just wondering: What do i need halfs for?

As i understand the spec, i am now able to specify ie. my textures in half-format to OpenGL. So, where is the point? I don´t know any programming language, which supports such a type, so, if i would want to create such a texture, i would need to write my own code to read and write such floats. I guess the point is, to be able to have higher precision data, than with RGBA, but to save disk-space, compared to real floats. Is that so?

But if someone has more experience with this, please tell me, if i need it.

Jan.

yes, you can get hdr images and consume less memory than real float rgba textures…

And OpenEXR works with 16bit half floats, so that extension would work great with it. Yeah I know OEXR can use higher precision also, but for the HDR image itself, 16bit half is more than enough.

-SirKnight

IP Status

SGI owns US Patent #6,650,327, [...]
SGI will not grant the ARB royalty-free use of this IP for use in OpenGL, [...]

I am a bit concerned about the IP Status of these extensions.

What does that mean? Does anyone using these extensions have to pay fees to SGI? Or is it anyone implementing these?

as I read it, it means that anyone wishing to produce an OpenGL impliementation (ie NV, ATI, 3DLabs) with these extensions is going to have to pay SGI to let them use it.

Mesa will also suffer the same fate I would guess…

Patents…ugh. Boy how I do hate these things. :mad:

-SirKnight

What, you think it would be better in a world where companies kept their technology secret forever? When an inventor dies, his secret techniques go with him to the grave? Anyone who can afford to reverse-engineer your stuff can sell your invention, without worrying about development costs?

I mean, that’s the alternative. Compared to that, patents work pretty well. If only the patent office would at least TRY to sort out “obvious to a skilled practitioner” rather than deferring that to 12 people who are not capable of getting out of jury duty, we’d be all set!

Quick question… If those extensions have IP issues, then what about ATI’s? Does it have the same?

Originally posted by jwatte:
[b]What, you think it would be better in a world where companies kept their technology secret forever? When an inventor dies, his secret techniques go with him to the grave? Anyone who can afford to reverse-engineer your stuff can sell your invention, without worrying about development costs?

I mean, that’s the alternative. Compared to that, patents work pretty well. If only the patent office would at least TRY to sort out “obvious to a skilled practitioner” rather than deferring that to 12 people who are not capable of getting out of jury duty, we’d be all set![/b]
Have you read this patent? Don’t you think that this patent is for a natural evolution of the render pipeline? I think that even in 1998, many people imagine that the natural evolution will be to go to floating point frame buffers, textures, etc.? Don’t you think so? So this is one of this stupid patents that companies are filling knowing that the US patent office is not very clever.
The worst thing of all is that those companies are trying to bring this stupid patent system to Europe. :frowning:

Originally posted by jwatte:
What, you think it would be better in a world where companies kept their technology secret forever? When an inventor dies, his secret techniques go with him to the grave?
I agree to this in the context of conventional technology patents, but for software it is different. With software patents, in contrast to other patents, the invention (in case of software the source code) is not disclosed, so your argument does not hold for software patents.

In addition to that Software patents generally don’t cover a solution but a problem. Not a specific method how a problem can be solved is patented, but every attempt to solve a specific problem.

Lets look at this patent from this point of view: Although OpenGL used to be an open standard, now anyone who wants to implement it has to pay royality fees. And what do you pay it for? You don’t use any of SGIs inventions, you just implement something yourself that happens to solve the same problem that one of SGIs inventions solve.

This is just ridiculous. Just imagine what would have happened if the first one who invented a compression technique had filed a patent on his “method for making files smaller by removing redundant information”. Then anyone implementing a different compression algorithm would have to pay fees…

The extensions are ARB, so most of the board has voted for the extensions. I think the IP status wouldn’t be much of an issue, correct me if I’m wrong. Otherwise surely NV, 3D Labs, and ATI would have voted against the extension. Would be nice to see the ARB meeting notes.

Hmmm, in D3D we already have standardized floating point bufferes, even as render-targets… is this SGI IP stuff only bound to OpenGL?

MS bought LOTS of sgi IP a while ago. Maybe not this, but it seems reasonable that they cross licensed the lot.

yeah, i was considering the same thing and figured MS struck a deal with SGI in someway, I’d forgotten about the patent buying thing so thats probably involved in it somewhere.

Originally posted by Jan:
[b]Just wondering: What do i need halfs for?

As i understand the spec, i am now able to specify ie. my textures in half-format to OpenGL. So, where is the point? I don´t know any programming language, which supports such a type, so, if i would want to create such a texture, i would need to write my own code to read and write such floats. I guess the point is, to be able to have higher precision data, than with RGBA, but to save disk-space, compared to real floats. Is that so?

But if someone has more experience with this, please tell me, if i need it.

Jan.[/b]
You need to differentiate between the format the data is handed to OpenGL (16 bit floats) and the format the fragment shader processes data. Currently all texture lookups done in a fragment shader return 32 bit floating point data. OpenGL will do the conversion from 16 bits to 32 bits for you and that will typically happen in the graphics hardware. Thus sending down 16 bit floats saves you a lot of bandwidth, if 16 bits is good enough for you (which it is for a lot of applications).

Barthold

You need to differentiate between the format the data is handed to OpenGL (16 bit floats) and the format the fragment shader processes data.
I think he’s talking about uploading the data to OpenGL.

The 16-bit float is an internal format. As such, the driver will convert from 8-bit integer, or 32-bit float formats into the 16-bit half float format. You do not need to be able to operate on 16-bit floats to use them.

Originally posted by Overmind:
I agree to this in the context of conventional technology patents, but for software it is different. With software patents, in contrast to other patents, the invention (in case of software the source code) is not disclosed, so your argument does not hold for software patents.

Yeah that’s what I was referring to was software patents. I figured that was pretty obvious.
:rolleyes:

-SirKnight

Originally posted by Overmind:
Lets look at this patent from this point of view: Although OpenGL used to be an open standard, now anyone who wants to implement it has to pay royality fees.
This has always been true. OpenGL is an Open standard because it is ratified by the ARB and then the specifications are made available to anyone. You can walk into any bookshop and buy them, and even download them. The extensions are ALL public if any vendor expects them to be used.

Paying for implementation is not uncommon; look at S3TC. It has not stopped S3TC becoming a defacto standard texture compression technique that graphics card manufacturers have to pay to implement it in hardware or software.

And what do you pay it for? You don’t use any of SGIs inventions, you just implement something yourself that happens to solve the same problem that one of SGIs inventions solve.
Yes and if you invented sucking dust into a pillow using a fan a few years back, you’d be sued by the people who were making vacuum cleaners. The whole point of patents is to secure the exclusive rights to an invention, which hopefully you invented.

What a lot of people fail to understand is that “obviousness” is no valid reason to deny a patent.

Patenting obvious things stands as one of the very tried and true things which makes patents necessary; if an inventor has a unique idea, and there is no prior art demonstrable, then a patent secures the right for the inventor to exclusively market that idea.

Isn’t lighting a room by heating something OBVIOUS? But isn’t doing it with wire in a glass gas chamber a unique solution?

The patent rewards the inventor with those exclusive rights, and it protects inventors from being destroyed by larger market forces (for instance if you invented some compression scheme that Microsoft later “borrowed”, you could make them pay you for it).

When this is abused - enforcing LZW licensing, etc. 10 years after widespread use, those stupid JPEG patents etc. - it is usually because the people who hold the patent, not usually the original inventors, are unscrupulous and greedy.

The original patents are still valid, LZW is an inherently patentable thing, the things in the JPEG patents are also very valid ideas put down on paper.

Enforcing them once they’re a worldwide standard after you let them stagnate in your filing cabinet, and only resurrecting them after a buyout, that’s not a flaw in patent law or the patent system, but in capitalism.

But abuse is not “patenting something that nobody had the foresight to implement before”.
If that were so, patents would be worthless.

So. Less of the “but floating point buffers and textures are so obvious!” - if it were that obvious someone on this forum would have patented it before SGI, or implemented it before SGI patented it, and would be rich from the licensing fees right now.

Don’t get bitter just because you didn’t. You know a lot of perfectly valid money-making inventions are lost to inventors simply because they stumbled at the first hurdle by thinking it was too obvious to patent. 10 years later someone else patents it, makes a fortune, and they kick themselves for not having done it.

I guess it doesn’t help most inventors are scared of being rejected, or too “open source” to consider it a valid way to protect their idea (not only to make money from, but the whole point of patents; to prevent market forces from exploiting it beyond the wishes of the inventor).

SGI may have patented floating point buffers and textures in order to stop someone else from patenting it with a much more restrictive licensing scheme.


Matt

whilst i do agree with the idea of pataents for obviously new technology (and do require a certain amount of brainpower to implement)
i totally disagree with ‘obvious’ patents
eg
http://patft.uspto.gov/netacgi/nph-Parse…RS=PN/6,727,830

heres a couple of other ways of getting input into a ‘limited resource computing device’ that i just thought up.

  • tilt the device, eg u want the cursor to go up tilt it forward.
  • instead of length,amount of clicks to a button, how about the amount of pressure applied to a buttoneg hard stab does this, soft rub does that etc.

now why havent i patented these ‘genius’ ideas,
A/ cause im not a millionare that can afford to
B/ i find the whole idea bollux