欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于分塊渲染的gpu中鋸齒線段的生成的制作方法

文檔序號(hào):6356288閱讀:406來源:國(guó)知局
專利名稱:基于分塊渲染的gpu中鋸齒線段的生成的制作方法
技術(shù)領(lǐng)域
本發(fā)明主要涉及到基于分塊渲染的GPU設(shè)計(jì)領(lǐng)域,特指基于分塊渲染的GPU中鋸 齒線段的生成。
背景技術(shù)
分塊渲染技術(shù)是為了緩解傳統(tǒng)GPU中頻繁訪存導(dǎo)致效率低下而提出的,傳統(tǒng)GPU 采用固定流水線技術(shù),渲染一個(gè)圖元要經(jīng)過Z測(cè)試、紋理、Alpha測(cè)試、融合等多個(gè)讀寫存儲(chǔ) 器的過程,一個(gè)像素可能經(jīng)過多次訪存之后并不需要真正寫入幀存,由此帶來的性能損失 是很大的,為了緩解這一問題,分塊渲染技術(shù)就被提出來,這種技術(shù)是將繪圖區(qū)劃分為若干 個(gè)大小相等的塊,將圖元按塊劃分完成之后,在繪制時(shí)按照塊的順序繪制,這就保證了繪制 當(dāng)前塊的時(shí)候,只需要緩存當(dāng)前塊的信息即可,等當(dāng)前塊全部繪制完成之后再將當(dāng)前塊寫 回幀存,大大減少了訪存次數(shù)。三角形分塊渲染技術(shù)已經(jīng)比較成熟,但在GPU應(yīng)用中,有時(shí)需要繪制大量的線段 (如地圖繪制),如果對(duì)三角形使用了分塊渲染而線段不采用,那么由于線段的局部性比較 差,可能會(huì)導(dǎo)致運(yùn)行效率更低,因此需要對(duì)線段也采用分塊渲染的技術(shù)。

發(fā)明內(nèi)容
本發(fā)明要解決的問題就在于針對(duì)現(xiàn)有技術(shù)存在的技術(shù)難點(diǎn),本發(fā)明提供了一種 基于分塊渲染的GPU中鋸齒線段的生成技術(shù),該實(shí)現(xiàn)技術(shù)邏輯簡(jiǎn)單、渲染速度快。本發(fā)明的優(yōu)點(diǎn)就在于1、邏輯簡(jiǎn)單本發(fā)明提出的鋸齒線段生成技術(shù)算法比較簡(jiǎn) 單,有利于硬件實(shí)現(xiàn);2、渲染速度快將線段分塊之后,在渲染某一塊時(shí),不論三角形還是 線段都只會(huì)在本塊內(nèi)渲染,片上緩存也只需要存儲(chǔ)當(dāng)前塊的信息即可,當(dāng)前塊渲染完畢再 將當(dāng)前緩沖區(qū)的內(nèi)容寫入幀存。


