definición y significado de OpenGL | sensagent.com


   Publicitad R▼


 » 
alemán árabe búlgaro checo chino coreano croata danés eslovaco esloveno español estonio farsi finlandés francés griego hebreo hindù húngaro indonesio inglés islandés italiano japonés letón lituano malgache neerlandés noruego polaco portugués rumano ruso serbio sueco tailandès turco vietnamita
alemán árabe búlgaro checo chino coreano croata danés eslovaco esloveno español estonio farsi finlandés francés griego hebreo hindù húngaro indonesio inglés islandés italiano japonés letón lituano malgache neerlandés noruego polaco portugués rumano ruso serbio sueco tailandès turco vietnamita

Definición y significado de OpenGL

Definición

definición de OpenGL (Wikipedia)

   Publicidad ▼

Frases

Wikipedia

OpenGL

                   
跳過字詞轉換說明
OpenGL
OpenGL logo
原作者 Silicon Graphics
開發者 Khronos Group
穩定版本 4.2/
2011年8月8日;12個月前 (2011-08-08)
作業系統 跨平台
類型 API
許可協議 多種
網站 http://www.opengl.org

OpenGL(全寫Open Graphics Library)是個定義了一個跨程式語言、跨平台程式介面(Application programming interface)的規格,它用於生成二維三維圖像。這個接口由近三百五十個不同的函數調用組成,用來從簡單的圖形位元繪製複雜的三維景象。而另一種程式介面系統是僅用於Microsoft Windows上的Direct3D。OpenGL常用於CAD虛擬實境、科學視覺化程式和電子遊戲開發

OpenGL的高效實現(利用了圖形加速硬件)存在於Windows,很多UNIX平台和MacOS。這些實現一般由顯示裝置廠商提供,而且非常依賴於該廠商提供的硬體。開放原始碼函式庫Mesa是一個純基於軟體的圖形API,它的代碼兼容於OpenGL。但是,由於許可證的原因,它只聲稱是一個「非常相似」的API。

OpenGL規範由1992年成立的OpenGL架構評審委員會(ARB)維護。ARB由一些特別興趣於建立一個統一的普遍可用的API的公司組成。根據OpenGL官方網站,2002年6月的ARB投票成員包括3DlabsApple ComputerATI TechnologiesDell ComputerEvans & SutherlandHewlett-PackardIBMIntelMatroxNVIDIASGISun MicrosystemsMicrosoft曾是創立成員之一,但已於2003年3月退出。

目錄

  擴展

當獨立廠商建立一種新技術時,OpenGL標準允許它們通過「擴展」的方法提供所擴展的功能。然後一個擴展就分成兩部分發布:包含擴展函數原型的頭文件和作為廠商的設備驅動。每個廠商有一個用於命名它們的新函數和常量的字母縮寫。例如,NVIDIA的縮寫(「NV」)用於定義它們的專有函數「glCombinerParameterfvNV()」和它們的常量「GL_NORMAL_MAP_NV」。如果多於一個廠商同意實現相同的擴展功能,那麼就用縮寫「EXT」。進一步,架構評審委員會可能「祝福」這個擴展,那麼這就被稱為一個「標準擴展」,使用縮寫「ARB」。第一個ARB擴展是GL_ARB_multitexture。根據官方擴展提升路徑,多紋理不再是可選實現的ARB擴展,它已經是OpenGL 1.4以後的核心API的一部分。

幾個庫建立在OpenGL之上,提供了OpenGL本身沒有的功能:

特別是,OpenGL Performer庫——由SGI開發並可以在IRIXLinuxMicrosoft Windows的一些版本上使用,構建於OpenGL,可以建立實時可視化仿真程序。

當開發者需要使用最新的OpenGL擴展時,他們往往需要使用GLEW或者是GLEE庫提供的功能,可以在程序的運行期判斷當前硬件是否支持相關的擴展,防止程序崩潰甚至造成硬件損壞。

  綁定

為了加強它的多語言和多平台特性,已經用很多語言開發了OpenGL的各種綁定和移植。最值得注意的是,Java3D庫已經可以利用OpenGL(另一個選擇可能是DirectX)作為它的硬件加速了。OpenGL官方網頁 [1] 列出了用於JavaFortran 90PerlPikePythonAdaVisual Basic的多個綁定。

  高級功能

OpenGL被設計為只有輸出的,所以它只提供渲染功能。核心API沒有窗口系統、音頻、打印、鍵盤/鼠標或其他輸入設備的概念。雖然這一開始看起來像是一種限制,但它允許進行渲染的代碼完全獨立於他運行的操作系統,允許跨平台開發。然而,有些整合於原生窗口系統的東西需要允許和宿主系統交互。這通過下列附加API實現:

另外,GLUT庫能夠以可移植的方式提供基本的窗口功能。

  歷史

OpenGL進化自(而且風格很相似)SGI的早期3D接口IRIS GL。IRIS GL的一個限制是它只能訪問底層硬件提供的特性。如果圖形硬件不支持例如紋理映射這樣的功能,那麼應用程序就不能使用它。OpenGL通過在軟件上對硬件不支持的特性提供支持的方法克服了這個問題,允許應用程序在相對低配置的系統上使用高級的圖形特性。Fahrenheit項目是Microsoft和SGI之間的聯合行動,為了統一OpenGL和Direct3D接口的目的。它一開始提出了一些把規則帶給交互3D計算機圖形API世界的承諾,但因為SGI的財政限制,這個項目後來被放棄了。

2002年微軟的DirectX 9提出了全新的Shader繪圖功能以及高階著色語言 (HLSL),OpenGL霸主地位開始被瓦解。這使得3DLabs了解到必須開發全新的OpenGL 2.0版本,但僅加入支援GLSL的功能。2006年Khronos接手OpenGL,立刻著手發展Longs Peak與Mount Evans。2008年推出OpenGL 3,但評價普遍不高。

2010年3月10日, OpenGL同時推出了3.3和4.0版本,同年7月26日又發布了4.1版本。2011年8月8日發布4.2版本。


OpenGL 4.2 發佈於2011年8月8日

支持的顯卡: Nvidia GeForce 400 series, Nvidia GeForce 500 series, Nvidia GeForce 600 series, ATI Radeon HD 5000 series, AMD Radeon HD 6000 Series, AMD Radeon HD 7000 Series

支持Shaders原子計數器和加載/存儲/原子 讀-修改-寫操作的單級紋理着色器。 捕捉GPU-tessellated幾何變換反饋的結果繪製的多個實例,使複雜的對象進行有效的重新定位和複製。 支持修改任意子集的壓縮紋理,而無需重新下載整個GPU的紋理, 顯著的性能改進。 支持包裝成一個單一的32位值顯著降低內存存儲和頻寬的高效着色處理多個8位和16位值。

  參見

s3c6410支持openGL1.1/2.0 iphone 2就是使用的這款芯片

  外部連結

   
               

   Publicidad ▼

 

todas las traducciones de OpenGL


Contenido de sensagent

  • definiciones
  • sinónimos
  • antónimos
  • enciclopedia

 

4677 visitantes en línea

computado en 0,031s