91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

OpenGL的常用術(shù)語解析

電子設(shè)計 ? 來源:電子設(shè)計 ? 作者:電子設(shè)計 ? 2021-01-20 23:52 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1. 什么是OpenGL

OpenGL是一個跨語言、跨平臺的編程圖形程序接口,它將計算機的資源抽象為一個個的OpenGL的對象,對這些資源的操作抽象為一個個OpenGL的指令。它的移植性高,并且速度非???。

2. OpenGL狀態(tài)機

狀態(tài)機是一種抽象的模型,表示一組狀態(tài)變量的集合。它描述了一個對象在其生命周期內(nèi)所經(jīng)歷的各種狀態(tài),狀態(tài)之間的轉(zhuǎn)變,發(fā)生轉(zhuǎn)變的動因、條件以及轉(zhuǎn)變中所執(zhí)行的活動。

比如:顏色、紋理坐標(biāo)、源因子和目標(biāo)因子、光源的各種參數(shù),這些都是狀態(tài),另外還有:是否開啟了光照,是否開啟了紋理,是否開啟了混合,是否開啟了深度測試等等。OpenGL會保持這些狀態(tài),除非我們調(diào)用函數(shù)來改變這些狀態(tài)。

3. OpenGL上下文

OpenGL上下文是一個非常抽象的概念,可以理解為一個包含了所有OpenGL狀態(tài)的對象。在我們調(diào)用任何OpenGL指令前,都需要先創(chuàng)建一個上下文,這個上下文記錄了OpenGL渲染所需要的所有信息以及狀態(tài),所以上下文也是一個龐大的狀態(tài)機。

4. 渲染

所謂的渲染,就是將數(shù)學(xué)和圖形數(shù)據(jù)轉(zhuǎn)換成3D空間圖像的操作叫做渲染(Rendering)。

5. 管線

在OpenGL中,3D坐標(biāo)轉(zhuǎn)為2D坐標(biāo)的處理過程是由OpenGL的圖形渲染管線(Graphics Pipeline,大多譯為管線,實際上指的是一堆原始圖形數(shù)據(jù)途經(jīng)一個輸送管道,期間經(jīng)過各種變化處理最終出現(xiàn)在屏幕的過程)管理的。

圖形渲染管線可以被劃分為兩個主要部分:
(1)第一部分把你的3D坐標(biāo)轉(zhuǎn)換為2D坐標(biāo)。
(2)第二部分是把2D坐標(biāo)轉(zhuǎn)變?yōu)閷嶋H的有顏色的像素。

在OpenGL 下渲染圖形,就會經(jīng)歷一個一個節(jié)點,而這樣的操作可以理解為管線。大家可以想象成流水線,每個任務(wù)類似流水線般執(zhí)行。任務(wù)之間有先后順序。 管線是一個抽象的概念,之所以稱之為管線是因為顯卡在處理數(shù)據(jù)的時候是按照一個固定的順序來的,而且嚴(yán)格按照這個順序,這個順序就是渲染流程,而管線指的是這個過程。

6. 固定管線/存儲著色器

OpenGL自身為開發(fā)者封裝了很多著色器(shader)程序,開發(fā)者只需要調(diào)用API即可,不需要關(guān)心內(nèi)部的實現(xiàn)過程,而這些封裝好的程序(函數(shù)或方法)即為固定管線。

在固定管線下,使用固定存儲著色器,固定存儲著?器由GLTools的C++類GLShaderManager管理,它們能夠滿?進?基本渲染的基本要求。

但是由于OpenGL 的使用場景非常豐富,固定管線或存儲著色器無法完成每一個業(yè)務(wù),這時將相關(guān)部分開放成可編程。

7. 著色器程序(Shader)

顧名思義,著色器程序就是一個程序代碼,在OpenGL調(diào)用繪制函數(shù)之前,需要制定一個著色器,在固定管線下,這個著色器已經(jīng)是封裝好的了,在可編程的情況下,則需要程序員自己編寫著色器程序。

