OpenGL (英語 えいご :Open Graphics Library ,譯名 やくめい :開放 かいほう 圖形 ずけい 庫 こ 或 ある 者 もの “開放 かいほう 式 しき 圖形 ずけい 庫 こ ”)是 ぜ 用 よう 於渲染 2D 、3D 矢 や 量 りょう 圖形 ずけい 的 てき 跨 またが 語 かたり 言 げん 、跨 またが 平台 ひらだい 的 てき 應用 おうよう 程 ほど 序 じょ 編 へん 程 ほど 接 せっ 口 こう (API)。這個接 せっ 口 こう 由 ゆかり 近 きん 350個 こ 不同 ふどう 的 てき 函數 かんすう 调用組成 そせい ,用 よう 來 らい 從 したがえ 簡單 かんたん 的 てき 圖形 ずけい 位 い 元 もと 繪 え 製 せい 複雜 ふくざつ 的 てき 三 さん 維景象 ぞう 。而另一种程式介面系统是仅用于Microsoft Windows 上 うえ 的 てき Direct3D 。OpenGL常用 じょうよう 於CAD きゃど 、虛 きょ 擬 なずらえ 實 じつ 境 さかい 、科學 かがく 視覺 しかく 化 か 程 ほど 式 しき 和 わ 電子 でんし 遊戲 ゆうぎ 開發 かいはつ 。
OpenGL的 てき 高 だか 效 こう 實現 じつげん (利用 りよう 图形加速 かそく 硬 かた 件 けん )存在 そんざい 于Windows ,部分 ぶぶん UNIX 平台 ひらだい 和 かず Mac OS 。這些實現 じつげん 一般由顯示裝置廠商提供,而且非常 ひじょう 依賴 いらい 於該廠 しょう 商 しょう 提供 ていきょう 的 てき 硬 かた 體 たい 。開放 かいほう 原始 げんし 碼函 はこ 式 しき 庫 こ Mesa 是 ぜ 一個純基於軟體的圖形API,它的代 だい 码兼容 よう 於OpenGL。但 ただし 是 ぜ ,由 ゆかり 于许可 か 证的原因 げんいん ,它只声 ごえ 称 しょう 是 ぜ 一 いち 个“非常 ひじょう 相似 そうじ ”的 てき API。
OpenGL规范由 よし 1992年 ねん 成立 せいりつ 的 てき OpenGL架 か 构评审委员会(ARB)维护。ARB由 よし 一些對建立一个统一的、普遍 ふへん 可用 かよう 的 てき API特 とく 别感兴趣的 てき 公司 こうし 组成。根 ね 据 すえ OpenGL官 かん 方 かた 网站,2002年 ねん 6月 がつ 的 てき ARB投票 とうひょう 成 なり 员包括 ほうかつ 3Dlabs 、Apple Computer 、ATI Technologies 、Dell Computer 、Evans & Sutherland 、Hewlett-Packard 、IBM 、Intel 、Matrox 、NVIDIA 、SGI 和 わ Sun Microsystems ,Microsoft 曾是创立成 なり 员之一 いち ,但 ただし 已 やめ 于2003年 ねん 3月 がつ 退出 たいしゅつ 。
圖形 ずけい 管 かん 線 せん
OpenGL規範 きはん 描述了 りょう 繪 え 製 せい 2D和 わ 3D圖形 ずけい 的 てき 抽象 ちゅうしょう API 。儘管這些API可 か 以完全 ぜん 通過 つうか 軟體實現 じつげん ,但 ただし 它是為 ため 大 だい 部分 ぶぶん 或 ある 者 もの 全部 ぜんぶ 使用 しよう 硬 かた 體 からだ 加速 かそく 而設計 せっけい 的 てき 。
OpenGL的 てき API定義 ていぎ 了 りょう 若干 じゃっかん 可 か 被 ひ 客 きゃく 戶 ど 端 はし 程 ほど 序 じょ 調 ちょう 用 よう 的 てき 函數 かんすう ,以及一 いち 些具名 めい 整 せい 型 がた 常數 じょうすう (例 れい 如,常數 じょうすう GL_TEXTURE_2D對應 たいおう 的 てき 十 じゅう 進 しん 制 せい 整數 せいすう 為 ため 3553)。雖然這些函數 かんすう 的 てき 定義 ていぎ 表面 ひょうめん 上 じょう 類似 るいじ 於C編 へん 程 ほど 語 ご 言 げん ,但 ただし 它們是 ぜ 語 ご 言 げん 獨立 どくりつ 的 てき 。因 よし 此,OpenGL有 ゆう 許多 きょた 語 ご 言 げん 綁定,值得一 いち 提 ひさげ 的 てき 包括 ほうかつ :JavaScript 綁定的 てき WebGL (基 もと 於OpenGL ES 2.0在 ざい Web瀏 りゅう 覽 らん 器 き 中 なか 的 てき 進行 しんこう 3D渲染的 てき API);C綁定的 てき WGL、GLX和 わ CGL;iOS 提供 ていきょう 的 てき C綁定;Android 提供 ていきょう 的 てき Java 和 わ C綁定。
OpenGL不 ふ 僅語言 ごと 無關 むせき ,而且平台 ひらだい 無關 むせき 。規範 きはん 隻 せき 字 じ 未 み 提 ひさげ 獲得 かくとく 和 わ 管理 かんり OpenGL上下 じょうげ 文 ぶん 相關 そうかん 的 てき 內容,而是將 はた 這些作為 さくい 細 ほそ 節 ぶし 交給底 そこ 層 そう 的 てき 窗 まど 口 こう 系統 けいとう 。出 で 於同樣 どうよう 的 てき 原因 げんいん ,OpenGL純粹 じゅんすい 專 せん 注 ちゅう 于渲染 しみ ,而不提供 ていきょう 輸入 ゆにゅう 、音 おと 頻 しき 以及窗 まど 口 こう 相關 そうかん 的 てき API。
OpenGL是 ぜ 一 いち 個 こ 不斷 ふだん 進化 しんか 的 てき API。新版 しんぱん OpenGL規範 きはん 會 かい 定期 ていき 由 よし Khronos Group發布 はっぷ ,新 しん 版本 はんぽん 通過 つうか 擴展API來 らい 支持 しじ 各種 かくしゅ 新 しん 功 こう 能 のう 。每 まい 個 こ 版本 はんぽん 的 てき 細 ほそ 節 ぶし 由 ゆかり Khronos Group的 てき 成員 せいいん 一致 いっち 決定 けってい ,包括 ほうかつ 顯 あらわ 卡廠 しょう 商 しょう 、作業 さぎょう 系統 けいとう 設計 せっけい 人員 じんいん 以及類似 るいじ Mozilla 和 わ 谷 たに 歌 か 的 てき 一般 いっぱん 性 せい 科技 かぎ 公司 こうし 。
除 じょ 了 りょう 核心 かくしん API要求 ようきゅう 的 てき 功 こう 能 のう 之 の 外 そと ,GPU 供應 きょうおう 商 しょう 可 か 以通過 つうか 擴展的 てき 形式 けいしき 提供 ていきょう 額 がく 外 がい 功 こう 能 のう 。擴展可能 かのう 會 かい 引入新 しん 功 こう 能 のう 和 わ 新 しん 常數 じょうすう ,並 なみ 且可能 かのう 放 ひ 鬆 す 或 ある 取消 とりけし 現有 げんゆう 的 てき OpenGL函數 かんすう 的 てき 限 きり 制 せい 。然 しか 后 きさき 一个扩展就分成两部分发布:包含 ほうがん 扩展函数 かんすう 原型 げんけい 的 てき 头文件 けん 和作 わさく 为厂商 しょう 的 てき 设备驱动 。供應 きょうおう 商 しょう 使用 しよう 擴展公開 こうかい 自 じ 定義 ていぎ 的 てき API而無需獲得 かくとく 其他供應 きょうおう 商 しょう 或 ある Khronos Group的 てき 支持 しじ ,這大大 だい 增加 ぞうか 了 りょう OpenGL的 てき 靈 れい 活性 かっせい 。OpenGL Registry負 ふ 責 せめ 所有 しょゆう 擴展的 てき 收集 しゅうしゅう 和 わ 定義 ていぎ 。
每 まい 個 こ 擴展都 と 與一 よいち 個 こ 簡短 かんたん 的 てき 標識 ひょうしき 符 ふ 關聯 かんれん ,該標識符基 もと 於開發 かいはつ 公司 こうし 的 てき 名稱 めいしょう 。例 れい 如,英 えい 偉 えら 達 たち (NVIDIA)的 てき 標識 ひょうしき 符 ふ 是 ぜ NV 。如果多 た 個 こ 供應 きょうおう 商 しょう 同意 どうい 使用 しよう 相 しょう 同 どう 的 てき API來 らい 實現 じつげん 相 しょう 同 どう 的 てき 功 こう 能 のう ,那 な 麼就用 よう EXT標 しるべ 誌 し 符 ふ 。這種情況 じょうきょう 更進 こうしん 一 いち 步 ほ ,Khronos Group的 てき 架 か 構評審 しん 委員 いいん (Architecture Review Board,ARB)正式 せいしき 批准 ひじゅん 該擴展 てん ,那 な 麼這就被稱 しょう 為 ため 一 いち 個 こ “標準 ひょうじゅん 擴展”,標識 ひょうしき 符 ふ 使用 しよう ARB。第 だい 一 いち 個 こ ARB擴展是 ぜ GL_ARB_multitexture。
OpenGL每 まい 個 こ 新版 しんぱん 本中 ほんなか 引入的 てき 功 こう 能 のう ,特別 とくべつ 是 ぜ ARB和 わ EXT類型 るいけい 的 てき 擴展,通常 つうじょう 由 よし 數個 すうこ 被 ひ 廣 こう 泛實現 じつげん 的 てき 擴展功 こう 能 のう 組合 くみあい 而成。
OpenGL普及 ふきゅう 的 てき 部分 ぶぶん 原因 げんいん 是 ぜ 其高質量 しつりょう 的 てき 官 かん 方 かた 文 ぶん 件 けん 。OpenGL架 か 構評審 しん 委員 いいん 會 かい 隨 ずい 規範 きはん 一同 いちどう 發布 はっぷ 一 いち 系列 けいれつ 包含 ほうがん API變化 へんか 更新 こうしん 的 てき 手 て 冊 さつ 。這些手 しゅ 冊 さつ 因 いん 其封面 めん 顏色 かおいろ 而眾所 しょ 周知 しゅうち 。
Dave Shreiner, Graham Sellers, John M. Kessenich and Bill M. Licea-Kane. 2013. OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 4.3(8th Edition) . Addison-Wesley Professional. ISBN 978-0321773036 .
Randi J. Rost, Bill M. Licea-Kane, Dan Ginsburg, John M. Kessenich, Barthold Lichtenbelt, Hugh Malan and Mike Weiblen. 2009. OpenGL Shading Language (3rd Edition) .
Addison-Wesley Professional. ISBN 978-0321637635
早期 そうき 的 てき OpenGL 版本 はんぽん 会 かい 一同发布配套的 GLU 库,提供 ていきょう 一些同时代硬件尚不支持的简单功能。GLU 最 さい 后 きさき 一次更新规格要求是在 1998 年 ねん ,对已 やめ 弃用的 てき OpenGL 特性 とくせい 有 ゆう 依 よ 赖。
还有几个库也建立 こんりゅう 在 ざい OpenGL之 の 上 うえ ,提供 ていきょう 了 りょう OpenGL本身 ほんみ 没 ぼつ 有 ゆう 的 てき 功 こう 能 のう :
特 とく 别是,OpenGL Performer 库——由 よし SGI开发并可以在IRIX 、Linux 和 わ Microsoft Windows 的 てき 一 いち 些版本上 ほんかん 使用 しよう ,构建于OpenGL,可 か 以建立 こんりゅう 实时 可 か 视化仿真程 ほど 序 じょ 。
当 とう 开发者 しゃ 需要 じゅよう 使用 しよう 最新 さいしん 的 てき OpenGL扩展时,他 た 们往往 おうおう 需要 じゅよう 使用 しよう GLEW 庫 くら 或 ある 者 もの 是 これ GLEE 库提供 ていきょう 的 てき 功 こう 能 のう ,可 か 以在程 ほど 序 じょ 的 てき 运行期 き 判断 はんだん 当 とう 前 まえ 硬 かた 件 けん 是 ぜ 否 ひ 支持 しじ 相 しょう 关的扩展,防止 ぼうし 程 ほど 序 じょ 崩 くずし 溃甚至 いたり 造成 ぞうせい 硬 かた 件 けん 损坏。這類庫 こ 利用 りよう 動態 どうたい 加 か 載 の 技術 ぎじゅつ (dlsym、GetProcAddress等 とう 函數 かんすう )搜 さがせ 尋 ひろ 各種 かくしゅ 擴展的 てき 信 しん 息 いき 。
上下 じょうげ 文 ぶん 与 あずか 窗 まど 口 こう 套件[ 编辑 ]
OpenGL 上下 じょうげ 文 ぶん (英語 えいご :OpenGL context )的 てき 创建过程相当 そうとう 复杂,在 ざい 不同 ふどう 的 てき 操作 そうさ 系 けい 统上 うえ 也需要 よう 不同 ふどう 的 てき 做法。因 よし 此很多 た 游 ゆう 戏开发和用 よう 户界面 めん 库都提供 ていきょう 自 じ 动创建 けん OpenGL 上下 じょうげ 文 ぶん 的 てき 功 こう 能 のう ,其中包括 ほうかつ SDL 、Allegro 、SFML 、FLTK 、Qt 等 ひとし 。也有 やゆう 一些库是专门用来创建OpenGL窗 まど 口 こう 的 てき ,其中最早 もはや 的 てき 便 びん 是 ぜ GLUT ,后 きさき 被 ひ freeglut 取 と 代 だい ,比 ひ 较新的 てき 也有 やゆう GLFW 可 か 以使用 しよう 。[ 3]
以下 いか 套件可 か 以用来 らい 创建并管理 かんり OpenGL 窗 まど 口 こう ,也可以管理 かんり 输入,但 ただし 几乎没 ぼつ 有 ゆう 除 じょ 此以外的 がいてき 其它功 こう 能 のう :
GLFW ——跨 またが 平台 ひらだい 窗 まど 口和 くちわ 键盘、鼠 ねずみ 标、手柄 てがら 处理;偏向 へんこう 游 ゆう 戏
freeglut ——跨 またが 平台 ひらだい 窗 まど 口和 くちわ 键盘、鼠 ねずみ 标处理 り ;API 是 ぜ GLUT API 的 てき 超 ちょう 集 しゅう ,同 どう 时也比 ひ GLUT 更新 こうしん 、更 さら 稳定
GLUT ——早期 そうき 的 てき 窗 まど 口 こう 处理库,已 やめ 不 ふ 再 さい 维护
支持 しじ 创建 OpenGL 窗 まど 口 こう 的 てき 还有一 いち 些「多 た 媒体 ばいたい 库」,同 どう 时还支持 しじ 输入、声音 こわね 等 とう 类似游 ゆう 戏的程 ほど 序 じょ 所 しょ 需要 じゅよう 的 てき 功 こう 能 のう :
Allegro 5 ——跨 またが 平台 ひらだい 多 た 媒体 ばいたい 库,提供 ていきょう 针对游 ゆう 戏开发的 C API
SDL ——跨 またが 平台 ひらだい 多 た 媒体 ばいたい 库,提供 ていきょう C API
SFML ——跨 またが 平台 ひらだい 多 た 媒体 ばいたい 库,提供 ていきょう C++ API;同 どう 时也提供 ていきょう C#、Java、Haskell、Go 等 とう 语言的 てき 绑定
窗 まど 口 こう 套件
FLTK ——小型 こがた 的 てき 跨 またが 平台 ひらだい C++ 窗 まど 口 こう 组件库
Qt ——跨 またが 平台 ひらだい C++ 窗 まど 口 こう 组件库,提供 ていきょう 许多OpenGL辅助对象
wxWidgets ——跨 またが 平台 ひらだい C++ 窗 まど 口 こう 组件库
1980年代 ねんだい ,開發 かいはつ 可 か 以用在 ざい 各種 かくしゅ 各樣 かくよう 圖形 ずけい 硬 かた 件 けん 上 じょう 的 てき 軟件是 ぜ 個 こ 真正 しんせい 的 てき 挑戰 ちょうせん 。通常 つうじょう ,軟件開發 かいはつ 人員 じんいん 為 ため 每 ごと 種 しゅ 硬 かた 件 けん 編 へん 寫 うつし 自 じ 定義 ていぎ 的 てき 接 せっ 口和 くちわ 驅動 くどう 程 ほど 序 じょ 。但 ただし 這非常 ひじょう 昂 たかぶ 貴 き 并會導 しるべ 致大量 りょう 工作 こうさく 的 てき 重複 じゅうふく 。
20世紀 せいき 90年代 ねんだい 初 はつ ,SGI 成 なり 為 ため 工作 こうさく 站 3D圖形 ずけい 領域 りょういき 的 てき 領 りょう 導 しるべ 者 しゃ 。其IRIS GL的 てき API被 ひ 認 みとめ 為 ため 是 ぜ 最 さい 先進 せんしん 的 てき 科技 かぎ 並 なみ 成 なり 為 ため 事實 じじつ 上 じょう 的 てき 行 ぎょう 業 ぎょう 標準 ひょうじゅん ,而基於開放 かいほう 標準 ひょうじゅん 的 てき PHIGS 則 のり 相 しょう 形見 がたみ 絀。IRIS GL更 さら 容易 ようい 使用 しよう ,而且還支持 しじ 即時 そくじ 模 も 式 しき 的 てき 渲染 。相 そう 比 ひ 之 の 下 した ,PHIGS難 なん 於使用 しよう 並 なみ 且功能 のう 老 ろう 舊 きゅう 。
SGI的 てき 競爭 きょうそう 對 たい 手 しゅ (包括 ほうかつ Sun 、惠 めぐみ 普 ひろし 和 わ IBM )通過 つうか 擴展PHIGS標準 ひょうじゅん 也能將 しょう 3D硬 かた 件 けん 投入 とうにゅう 市場 いちば 。這反過 か 來 らい 導 しるべ 致SGI市場 いちば 份額的 てき 削 そぎ 弱 じゃく ,因 いん 為 ため 有 ゆう 越來 ごえく 越 えつ 多 た 的 てき 3D圖形 ずけい 硬 かた 件 けん 供應 きょうおう 商 しょう 進入 しんにゅう 市場 いちば 。爲 ため 攻 おさむ 佔市場 いちば ,SGI決定 けってい 把 わ IRIS GL API轉變 てんぺん 為 ため 一 いち 項 こう 開放 かいほう 標準 ひょうじゅん ,即 そく OpenGL。
然 しか 而,SGI擁 よう 有 ゆう 大量 たいりょう 的 てき 軟件客 きゃく 戶 ど ,對 たい 他 た 們來說 せつ 從 したがえ IRIS GL遷移 せんい 到 いた OpenGL將 はた 需要 じゅよう 巨額 きょがく 投資 とうし 。此外,IRIS GL的 てき 應用 おうよう 程 ほど 序 じょ 接 せっ 口 こう 擁 よう 有 ゆう 與 あずか 3D圖形 ずけい 不 ふ 相關 そうかん 的 てき 函數 かんすう 。例 れい 如,它包括 ほうかつ 窗 まど 口 こう 、鍵盤 けんばん 和 わ 鼠 ねずみ 標的 ひょうてき API,部分 ぶぶん 原因 げんいん 是 ぜ 由 よし 於它是 ぜ 在 ざい X Window 系統 けいとう 和 わ Sun公司 こうし 的 てき NeWS系統 けいとう 之 の 前 ぜん 開發 かいはつ 的 てき 。而且,IRIS GL庫 くら 由 よし 於授權 けん 和 わ 專 せん 利 り 問題 もんだい 并不適合 てきごう 開放 かいほう 。上述 じょうじゅつ 種種 しゅじゅ 因 いん 素 もと 要求 ようきゅう SGI繼續 けいぞく 支持 しじ 先 さき 進和 しんわ 專有 せんゆう 的 てき IRIS Inventor和 わ IRIS Performer應用 おうよう 程 ほど 序 じょ 接 せっ 口 こう 。
IRIS GL的 てき 限 きり 制 せい 之 の 一是只能訪問由底層硬件支持的功能。如果圖形 ずけい 硬 かた 件 けん 不 ふ 支持 しじ 一 いち 項 こう 功 こう 能 のう ,那 な 麼該應用 おうよう 程 ほど 序 じょ 將 はた 不能 ふのう 使用 しよう 它。OpenGL通過 つうか 為 ため 硬 かた 件 けん 不 ふ 具備 ぐび 的 てき 功 こう 能 のう 提供 ていきょう 軟件支持 しじ 克服 こくふく 此問題 もんだい ,這就允許 いんきょ 應用 おうよう 程 ほど 序 じょ 在 ざい 相對 そうたい 較弱的 てき 系統 けいとう 中 ちゅう 使用 しよう 先進 せんしん 的 てき 圖形 ずけい 技術 ぎじゅつ 。OpenGL標準 ひょうじゅん 化 か 訪問 ほうもん 硬 かた 件 けん 的 てき 方式 ほうしき :硬 かた 件 けん 接 せっ 口 こう 程 ほど 序 じょ 的 てき 開發 かいはつ (有 ゆう 時 じ 也稱為 ため 設備 せつび 驅動 くどう 程 ほど 序 じょ )交由硬 かた 件 けん 製造 せいぞう 商 しょう ,而窗口 こう 功 こう 能 のう 委託 いたく 給 きゅう 底 そこ 層 そう 作業 さぎょう 系統 けいとう 。讓 ゆずる 大量 たいりょう 不同 ふどう 種類 しゅるい 的 てき 圖形 ずけい 硬 かた 件 けん 講 こう 同 どう 一種 いっしゅ 語 ご 言 げん 影響 えいきょう 深遠 しんえん ,它為軟件開發 かいはつ 者 しゃ 進行 しんこう 3D軟件發展 はってん 提供 ていきょう 更 さら 高層 こうそう 次 じ 的 てき 平台 ひらだい 。
1992年 ねん ,SGI公司 こうし 領 りょう 導 しるべ OpenGL架 か 構審查委員 いいん 會 かい (OpenGL ARB)的 てき 創建 そうけん 。該委員 いいん 會 かい 由 よし 若干 じゃっかん 公司 こうし 組成 そせい ,負 ふ 責 せめ 未來 みらい OpenGL規範 きはん 的 てき 維護和 わ 擴充 かくじゅう 。
微 ほろ 軟在 ざい 1995年 ねん 發布 はっぷ Direct3D ,Direct 3D最終 さいしゅう 成 なり 為 ため OpenGL的 てき 主要 しゅよう 競爭 きょうそう 對 たい 手 しゅ 。1997年 ねん 12月17日 にち ,微 ほろ 軟和SGI發起 ほっき 華氏 かし 溫 ゆたか 標 しるべ 項目 こうもく ,旨 むね 在 ざい 統一 とういつ OpenGL和 わ Direct3D的 てき 接 せっ 口 こう 。1998年 ねん ,惠 めぐみ 普 ひろし 加入 かにゅう 。後來 こうらい ,由 ゆかり 於SGI的 てき 財政 ざいせい 限 げん 制 せい 、微 ほろ 軟的戰略 せんりゃく 以及缺乏 けつぼう 行 ぎょう 業 ぎょう 普遍 ふへん 支持 しじ ,項目 こうもく 1999年 ねん 遭棄。
2006年 ねん 7月 がつ ,OpenGL架 か 構評審 しん 委員 いいん 會 かい 投票 とうひょう 決定 けってい 將 はた OpenGL API標準 ひょうじゅん 的 てき 控 ひかえ 制 せい 權 けん 交給Khronos Group。
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版本 はんぽん 。2013年 ねん 發 はつ 佈4.3版 はん 。
主要 しゅよう 版本 はんぽん
发布日 び 期 き
重要 じゅうよう 变更
1.1
1997年 ねん 1月 がつ
1.2
1998年 ねん 3月 がつ 16日 にち
1.2.1
1998年 ねん 10月 がつ 14日 にち
1.3
2001年 ねん 8月 がつ 14日 にち
1.4
2002年 ねん 7月 がつ 24日 にち
1.5
2003年 ねん 7月 がつ 29日 にち
2.0
2004年 ねん 9月 がつ 7日 にち
2.1
2006年 ねん 7月 がつ 2日 にち
3.0
2008年 ねん 8月 がつ 11日 にち
3.1
2009年 ねん 3月 がつ 24日 にち
3.2
2009年 ねん 8月 がつ 3日 にち
3.3
2010年 ねん 3月 がつ 11日 にち
OpenGL 3.3与 あずか 4.0版 はん 一 いち 起 おこり 发布。 以体现硬件 けん 支持 しじ Direct3D 10的 てき 可能 かのう 性 せい 。
4.0
2010年 ねん 3月 がつ 11日 にち
OpenGL 4.0与 あずか 版本 はんぽん 3.3一 いち 起 おこり 发布。 它是为硬件 けん 设计的 てき ,以体现硬件 けん 支持 しじ Direct3D 11的 てき 可能 かのう 性 せい 。
与 あずか OpenGL 3.0一 いち 样,这个版本 はんぽん 的 てき OpenGL包含 ほうがん 大量 たいりょう 相当 そうとう 无关紧要的 てき 扩展,旨 むね 在 ざい 彻底揭示 けいじ Direct3D 11级硬件 けん 的 てき 能力 のうりょく 。
4.1
2010年 ねん 7月 がつ 26日 にち
4.2
2011年 ねん 8月 がつ 8日 にち
支持 しじ 的 てき 显卡:NVIDIA GeForce 400系列 けいれつ 以上 いじょう ,AMD Radeon HD7000系列 けいれつ 以上 いじょう ,Intel HD Graphics (第 だい 7代 だい Ivy Bridge系列 けいれつ 以上 いじょう )
AMD Radeon HD 6000 Series, AMD Radeon HD 7000 Series
支持 しじ Shaders原子 げんし 计数器 き 和 かず 加 か 载/存 そん 储/原子 げんし 读-修 おさむ 改 あらため -写 うつし 操作 そうさ 的 てき 单级纹理着色 ちゃくしょく 器 き 。
捕捉 ほそく GPU-tessellated几何变换反 はん 馈的结果绘制的 てき 多 た 个实例 れい ,使 つかい 复杂的 てき 对象进行有效 ゆうこう 的 てき 重 おも 新 しん 定位 ていい 和 わ 复制。
支持 しじ 修 おさむ 改 あらため 任意 にんい 子 こ 集 しゅう 的 てき 压缩纹理,而无需重新 しん 下 した 载整个GPU的 てき 纹理,显著的 てき 性能 せいのう 改 あらため 进。
支持 しじ 包装 ほうそう 成 なり 一 いち 个单一 いち 的 てき 32位 い 值显著 ちょ 降 くだ 低 てい 内 うち 存 そん 存 そん 储和带宽的 てき 高 だか 效 こう 着色 ちゃくしょく 处理多 た 个8位 い 和 わ 16位 い 值。
4.3
2012年 ねん 8月 がつ 6日 にち
支持 しじ 的 てき 显卡:NVIDIA GeForce 400系列 けいれつ 以上 いじょう ,AMD Radeon HD5000系列 けいれつ 以上 いじょう ,Intel HD Graphics (第 だい 7.5代 だい Haswell系列 けいれつ 以上 いじょう )
圍 かこえ 內充分 ぶん 利用 りよう GPU的 てき 並行 へいこう 計算 けいさん 着色 ちゃくしょく 器 き 的 てき 圖形 ずけい 管 かん 道 どう
暗 くら 器 き 的 てき 存 そん 儲 もうか 緩衝 かんしょう 區 く 對象 たいしょう
紋 もん 理 り 參 さん 數 すう 查詢
作為 さくい 標準 ひょうじゅん 功 こう 能 のう 的 てき 高 だか 品質 ひんしつ 的 てき 紋 もん 理 り 壓縮 あっしゅく ETC2/EAC
完全 かんぜん 兼 けん 容 よう 的 てき OpenGL ES3.0的 てき API
在 ざい 應用 おうよう 程 ほど 序 じょ 開發 かいはつ 過程 かてい 中 ちゅう 調 ちょう 試 ためし 能力 のうりょく 接收 せっしゅう 調 ちょう 試 ためし 消息 しょうそく
沒 ぼつ 有數 ゆうすう 據 よりどころ 複製 ふくせい 以不同 ふどう 的 てき 方式 ほうしき 解釋 かいしゃく 紋 もん 理 り 的 てき 紋 もん 理 り 意見 いけん
增加 ぞうか 了 りょう 內存的 てき 安全 あんぜん 性 せい
一個多應用的健壯性擴展
4.4
2013年 ねん 7月 がつ 22日 にち [ 4]
支持 しじ 的 てき 顯示 けんじ 卡:NVIDIA GeForce 400系列 けいれつ 以上 いじょう ,AMD Radeon HD5000系列 けいれつ 以上 いじょう ,Intel HD Graphics (第 だい 7.5代 だい Haswell系列 けいれつ 以上 いじょう )
緩衝 かんしょう 區 く 位置 いち 控 ひかえ 制 せい
高 こう 效 こう 異 い 步 ふ 查詢
着色 ちゃくしょく 器 き 可變 かへん 佈局
高 こう 效 こう 多 た 對象 たいしょう 綁定
精 せい 簡化Direct3D應用 おうよう 的 てき 移植 いしょく
非 ひ 綁定的 てき 紋 もん 理 り 擴展
稀 まれ 疏紋理 り 擴展
4.5
2014年 ねん 8月 がつ 11日 にち [ 5]
支持 しじ 的 てき 显卡:NVIDIA GeForce 400系列 けいれつ 以上 いじょう ,AMD Radeon HD7000系列 けいれつ 以上 いじょう ,Intel HD Graphics (第 だい 8代 だい Broadwell系列 けいれつ 以上 いじょう ),Tegra K1 , Tegra X1
直接 ちょくせつ 状 じょう 态访问(DSA) - 对象访问器 き 使 し 查询和 かず 修 おさむ 改 あらため 状 じょう 态不会 かい 将 はた 对象绑定到 いた 上下 じょうげ 文中 ぶんちゅう ,从而提 ひさげ 高 だか 应用程 ほど 序 じょ 和 わ 中 ちゅう 间件的 てき 效率 こうりつ 和 わ 灵活性 せい
刷新 さっしん 控 ひかえ 制 せい - 应用程 ほど 序 じょ 可 か 以在上下 じょうげ 文 ぶん 切 きり 换之前 ぜん 控 ひかえ 制 せい 挂起命令 めいれい 的 てき 刷新 さっしん ,实现高性能 こうせいのう 多 た 线程应用程 ほど 序 じょ
鲁棒性 せい - 为WebGL浏览器 き 等 とう 应用程 ほど 序 じょ 提供 ていきょう 安全 あんぜん 平台 ひらだい ,包括 ほうかつ 阻止 そし GPU复位影 かげ 响任何 なん 其他正 ただし 在 ざい 运行的 てき 应用程 ほど 序 じょ
OpenGL ES 3.1 API和 わ 着色 ちゃくしょく 器 き 兼 けん 容 よう 性 せい - 可 か 轻松开发和 わ 执行桌面系 けい 统上最新 さいしん 的 てき OpenGL ES应用程 ほど 序 じょ
4.6
2017年 ねん 7月 がつ 31日 にち
支持 しじ 的 てき 显卡:NVIDIA GeForce 400系列 けいれつ 以上 いじょう (理 り 论上可 か 支持 しじ )
SPIR-V着色 ちゃくしょく 器 き
各 かく 向 こう 异性过滤