Stránka 1 z 1

OpenGL® 3.x

Napsal: úte 12. srp 2008, 22:23
od Krteq
OpenGL® 3.0

Včera (11.8.2008) byly oficiálně uvolněny specifikace standartu OpenGL 3.0

Press Release
Khronos™ Group píše:The Khronos™ Group announced today it has released the OpenGL® 3.0 specification with strong industry support to bring significant new functionality to the open, cross-platform standard for 3D graphics acceleration. OpenGL 3.0 includes GLSL™ 1.30, a new version of the OpenGL shading language, and provides comprehensive access to the functionality of the latest generations of programmable graphics hardware. The OpenGL working group has also defined a set of OpenGL 3.0 extensions that expose potential new functionality for the next version of OpenGL that is targeted for release in less than 12 months, and a set of extensions for OpenGL 2.1 to enable much of the new OpenGL functionality on older hardware. Additionally, OpenGL 3.0 introduces an evolutionary model to assist in streamlining the specification and to enable rapid development of the standard to address diverse markets. Finally, the OpenGL working group has announced that it is working closely with the emerging OpenCL standard to create a revolutionary pairing of compute and graphics programming capabilities.

The OpenGL 3.0 specification enables developers to leverage state-of-the-art graphics hardware, including many of the graphics accelerators shipped in the last two years both on Windows XP and Windows Vista as well as Mac OS and Linux. According to Dr. Jon Peddie of Jon Peddie Research, a leading graphics market analyst based in California, the installed base of graphics hardware that will support OpenGL 3.0 exceeds 60 million units. AMD, Intel and NVIDIA have made major contributions to the design of OpenGL 3.0 and today all three companies announced their intent to provide full implementations within their product families. Additionally, the OpenGL working group includes the active participation of leading developers such as Blizzard Entertainment and TransGaming that have played a vital role in ensuring that the specification meets the genuine needs of the software community.

“We are very pleased to see the release of OpenGL 3.0, which includes numerous features and extensions that will help us and other ISVs bring amazing gaming content to OpenGL-based platforms,” commented Gavriel State, founder & CTO of TransGaming, Inc.


OpenGL 3.0 introduces dozens of new features including:
  • Vertex Array Objects to encapsulate vertex array state for easier programming and increased throughput
  • non-blocking access to Vertex Buffer Objects with the ability to update and flush a sub-range for enhanced performance
  • full framebuffer object functionality including multi-sample buffers, blitting to and from framebuffer objects, rendering to one and two-channel data, and flexible mixing of buffer sizes and formats when rendering to a framebuffer object
  • 32-bit floating-point textures and render buffers for increased precision and dynamic range in visual and computational operations
  • conditional rendering based on occlusion queries for increased performance
  • compact half-float vertex and pixel data to save memory and bandwidth
  • transform feedback to capture geometry data after vertex transformations into a buffer object to drive additional compute and rendering passes
  • four new texture compression schemes for one and two channel textures providing a factor of 2-to-1 storage savings over uncompressed data
  • rendering and blending into sRGB framebuffers to enable faithful color reproduction for OpenGL applications without adjusting the monitor's gamma correction
  • texture arrays to provide efficient indexed access into a set of textures
  • 32-bit floating-point depth buffer support.
The new version of the OpenGL Shading Language, GLSL 1.30, provides front-to-back native integer operations including full integer-based texturing, integer input and outputs for vertex and fragment shaders and a full set of integer bitwise operators. It also improves compatibility with OpenGL ES, adds new interpolation modes, includes new forms of explicit control over texturing operations, provides additional built-in functions for manipulating floating-point numbers and introduces switch statements for enhanced flow control within shader programs.

The OpenGL working group has also released a set of extensions to OpenGL 3.0 that can be immediately used by developers and, after industry feedback, will potentially be included in the next generation of OpenGL targeted for release in less than 12 months. These extensions include geometry shaders, further instancing support, and texture buffer objects.

Khronos today also released a number of extensions to OpenGL 2.1 which enables some of the new features in OpenGL 3.0 to be used on older generations of hardware. These extensions include enhanced VBOs, full framebuffer object functionality, half float vertices, compressed textures, vertex array objects and sRGB framebuffers.

Additionally, OpenGL 3.0 defines an evolutionary process for OpenGL that will accelerate market-driven updates to the specification. The new OpenGL API supports the future creation of profiles to enable products to support specific market needs while not burdening every implementation with unnecessary costs. To avoid fragmentation, the core OpenGL specification will contain all defined functionality in an architecturally coherent whole, with profiles tightly specifying segment-relevant subsets. OpenGL 3.0 also introduces a deprecation model to enable the API to be streamlined while providing full visibility to the application developer community, enabling the API to be optimized for current and future 3D graphics architectures.

Finally, the OpenGL working group is working closely with the newly announced OpenCL working group at Khronos to define full interoperability between the two open standards. OpenCL is an emerging royalty-free standard focused on programming the emerging intersection of GPU and multi-core CPU compute through a C-based language forheterogeneous data and task parallel computing. The two APIs together will provide a powerful open standards-based visual computing platform with OpenCL’s general purpose compute capabilities intimately combined with the full power of OpenGL.