常見的著色器有:

頂點著色器 (VertexShader)

片元著色器(FragmentShader)/像素著色器 (PixelShader)

幾何著色器

曲面細(xì)分著色器

在 OpenGL ES 3.0后,可編程依然只支持了頂點著色器和片段著色器這兩個最基礎(chǔ)的著色器。

7.1 頂點著色器(VertexShader)

頂點著色器是一組指令代碼,這組指令代碼在頂點被渲染時執(zhí)行,一般用來處理圖形每個頂點變換(旋轉(zhuǎn)/平移/投影等)。

頂點著色器是OpenGL中用于計算頂點屬性的程序。頂點著色器是逐頂點運算的程序,也就是說每個頂點數(shù)據(jù)都會執(zhí)行一次頂點著色器,當(dāng)然這是并行的,并且頂點著色器運算過程中無法訪問其他頂點的數(shù)據(jù)。

一般來說典型的需要計算的頂點屬性主要包括頂點坐標(biāo)變換、逐頂點光照運算等等。頂點坐標(biāo)由自身坐標(biāo)系轉(zhuǎn)換到歸一化坐標(biāo)系的運算,就是在這里發(fā)生的。

7.2 片元著色器(FragmentShader)

一般用來處理圖形中每個像素點顏色的計算和填充。

片段著色器是OpenGL中用于計算片段(像素)顏色的程序。片段著色器是逐像素運算的程序,也就是說每個像素都會執(zhí)行一次片段著色器,這個過程也是并行的。

7.3 著色器渲染過程

pIYBAGAIUG-AVD8xAALQLlPM7N4820.png

8. 光柵化(Rasterrization)

又名柵格化或者像素化,其實就是把矢量圖轉(zhuǎn)化成像素點的過程。

我們都知道三維物體是由點線面構(gòu)成的,將這些點線面轉(zhuǎn)化成屏幕上的像素點,這個過程就是光柵化。

該過程包括了兩部分工作:

決定窗口坐標(biāo)中哪些整型柵格區(qū)域被基本圖元占用;

分配一個顏色值和一個深度值到各個區(qū)域。

光柵化過程產(chǎn)生的是片元。

9. 紋理(texture)

在OpenGL中,我們所說的紋理可以理解成是一張圖片,在渲染圖形的時候,需要將圖片貼在其表面,使其看起來更逼真。

10. 混合(Blending)

混合就是將源色和目標(biāo)顏色通過某種方式混合生成特效的技術(shù),通俗一點就是將兩種顏色通過某種算法生成特殊的效果?;旌贤ǔS脕砝L制透明或者半透明的物體。

11. 變換矩陣(Transformation)

如果圖形想發(fā)生平移、縮放、旋轉(zhuǎn)變換,就需要使用變換矩陣。

12. 投影矩陣(Projection)

用于將3D坐標(biāo)轉(zhuǎn)換為二維屏幕坐標(biāo),實際線條也將在二維坐標(biāo)下進行繪制。

13. 2D笛卡爾坐標(biāo)系

pIYBAGAIUK6AYY1YAAEtUI4xnME254.png

14. 3D笛卡爾坐標(biāo)系

o4YBAGAIUO2AbrOGAAG1DuEOHuY481.png

15. 視口

o4YBAGAIUTaAQhXhAAJreUseY6E398.png

pIYBAGAIUXeAReXFAAJA1G4q-wU126.png

16. 投影方式

在OpenGL中,主要有兩種投影方式,第一種是正投影或叫平行投影,第二種是透視投影。

在使用正投影的時候,需要準(zhǔn)備一個正方形或者長方形的視景體(屏幕)。視景體之外的任何物體都不會被繪制,而是所有實際物體的大小和視景體內(nèi)的大小都相同,無論遠(yuǎn)近。

在使用透視投影的時候,遠(yuǎn)處的物體看上去會比近處的物體小一些,符合近大遠(yuǎn)小的原理。越靠近視景體,投影越接近物體尺寸,反之,越遠(yuǎn),則越小于物體本身的尺寸。

