OpenGL 4.0 arrives, brings more opportunities for general purpose GPU action
What's a Game Developers Conference without some sweet new tools for developers to sink their teeth into? Khronos Group, the association behind OpenGL, has today announced the fourth generation of its cross-platform API spec, which takes up the mantle of offering a viable competitor to Microsoft's DirectX 11. The latest release includes two new shader stages for offloading geometry tessellation from the CPU to the GPU, as well as tighter integration with OpenCL to allow the graphics card to take up yet more duties off the typically overworked processor -- both useful additions in light of NVIDIA's newfound love affair with tessellation and supposed leaning toward general purpose GPU design in the Fermi chips coming this month. Lest you don't care that much about desktop gaming, OpenGL ES (Embedded Systems, a mobile offshoot of OpenGL) is the graphics standard on "virtually every shipping smart phone," meaning that whatever ripples start on the desktop front will be landing as waves on your next superphone. If that holds true, we can look forward to more involvement from our graphics chips beyond their usual 3D duties and into spheres we tend to care about -- such as video acceleration. Now you care, don't ya?
























@Murkurie
3D graphics is all about shader programs and hardware features right now. The API around it is just a convenience for developers, so they don't have to write different code for different cards. That said, DirectX and OpenGL have exactly the same capabilities on the same hardware. DirectX has a much wider API that better matches current hardware features and provides better fallbacks, since Microsoft and GPU designers work together to sync their hardware and software releases. OpenGL does cutting-edge stuff through proprietary extensions, which means a little extra work for developers, but not much, ATI and Nvidia are basically the only ones making hardware that's ahead of the current OpenGL standards. That said, many developers -including me- find OpenGL a much nicer API to program to. Easy to learn, concise, portable, efficient, less hairy than DirectX in general. On mobile platforms OpenGL (ES) is the only way to go.
Anyway, to repeat myself: DirectX is not more powerful or more advanced than OpenGL or vice versa, just quicker to incorporate hardware developments directly into the API.
@VampireHunterZ You use Open Office and MS Office as comparisons for 3D APIs that run on the same hardware using the same under the cover calls? OpenGL can do everything Direct3D can and more. Period. The only thing these versions do is consolidate some of the previously existing vendor specific extensions into a singular interface. OpenGL is almost always the first API to get these features, but since they come from various vendors it's not necessarily easier to implement, but it's still "ahead" of Direct3D. With D3D you have to wait for Microsoft to give you an interface to perform that feature.
From my understanding, OpenGL is 'supposedly' superior but is harder to program because it takes a greater time to learn in order to showcase those superior features.
DirectX is easier for programmers to learn and has the support behind Microsoft, hence the reason for it's popularity. DirectX limits are as far as Microsoft will go. You can't make a directX game any better unless directX gets updated with new tools.
This is how it was explained to me. Feel free to correct me.
It's going to be fully supported by Fermi..Yay!!