圖1是本發(fā)明實(shí)現(xiàn)的基于分塊渲染的GPU中鋸齒線段生成結(jié)構(gòu)。
具體實(shí)施例方式以下將結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明做進(jìn)一步詳細(xì)說明。如圖1所示,為本發(fā)明實(shí)現(xiàn)的基于分塊渲染的GPU中鋸齒線段生成結(jié)構(gòu)。將線 段分塊并得到線段所在的確切塊號(hào)之后,根據(jù)線段所在確切塊號(hào)和繪圖區(qū)域的大小計(jì)算該 塊的有效覆蓋范圍;根據(jù)線段生成的方向計(jì)算線段在塊內(nèi)生成時(shí)的坐標(biāo)范圍,以沿X方向 生成線段為例,需要計(jì)算左右范圍,計(jì)算線段與塊的左邊界和右邊界的y交點(diǎn),若線段起始 點(diǎn)χ坐標(biāo)大于當(dāng)前塊的左邊界χ坐標(biāo),取線段的起始點(diǎn),否則取計(jì)算得到的塊的左邊界,若 線段終點(diǎn)的χ坐標(biāo)大于當(dāng)前塊的右邊界χ坐標(biāo),取計(jì)算得到的塊的右邊界,否則取線段的終 點(diǎn)坐標(biāo),這樣就得到當(dāng)前塊內(nèi)需從存儲(chǔ)器讀出,按照鋸齒線段的生成算法生成寬度為1的線段,然后將線段按照實(shí)際寬度進(jìn)行擴(kuò)展,得到想要繪制的線段的寬度;當(dāng)線段坐標(biāo)生成之 后,由于前面的計(jì)算只是考慮了線段左右(或上下)邊界,所以生成的線段坐標(biāo)會(huì)有一些像 素并不在當(dāng)前繪制的塊中,因此需要對(duì)得到的像素進(jìn)行裁剪,得到繪制的有效像素。要繪制 的線段坐標(biāo);根據(jù)分塊渲染算法的思想需要將待繪制圖元全部收集完成后再進(jìn)行繪制,所 以需要將當(dāng)前計(jì)算得到的線段的邊界寫入存儲(chǔ)器;將線段數(shù)據(jù)。
權(quán)利要求
1.基于分塊渲染算法實(shí)現(xiàn)的GPU中鋸齒線段的生成,其輸入為線段兩個(gè)端點(diǎn)的單精度浮 點(diǎn)格式的坐標(biāo)
2.根據(jù)線段所在確切塊號(hào)計(jì)算該塊的有效覆蓋范圍。
3.設(shè)X和Y方向的塊號(hào)分別為Tx和Ty,繪圖區(qū)范圍為ScreenX和kreenY,那么該塊 覆蓋的有效范圍可以如下得到左、下范圍的計(jì)算。
4.由于所得到的塊號(hào)均為正數(shù),所以該塊的左邊界為Scalexmin={Tx,6’ h0},下邊界為 Scaleymin= {Ty, 6,h0};右、上范圍的計(jì)算。
5.if ({Tx, 6' h3f} >ScreenX) Scaleanax= { Tx, 6' h3f }else Scalexmax= ScreenXif ({Ty, 6' h3f} >ScreenY) Scaleymax= { Ty, 6' h3f }else Scaleymax= ScreenY根據(jù)線段生成的方向計(jì)算線段在塊內(nèi)生成時(shí)的坐標(biāo)范圍。
6.以沿X方向生成線段為例,需要計(jì)算左右范圍根據(jù)公式
7.根據(jù)以下條件取確切交點(diǎn)。
8.若線段起始點(diǎn)χ坐標(biāo)大于當(dāng)前塊的左邊界χ坐標(biāo),取線段的起始點(diǎn),否則取計(jì)算得 到的塊的左邊界;若線段終點(diǎn)的χ坐標(biāo)大于當(dāng)前塊的右邊界χ坐標(biāo),取計(jì)算得到的塊的右邊 界,否則取線段的終點(diǎn)坐標(biāo)。
9.這樣就得到當(dāng)前塊內(nèi)需要繪制的線段坐標(biāo)
10.若線段數(shù)量非常大,根據(jù)分塊渲染算法的思想需要將待繪制圖元全部收集完成后 再進(jìn)行繪制,所以需要將當(dāng)前計(jì)算得到的線段的邊界寫入存儲(chǔ)器。
11.當(dāng)開始繪制以后,將線段數(shù)據(jù)從存儲(chǔ)器讀出。
12.按照鋸齒線段的生成算法生成寬度為1的線段,然后將線段按照實(shí)際寬度進(jìn)行擴(kuò) 展,得到想要繪制的線段的寬度。
13.當(dāng)線段坐標(biāo)生成之后,由于前面的計(jì)算只是考慮了線段左右(或上下)邊界,所以生 成的線段坐標(biāo)會(huì)有一些像素并不在當(dāng)前繪制的塊中,因此需要對(duì)得到的像素進(jìn)行裁剪。
14.當(dāng)前塊的范圍為
全文摘要
本發(fā)明公開了一種基于分塊渲染算法實(shí)現(xiàn)的GPU中鋸齒線段的生成技術(shù),它是在線段已完成分塊的基礎(chǔ)上進(jìn)行的,它包括根據(jù)線段所在塊和線段生成方向確定塊內(nèi)線段的左右(或上下)交點(diǎn);交點(diǎn)數(shù)據(jù)寫入存儲(chǔ)器;從存儲(chǔ)器中取出線段后的寬度為1的坐標(biāo)生成;根據(jù)線段寬度擴(kuò)展坐標(biāo);根據(jù)塊邊界的裁剪等步驟,該實(shí)現(xiàn)方式可以配合分塊渲染算法完成鋸齒線段的快速生成。
文檔編號(hào)G06T1/60GK102142150SQ20111006478
公開日2011年8月3日 申請(qǐng)日期2011年3月17日 優(yōu)先權(quán)日2011年3月17日
發(fā)明者周敏龍, 林蒼松, 焦勇 申請(qǐng)人:長(zhǎng)沙景嘉微電子有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
贺州市| 丰镇市| 永清县| 大连市| 镇坪县| 望谟县| 志丹县| 黑龙江省| 文化| 大丰市| 舒城县| 临湘市| 广宗县| 清河县| 荔浦县| 安溪县| 浦北县| 建昌县| 含山县| 宿松县| 永川市| 浪卡子县| 文昌市| 资讯 | 隆化县| 大新县| 雅江县| 额尔古纳市| 铁力市| 佳木斯市| 望奎县| 留坝县| 乌鲁木齐县| 永康市| 武夷山市| 新民市| 马山县| 习水县| 望都县| 伽师县| 海宁市|