o4YBAGAIUdeAcXDUAApBpBnnchQ221.png

來源:電子創(chuàng)新網(wǎng)

審核編輯 黃昊宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • OpenGL
    +關(guān)注

    關(guān)注

    1

    文章

    88

    瀏覽量

    30615
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    硬件工程師必備!晶振術(shù)語中英文對照速查表,收藏這一篇就夠了

    在閱讀芯片數(shù)據(jù)手冊、國際技術(shù)文檔或與海外供應(yīng)商溝通時,你是否曾被一堆晶振的專業(yè)術(shù)語縮寫搞得暈頭轉(zhuǎn)向? OCXO、TCXO、Aging、Jitter...這些詞到底是什么意思?今天,我們?yōu)槟阏砹艘环莩木w振蕩器常用術(shù)語中英文
    的頭像 發(fā)表于 02-02 15:22 ?578次閱讀
    硬件工程師必備!晶振<b class='flag-5'>術(shù)語</b>中英文對照速查表,收藏這一篇就夠了

    SMT貼片加工必備術(shù)語手冊:49個常用名詞及其詳細(xì)定義

    (Laser Cutting): 使用激光技術(shù)進行切割,通常用于裁剪PCB板形狀或切割金屬薄片。 “SMT貼片加工里的這些術(shù)語,每個都是關(guān)鍵‘技能點’。工程師熟悉它們,就像掌握了‘防錯料’的‘火眼金睛
    發(fā)表于 01-27 11:14

    RK3576開發(fā)板OpenGL性能大起底,這數(shù)據(jù)我真的服了

    瑞芯微RK3576芯片作為一款中高端的八核Arm架構(gòu)嵌入式處理器,集成Mali-G52MC3的GPU。本次OpenGL性能測試,基于觸覺智能RK3576開發(fā)板PurplePiOH2演示。為了回饋大家
    的頭像 發(fā)表于 01-16 17:20 ?1571次閱讀
    RK3576開發(fā)板<b class='flag-5'>OpenGL</b>性能大起底,這數(shù)據(jù)我真的服了

    機器視覺系統(tǒng)中光源的相關(guān)行業(yè)術(shù)語解讀

    產(chǎn)品資料查詢平臺下面我們來看看工業(yè)光源在業(yè)內(nèi)的常用術(shù)語解析。1.明場照明brightfieldillumination光線從物體表面的主要部分反射或透射到成像系統(tǒng)中
    的頭像 發(fā)表于 12-16 17:30 ?559次閱讀
    機器視覺系統(tǒng)中光源的相關(guān)行業(yè)<b class='flag-5'>術(shù)語</b>解讀

    Labview 解析dxf文件并顯示

    上一期開了一個帖子講Labview導(dǎo)入dxf文件,解析和顯示dxf文件,今天繼續(xù)繼續(xù)分享常用圖元的解析與顯示方法。 LINE :用文本方式打開dxf 文件,搜索出直線部分,并摘取,可以得到
    發(fā)表于 12-01 11:28

    Labview 解析dxf文件并顯示<一>

    /WSfacf1429558a55de185c428100849a0ab7-5f35.htm 下圖是我做的一個文件解析,涵蓋了常用的一些圖元對象,有單線段、多段線、表格、文字、標(biāo)注、云線、弧、標(biāo)注、樣條曲線
    發(fā)表于 11-14 22:45

    通俗易懂的晶振專業(yè)術(shù)語

    想要了解一個行業(yè),就要對其產(chǎn)品的術(shù)語要有所了解,各行各業(yè)都要自己專業(yè)術(shù)語,石英晶振也不例外;了解晶振術(shù)語對晶振采購和選型有很大幫助;下面小揚給大家簡單的解釋晶振術(shù)語都代表什么意思:
    的頭像 發(fā)表于 09-18 11:31 ?1955次閱讀
    通俗易懂的晶振專業(yè)<b class='flag-5'>術(shù)語</b>

    mqtt dns解析失敗是為什么?

    解析域名的ip地址就能正常連上,而直接解析域名就不行,為什么呢
    發(fā)表于 09-16 06:38

    淺談數(shù)字芯片的常用術(shù)語

    解釋: 這是數(shù)字芯片設(shè)計永恒的“鐵三角”。Power指芯片功耗,越低越好;Performance通常指芯片能跑多快(頻率),越高越好;Area指芯片的面積,越小成本越低。
    的頭像 發(fā)表于 08-19 16:36 ?1613次閱讀

    解析基帶和射頻的工作原理

    在現(xiàn)代通信技術(shù)中,基帶和射頻是兩個核心概念,它們共同構(gòu)成了無線通信的基礎(chǔ)。盡管這兩個術(shù)語頻繁出現(xiàn)在技術(shù)文檔和行業(yè)討論中,但其具體功能和技術(shù)細(xì)節(jié)卻常常被誤解。本文將以移動通信為例,深入解析基帶和射頻的工作原理及其在通信鏈路中的作用。
    的頭像 發(fā)表于 08-06 09:28 ?2582次閱讀
    <b class='flag-5'>解析</b>基帶和射頻的工作原理

    IEC 62353中常用術(shù)語和定義

    本文詳細(xì)解讀IEC 62353標(biāo)準(zhǔn)中的關(guān)鍵術(shù)語,包括被測設(shè)備(DUT/EUT)、應(yīng)用部分(B/BF/CF型)、泄漏電流、微電擊與宏電擊等定義,幫助理解醫(yī)療電氣設(shè)備安全測試要求。
    的頭像 發(fā)表于 07-29 17:27 ?727次閱讀

    技術(shù)干貨 | 從偏移誤差到電源抑制比,DAC核心術(shù)語解析

    偏移誤差、增益誤差、INL/DNL、轉(zhuǎn)換時間……這些關(guān)鍵指標(biāo)如何定義?如何影響DAC性能?本文DAC核心術(shù)語解析帶您一文掌握關(guān)鍵參數(shù)!
    的頭像 發(fā)表于 06-19 10:38 ?618次閱讀
    技術(shù)干貨 | 從偏移誤差到電源抑制比,DAC核心<b class='flag-5'>術(shù)語</b>全<b class='flag-5'>解析</b>

    從偏移誤差到電源抑制比,DAC核心術(shù)語解析

    本文介紹了DAC術(shù)語,包括偏移誤差、滿刻度誤差、增益誤差、積分非線性誤差、差分非線性誤差、未調(diào)整總誤差等,并對轉(zhuǎn)換延遲、轉(zhuǎn)換時間、差分非線性誤差、端點和最佳擬合線增益誤差、單調(diào)性、乘法型DAC、電源抑制比等進行了詳細(xì)說明。
    的頭像 發(fā)表于 06-17 11:31 ?715次閱讀
    從偏移誤差到電源抑制比,DAC核心<b class='flag-5'>術(shù)語</b>全<b class='flag-5'>解析</b>

    NS-ZJB型變壓器中性點間隙接地保護成套裝置的常用電子元器件及功能解析

    NS-ZJB型變壓器中性點間隙接地保護成套裝置的常用電子元器件及功能解析
    的頭像 發(fā)表于 06-16 15:10 ?1197次閱讀

    技術(shù)干貨 | 功能安全術(shù)語的暗黑森林

    在汽車產(chǎn)業(yè)高度發(fā)展的當(dāng)下,功能安全已從抽象概念轉(zhuǎn)化為系統(tǒng)性防控要求。ISO26262定義的核心術(shù)語正是突破概念模糊性的首道門檻——既是工程師協(xié)同的技術(shù)語言,也是實現(xiàn)安全出行的底層方法論。今天我們就來
    的頭像 發(fā)表于 06-10 16:38 ?2090次閱讀
    技術(shù)干貨 | 功能安全<b class='flag-5'>術(shù)語</b>的暗黑森林