• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于Android平臺的紋理映射分析與實現(xiàn)

      2011-05-24 10:32:00胡顧飛湯文兵朱成亮
      中國新技術(shù)新產(chǎn)品 2011年12期
      關(guān)鍵詞:鏡面反射四邊形紋理

      胡顧飛 湯文兵 朱成亮

      (安徽理工大學(xué)計算機科學(xué)與工程學(xué)院,安徽 淮南 232001)

      引言

      紋理映射的本質(zhì)是對三維物體進行二維參數(shù)化,即先求得三維物體表而上任一點的二維(u,v)參數(shù)值,進而得到該點的紋理值,最終生成三維圖形表而上的紋理圖案。在光滑曲而上添加紋理圖案的核心問題是映射,因此紋理問題可以簡化為從一個坐標(biāo)系到另一個坐標(biāo)系的變換??偟膩碚f,紋理映射技術(shù)是一種使建立的3D模型更接近現(xiàn)實物體的技術(shù)。

      1 紋理映射基本原理

      紋理生成過程實質(zhì)上是將所定義的紋理映射為反映某種三維景物表面的屬性(與光照明模型及表面幾何有關(guān)的各種參數(shù),如表面法向、漫/鏡面反射率等),并參與后續(xù)的光照明計算。

      二維紋理映射就是從二維紋理平面到三維物體表面的映射。一般二維紋理平面是有范圍限制的,在這個平面區(qū)域內(nèi),每點都可用數(shù)學(xué)函數(shù)表達,從而可以離散的分離出每點的灰度值和顏色值,這個平面區(qū)域稱為紋理空間,一般將紋理空間的平面區(qū)域定義在[0,1]*[0,1]。紋理映射是確定物體表面一點P在紋理空間中的對應(yīng)點(u,v),從而紋理空間中的點(u,v)處的紋理值就是物體表面點P的紋理屬性。建立紋理空間與景物空間及景物空間與屏幕空間之間的映射關(guān)系:

      圖1 紋理映射

      景物表面的紋理屬性主要有以下幾種:表面顏色,即表面的漫反射率;鏡面反射分量,即表面的鏡面反射率;透明度;表面法向,即撓動表面法向來產(chǎn)生表面的凹凸紋理;環(huán)境的漫反射和鏡面反射效果;光源強度和色彩分布。

      根據(jù)紋理定義域的不同,可分為而為二維和三維紋理,由于本文是基于Android平臺的,考慮到效率和資源問題,主要給出了二維紋理的模型,對三維紋理映射技術(shù)就不再討論了。

      2 紋理映射的實現(xiàn)

      本節(jié)將通過在一個立方體各個面貼上圖片來介紹Android平臺下基于OpenGL ES的紋理映射有關(guān)的內(nèi)容:定義紋理、控制濾波、說明映射方式、繪制場景,給出頂點的紋理坐標(biāo)和幾何坐標(biāo)。

      首先,我們通過Android平臺的OpenGL ES庫來創(chuàng)建一個紋理,并使用圖片來生成一個紋理,過程如下:

      通過以上過程,我們便成功地創(chuàng)建了一個紋理。

      為了能有更好的效果,我們還需要設(shè)置在OpenGL現(xiàn)實圖像時,它放大得比原始紋理大(GL_TEXTURE_MAG_FILTER)或縮小得比原始紋理?。℅L_TEXTURE_MIN_FILTER)時OpenGL所采用的濾波方式。以下過程是我們設(shè)置的線性濾波://設(shè)置線性濾波

      與之對應(yīng)的,關(guān)閉紋理過程如下:

      為了將紋理正確的映射到四邊形上,必須將紋理的右上角映射到四邊形的右上角,紋理的左上角映射到四邊形的左上角,紋理的右下角和左下角亦是如此。因為,如果映射錯誤的話,圖像顯示時可能上下顛倒,側(cè)向一邊或者什么都沒有。下面是我們對立方體的每一個面所設(shè)置的紋理映射數(shù)據(jù):

      設(shè)置好這些映射數(shù)據(jù)之后,可以通過glTex-CoordPointer將紋理綁定到要繪制的物體上。過程如下:

      最后,將其繪制到屏幕上即可。效果圖2如圖所示:

      圖2 紋理映射效果

      3 結(jié)束語

      本文通過對紋理映射的基本原理進行了分析,并在Android平臺中利用Opengl ES圖形庫對紋理映射技術(shù)進行了實現(xiàn)。

      由于本文利用的是Android應(yīng)用層封裝后的Opengl ES圖形庫,在效率上欠佳,以后的主要工作是通過Android NDK對Opengl ES進行原生態(tài)開發(fā),進而提高實現(xiàn)效率。

      [1]李增忠.紋理映射技術(shù)的研究[D].中國優(yōu)秀碩士學(xué)位論文全文數(shù)據(jù)庫,2005.

      [2](美)Shane Conder.Android 移動應(yīng)用開發(fā)從入門到精通[M].北京:人民郵電出版社,2010.

      [3]楊豐盛.Android應(yīng)用開發(fā)揭秘[M].北京:機械工業(yè)出版社,2010.

      猜你喜歡
      鏡面反射四邊形紋理
      光滑物體表面反射光偏振特征分析及反射光分離技術(shù)*
      基于BM3D的復(fù)雜紋理區(qū)域圖像去噪
      軟件(2020年3期)2020-04-20 01:45:18
      圓錐曲線內(nèi)接四邊形的一個性質(zhì)
      基于最短路徑的GNSS-R鏡面反射點算法
      使用紋理疊加添加藝術(shù)畫特效
      四邊形逆襲記
      4.4 多邊形和特殊四邊形
      TEXTURE ON TEXTURE質(zhì)地上的紋理
      Coco薇(2017年8期)2017-08-03 15:23:38
      消除凹凸紋理有妙招!
      Coco薇(2015年5期)2016-03-29 23:22:15
      樹葉圖像鏡面反射區(qū)自動定位和消除方法
      格尔木市| 清水河县| 灵宝市| 会同县| 镇巴县| 新建县| 谢通门县| 宜城市| 隆化县| 富民县| 泸州市| 湖州市| 深州市| 叙永县| 新巴尔虎右旗| 萨迦县| 进贤县| 科技| 涟水县| 山西省| 嘉兴市| 普兰县| 阳泉市| 榕江县| 乌鲁木齐县| 南澳县| 格尔木市| 公主岭市| 乐昌市| 彭阳县| 和静县| 青州市| 龙川县| 衡东县| 康马县| 易门县| 松溪县| 富源县| 昔阳县| 旌德县| 苏尼特右旗|