OpenGL 3.1 Release, and… Web 3D Coming soon?

去年,OpenGL 終於推出了 3.0 版。而這一陣子,又推出了新的 3.1 了!

詳細資料,可以參考 KHRONOS 的 OpenGL 官方網頁:

OpenGL 3.1 and the companion OpenGL Shading Language 1.40 add many new features, while simultaneously simplifying the API and shading language by removing legacy fixed-functionality interfaces deprecated in OpenGL 3.0. OpenGL 3.1 defines a lean and mean base to build on for access to future programmable graphics hardware.

OpenGL 3.1 Specification
OpenGL 3.1 Specification + ARB_compatibility
OpenGL Shading Language v1.40

新功能的部分大概列表如下(參考《Khronos Make OpenGL 3.1 Specifications Available.》):

  • 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.

而 nVidia 這次速度也相當快,馬上就有支援 OpenGL 3.1 的 182.47 驅動程式了~可以參考 nVidia 官方《NVIDIA OpenGL 3.0/3.1 Support for Windows, Linux, FreeBSD, and Solaris》。

此外,Khronos 也決定要制定 Web 上的硬體加速的 3D 標準(Accelerated 3D on Web)了~並且,號稱會在一年內會有第一個公開版本。基本上,應該算是和 Mozilla 合作,所以基本上應該會是以 Canvas:3D 為基礎吧?而很有可能,會是以 JavaScript ECMAScript 搭配 OpenGL / OpenGL ES 的形式吧~

細節可以參考《Khronos Launches Initiative to Create Open Royalty Free Standard for Accelerated 3D on the Web》和《Mozilla gives 3D web another shot》。

不過,Heresy 第一個懷疑的是在瀏覽器上,Script 要跑複雜的 3D 時的效率(雖然現在各家瀏覽器都再針對 JavaScript 最佳化),其次就是 JavaScript 是否適合開發這類的程式了(記憶體資源等等)。當然,萬惡的 Microsoft IE 會否支援這項標準呢?這也會是另一個問題了~ ^^"

對「OpenGL 3.1 Release, and… Web 3D Coming soon?」的想法


在下方填入你的資料或按右方圖示以社群網站登入: 標誌

您的留言將使用 帳號。 登出 /  變更 )

Google photo

您的留言將使用 Google 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )


您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.