OpenGL學習記錄

2021-08-29 13:44:49 字數 1038 閱讀 2663

關於opengl

opengl(全寫open graphics library)是指定義了乙個跨程式語言、跨平台的程式設計介面規格的專業的圖形程式介面。它用於三維影象(二維的亦可),是乙個功能強大,呼叫方便的底層圖形庫。

opengl具有七大功能:

建模:opengl圖形庫除了提供基本的點、線、多邊形的繪製函式外,還提供了複雜的三維物體(球、錐、多面體、茶壺等)以及複雜曲線和曲面繪製函式。

變換:opengl圖形庫的變換包括基本變換和投影變換。基本變換有平移、旋轉、縮放、映象四種變換,投影變換有平行投影(又稱正射投影)和透視投影兩種變換。其變換方法有利於減少演算法的執行時間,提高三維圖形的顯示速度。

顏色模式設定:opengl顏色模式有兩種,即rgba模式和顏色索引(color index)。

光照和材質設定:opengl光有自發光(emitted light)、環境光(ambient light)、漫反射光(diffuse light)和高光(specular light)。材質是用光反射率來表示。場景(scene)中物體最終反映到人眼的顏色是光的紅綠藍分量與材質紅綠藍分量的反射率相乘後形成的顏色。

位圖顯示和圖象增強圖象功能:除了基本的拷貝和畫素讀寫外,還提供融合(blending)、抗鋸齒(反走樣)(antialiasing)和霧(fog)的特殊圖象效果處理。以上三條可使被**物更具真實感,增強圖形顯示的效果。

雙快取動畫(double buffering):雙快取即前台快取和後台快取,簡言之,後台快取計算場景、生成畫面,前台快取顯示後台快取已畫好的畫面。

此外,利用opengl還能實現深度暗示(depth cue)、運動模糊(motion blur)等特殊效果。從而實現了消隱演算法。opengl裝置運用,目前瑞芯微2918晶元和英偉達晶元tegra2 就是採用opengl 2.0技術進行圖形處理,而基於瑞芯微2918晶元方案代表是台電t760和微蜂x7平板電腦所採用到。

OpenGL特效記錄

邊框濾鏡 precision mediump float varying highp vec2 texturecoordinate uniform sampler2d inputtexture uniform sampler2d bitmaptexture void main 效果 原理 以下演算法...

Opengl 入門學習分享和記錄 02

寫在前面的廢話 今天俺又來了哈哈,真的好棒棒!今天的內容 之前我們大概描述了,我們自己定義的頂點座標是如何被載入到gpu之中,並且介紹了頂點緩衝物件vbo用於管理這一塊記憶體。今天開始詳細分析它的具體作用和用法。首先opengl要求我們必須擁有乙個頂點著色器和乙個片段著色器,這樣才可以進行渲染。當然...

OpenGL踩坑記錄

在處理3d模型的時候,我們經常的操作是首先建立乙個fbo,fbo關聯texture,rbo。我們第一次渲染的時候是直接渲染到fbo關聯的紋理上,然後經過其他紋理濾鏡的處理後,再把它顯示出來。這裡有幾個需要注意的點。3d 紋理離屏渲染渲染一定要關聯乙個rbo。離屏渲染前開啟深度測試,離屏渲染之後一定要...