OpenGL 4.0 Spec Released
tbcpp writes "The Khronos Group has announced the release of the OpenGL 4.0 specification. Among the new features: two new shader stages that enable the GPU to offload geometry tessellation from the CPU; per-sample fragment shaders and programmable fragment shader input positions; drawing of data generated by OpenGL, or external APIs such as OpenCL, without CPU intervention; shader subroutines for significantly increased programming flexibility; 64-bit, double-precision, floating-point shader operations and inputs/outputs for increased rendering accuracy and quality. Khronos has also released an OpenGL 3.3 specification, together with a set of ARB extensions, to enable as much OpenGL 4.0 functionality as possible on previous-generation GPU hardware."
Any chance the patent problems of OpenGL 3 have been fixed?
Please help publicise swpat.org - the software patents wiki
To give an idea to non-OpenGL developers, OpenGL 4.0 closes the feature gap with Direct3D11. If you want to use OpenGL 4.0 you need to wait a couple of weeks before drivers will be out. In case of Nvidia, the drivers will be launched together with their new GTX4*0 GPUs which are the first Nvidia GPUs with Direct3D11/OpenGL 4.0 support. AMD might release new drivers before Nvidia since their hardware is Direct3D11 capable already.
It's most similar to D3D 11.
DirectX is a larger set of development technologies and apis (most of which has been deprecated). Direct3d is it's "direct" analog to OpenGL.
Mod me down, my New Earth Global Warmingist friends!
DirectX won, because it does sound and HID input handling, and because its on every PC sold to every mouthbreathing, Best Buy shopping, banana eating customer.
I wouldn't be so quick to say that DirectX won. The xBox 360 is the only current generation console which uses DirectX.
DirectX won, because it does sound and HID input handling, and because its on every PC sold to every mouthbreathing, Best Buy shopping, banana eating customer.
OpenGL is used on PS3, linux and OS X. It is also used on any game in windows that is cross platform compatible where they did not bother implementing a DirectX engine. Every platform now has HID handling and you can use OpenAL if you want to have the same sound effects engine on windows, OS X and possibly linux.
Now that Valve is porting Steam and related games to OS X and consequently OpenGL, expect to see more activity surrounding OpenGL.
Jesus was a compassionate social conservative who called individuals to sin no more.
> it's not a practical concern.
According to the references linked from that en.swpat.org page, it seems the developers of the free software Mesa project think it's indeed a practical concern.
Please help publicise swpat.org - the software patents wiki
Added to that, OpenGL ES, which is almost a direct subset of OpenGL (it adds a couple of things, but you can quite easily write code that is both valid OpenGL ES and OpenGL), is present on almost all mobile devices. If you want to write a 3D app or game that runs on a mobile phone, you use OpenGL ES. I think Wince has a DirectX implementation of some kind, but it has such a tiny market share that it's largely irrelevant.
OpenAL is also cross-platform; there's a software-only implementation that runs very nicely on Linux, *BSD, and Solaris; it's not just Windows and OS X. Creative provides OpenAL acceleration on a few other platforms, but I don't think anyone else does - there's not really much point these days in offloading sound processing, CPUs are more than fast enough.
I am TheRaven on Soylent News
IMO OpenGL is always going to be better unless DirectX becomes more cross-platform friendly
Direct3D is already cross-platform: Windows, Xbox 360, Zune, Windows Phone 7 Series. Among these is the only video game console open to indie development.
You mean other than the fact that what the PS3 and Wii run aren't really OpenGL but proprietary derivatives of OpenGL ES?
It's like Ford's Model-T: You could order in any color you wanted, so long as that color was black.
Mod me down, my New Earth Global Warmingist friends!
Given that the PC gaming market is really a joke compared to the console market I think DirectX is really rather meaningless.
When the Top 50 selling games world wide contains only 3 PC games The Sims, World of Warcraft, and Starcraft it's time to say that DirectX for the PC is over rated.
Since the Wii and PS3 use a custom modified version of OpenGL for their hardware I'd also have to side with OpenGL as at least being relevant to professional games.
DirectX is indeed widely used on Windows, since it handles more things. OpenGL handles just graphics, but is cross-platform; with SDL it's close enough to DirectX that it's often used. And of course you could use OpenGL for graphics and DirectX for everything else.
I like the current situation where the two coexist and force each other to evolve to stay competitive. It's a bit like AMD forced Intel to get off its ass and make good and cost-effective processors again. We'll see if NVidia is able to respond to ATI/AMD's challenge too; but at least we won't see similar stagnation as with 3Dfx after initial Voodoo.
The only good thing about capitalism is that competition forces companies to get off their ass and evolve. A pity it doesn't work anywhere except the tech sector.
Forget magic. Any technology distinguishable from divine power is insufficiently advanced.
OpenGL tutorial
and you can use OpenAL if you want to have the same sound effects engine on windows
Especially Windows Vista and 7 since DirectSound acceleration doesn't exist anymore LOL
Yeah, sound processing is really quite intensive for a modern computer with some cores lying mostly unused by most video games even without sound turned on.
Brian Fundakowski Feldman
Having the API retain state is a fundamentally bad idea. As one overview points out, "Nearly all of OpenGL state may be queried". (emphasis added)
It would be much better if there were OpenGL context objects that encapsulated the state, and were explicitly passed into API calls. I was completely dumbfounded when I first looked at API and saw that it didn't work that way.
Nintendo requires a new Wii developer to have previous published commercial titles on another platform as well as a "secure office facility", a hurdle that most micro-ISVs cannot clear. 2D Boy had to pretty much cheat Nintendo in order to qualify for a Wii devkit without the overhead of having to lease an office.
The irony of it all is that in the tech sector, a lot of the evolution and advancement come from people who are in it because they love technology and scientific research, not just because of monetary rewards
In fact I know people who love so much what they do, they will point blank tell you they do it most definitively not for the money since they don't get paid anywhere near the amount that their time and effort would deserve.
Which sort of proves that most of the assumptions by those in love with Capitalism are at best incredibly dishonest. If people were guaranteed a relative level of stability (guaranteed housing, health care, food, and education) while being allowed to concentrate on what they love, you'd see humanity advancing by leaps and bounds. But then, the aim of Capitalism (and most other "isms") is not human advancement, but rather a closed loop cycle of concentration of capital, since that very same capital is both the means and the end.
Sorry for the tangent...
DirectX goes all the way to 11.
872835240
I expect that the idea is that instead of calls like glClearBuffer(...) which take their context from the program's global environment, you'd have calls like glClearBuffer(context, ...). The point of this would be to make it easier for a given program to work with multiple contexts at once, e.g. for mixing render-to-texture with normal rendering. (Note: I am not an OpenGL expert, by any means.)
I'm a game developer. I work with OpenGL. This is exactly what's meant when people bitch about OpenGL being stateful. That and the selector states, which make it annoying to write libraries that target OpenGL and work together nicely.