“OpenGL 3.0 is a significant evolutionary step that integrates new functionality to ensure that OpenGL is a truly state-of-the-art graphics API while supporting a broad swathe of existing hardware,” said Barthold Lichtenbelt, chair of the OpenGL working group at Khronos. “Just as importantly, OpenGL 3.0 sets the stage for a revolution to come – we now have the roadmap machinery and momentum in place to rapidly and reliably develop OpenGL - and are working closely with OpenCL to ensure that OpenGL plays a pivotal role in the ongoing revolution in programmable visual computing.”
OpenGL 3.0 Specification (PDF)
OpenGL Shading Language v1.30.08 (PDF)

Re: OpenGL® 3.0

Napsal: stř 13. srp 2008, 13:06
od Mirek E.
ehm... co je vlastně OpenGL? :)

to OndraSter: Dík, hned jsem zase o něco chytřejší :).

Re: OpenGL® 3.0

Napsal: stř 13. srp 2008, 13:16
od OndraSter

Re: OpenGL® 3.0

Napsal: stř 13. srp 2008, 22:11
od €agle
V odborných kruzích z toho panuje veliké zklamání a i skalní příznivci OpenGL se chystají k přechodu na DX. Revoluce kterou měla verze 3.0 přinést se rozhodně nekoná a mnozí označují tento výtvor jako poslední hřebíček do rakve OpenGL...

Re: OpenGL® 3.0

Napsal: stř 13. srp 2008, 22:27
od Krteq
A co CAD, DCC apod.? OpenGL je přece "průmyslový" standart... to všechny ty profi aplikace poběží taky na DX? nebo budou mít vlastní API?

Re: OpenGL® 3.0

Napsal: stř 13. srp 2008, 22:36
od €agle
Jenže na CAD a podobné aplikace ti bohatě stačí i OpenGL 1.5, když budeš hodně pokrokový tak 2.0. Tam potřebuješ hlavně přesné zobrazení daného modelu, nepotřebuješ aby vypadal graficky úchvatně se spoustou efektů. A z programátorského hlediska, což měla být asi největší změna verze 3.0, to zůstává pořád stejný paskvil jako doposud...

Re: OpenGL® 3.0

Napsal: stř 13. srp 2008, 22:38
od Shit

Re: OpenGL® 3.0

Napsal: stř 13. srp 2008, 22:45
od Krteq
Linky jsou uvedeny u úvodního postu... proč je postovat znova? :?

Re: OpenGL® 3.0

Napsal: stř 13. srp 2008, 23:04
od Shit
Sorry - nevšimnul jsem si toho. Četl jsem pouze citaci. :sad:

Re: OpenGL® 3.0

Napsal: čtv 14. srp 2008, 00:32
od Krteq
Výtah z PDF OpenGL3.0 spec. (Kapitola N.1):
New Features
New features in OpenGL 3.0, including the extension or extensions if any on which they were based, include:
  • API support for the new texture lookup, texture format, and integer and unsigned
    integer capabilities of the OpenGL Shading Language 1.30 specification
    (GL_EXT_gpu_shader4).
  • Conditional rendering (GL_NV_conditional_render).
  • Fine control over mapping buffer subranges into client space and flushing
    modified data.
  • Floating-point color and depth internal formats for textures and renderbuffers
    (GL_ARB_color_buffer_float, GL_NV_depth_buffer_float
GL_EXT_gpu_shader4 -> podpora "shader model 4" ;)

Re: OpenGL® 3.0

Napsal: čtv 14. srp 2008, 14:37
od €agle
Podpora shader modelu 4.0 je přes extensions už v GL2.1. ;-) Neříkám, že GL3.0 je vyloženě špatné, ty specifikace GLSL1.3 vypadají moc dobře a odstranění (resp. označení za deprecated) u vetšiny fixed function pipeline je jistě krok kupředu, ale není to to OpenGL 3.0, které nám bylo tak dlouho slibováno a na které se každý těšil. Kdyby to označili za verzi 2.2, tak by se to dalo pochopit, ale verze 3.0 měla celému OpenGL přinést revoluci a ta se bohužel nekoná. Zajímavý názor byl, že by nVidia mohla jako reakci vytvořit své vlastní grafické API, což mě osobně přijde jako vynikající nápad.

Re: OpenGL® 3.0

Napsal: čtv 14. srp 2008, 15:26
od beardie
€agle píše:Zajímavý názor byl, že by nVidia mohla jako reakci vytvořit své vlastní grafické API, což mě osobně přijde jako vynikající nápad.
zaujimavy ano, ale dost nerealny
okrem toho nevidim dovod na dalsie (3.) API
su v sucasnosti pouzivane OpenGL 2.1/DX10(.1) v niecom nedostatocne?

Re: OpenGL® 3.0

Napsal: čtv 14. srp 2008, 16:36
od €agle
Neřekl bych, že je to zas tak nereálné. Finance na to mají, zkušenosti taky, ušetřilo by jim to spoustu problémů a nakonec kdo dokáže lépe využít potenciál grafické karty, než samotný tvůrce. DX chybí multiplatformnost, GL zase moderní API a vůdčí firma která by ho zaštítila. Kdyby nVidia přišla s něčím co to smíchá dohromady plus přihodí třeba přímou podporu fyziky a GPU computingu, vzniklo by z toho krásné all-in-one api a Microsoft by měl těžkou konkurenci. Už teď má nVidia své vlastní api na programování shaderů (Cg), stačilo by ho trochu obalit dalšími fukcemi a nové rozhraní je na světě (silně zjednodušeně)... Asi největším problémem by ale bylo, že ATi by myslím na něco takového nepřistoupila a odmítla pro to vytvořit drivery (konec konců tohle je vidět i OpenGL kdy ATi na většinu rozšíření z vysoka kašle a co není v core specifikaci, to nepodporuje).

Re: OpenGL® 3.0

Napsal: pát 15. srp 2008, 00:31
od €agle
nVidia vydává beta ovladače s podporou OpenGL 3.0
http://developer.nvidia.com/object/opengl_3_driver.html

Re: OpenGL® 3.0

Napsal: pát 15. srp 2008, 18:10
od DEVastor
tak to bylo nejak rychle :shock:

Re: OpenGL® 3.0

Napsal: ned 17. srp 2008, 17:51
od Lojza
Jen aby také byly nějaké OpenGL hry...

Re: OpenGL® 3.x

Napsal: stř 25. bře 2009, 15:14
od Krteq
OpenGL® 3.1

24.3.2009 byly oficiálně uvolněny specifikace standartu OpenGL 3.1

Press Release
Khronos Group píše: The Khronos™ Group announced today it has publicly released the OpenGL® 3.1 specification that modernizes and streamlines the cross-platform, royalty-free API for 3D graphics. OpenGL 3.1 includes GLSL™ 1.40, a new version of the OpenGL shading language, and provides enhanced access to the latest generation of programmable graphics hardware through improved programmability, more efficient vertex processing, expanded texturing functionality and increased buffer management flexibility. OpenGL 3.1 implementations are expected shortly from multiple vendors. The new OpenGL 3.1 specification and more details are available at http://www.khronos.org/opengl.

OpenGL 3.1 leverages the evolutionary model introduced in OpenGL 3.0 to dramatically streamline the API for simpler and more efficient software development, and accelerates the ongoing convergence with the widely available OpenGL ES mobile and embedded 3D API to unify application development. The OpenGL 3.1 specification enables developers to leverage state-of-the-art graphics hardware available on a significant number of installed GPUs across all desktop operating systems. According to Dr. Jon Peddie of Jon Peddie Research, a leading graphics market analyst in California, the installed base of graphics hardware that will support OpenGL 3.1 exceeds 100 million units. OpenGL 3.0 drivers are already shipping on AMD, NVIDIA and S3 GPUs.

Concurrently with the release of the OpenGL 3.1 specification, the OpenGL ARB has released an optional compatibility extension that enables application developers to access the OpenGL 1.X/2.X functionality removed in OpenGL 3.1, ensuring full backwards compatibility for applications that require it.

“The rapid nine month development of OpenGL 3.1 demonstrates the schedule-driven approach to the standard that is enabling and inspiring cutting edge, cross-platform GPU functionality,” said Barthold Lichtenbelt, chair of the OpenGL ARB working group at Khronos. “OpenGL 3.1 answers the requests from the developer community to streamline and modernize the OpenGL API. The OpenGL ARB will continue to leverage the unique evolutionary model introduced in OpenGL 3.0 to drive the ongoing revolution in OpenGL while ensuring backwards compatibility where it is needed.”

OpenGL 3.1 introduces a broad range of significant new features including:
  • Texture Buffer Objects - a new texture type that holds a one-dimensional array of texels of a specified format, enabling extremely large arrays to be accessed by a shader, vital for a wide variety of GPU compute applications;
  • Signed Normalized Textures – new integer texture formats that represent a value in the range [-1.0,1.0];
  • Uniform Buffer Objects - enables rapid swapping of blocks of uniforms for flexible pipeline control, rapid updating of uniform values and sharing of uniform values across program objects;
  • More samplers – now at least 16 texture image units must be accessible to vertex shaders in addition to the 16 already guaranteed to be accessible to fragment shaders;
  • Primitive Restart – to easily restart an executing primitive, useful for efficiently drawing a mesh with many triangle strips, for example;
  • Instancing - the ability to draw objects multiple times by re-using vertex data to reduce duplicated data and number of API calls;
  • CopyBuffer API – accelerated copies from one buffer object to another, useful for many applications including those that share buffers with OpenCL™ 1.0 for advanced visual computing applications.
OpenGL 3.1 Specification (PDF)
OpenGL Shading Language v1.40(PDF)