亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        超大型三維場(chǎng)景分布式渲染系統(tǒng)體系結(jié)構(gòu)與技術(shù)研究

        2022-06-21 04:19:20李昆昆于春雨盧石磊李文博
        科技創(chuàng)新與應(yīng)用 2022年17期
        關(guān)鍵詞:錐體體系結(jié)構(gòu)繪制

        郭 陽,李昆昆,于春雨,盧石磊,李文博,劉 甜

        (青島理工大學(xué) 復(fù)雜網(wǎng)絡(luò)與可視化研究所,山東 青島 266520)

        分布式渲染是將分布式計(jì)算和實(shí)時(shí)渲染結(jié)合,實(shí)現(xiàn)大體量模型的繪制與渲染,利用多GPU累積能力協(xié)同處理渲染任務(wù),實(shí)現(xiàn)單PC機(jī)無法達(dá)到的快速繪制與渲染效果。實(shí)時(shí)渲染流程中最為關(guān)鍵的階段是幾何處理和光柵化。STEVEN和MICHAEL等[1]人針對(duì)三維模型實(shí)時(shí)繪制和渲染提出Sort分類策略,將分布式渲染分為了Sort-first、Sort-middle和Sort-last三種方式,Sort-first將圖元數(shù)據(jù)在幾何處理之前進(jìn)行歸屬判斷,Sort-middle將圖元數(shù)據(jù)在幾何處理和光柵化之間進(jìn)行歸屬判斷,Sort-last由于以無序狀態(tài)通過了幾何處理和光柵化,因此不再需要?dú)w屬判斷,直接在顯示系統(tǒng)上進(jìn)行圖像合成。

        分布式渲染的實(shí)現(xiàn)取決于多渲染節(jié)點(diǎn)的系統(tǒng)構(gòu)建,系統(tǒng)體系結(jié)構(gòu)的設(shè)計(jì)將直接影響渲染效率[2]。本文設(shè)計(jì)一種新的體系結(jié)構(gòu)實(shí)現(xiàn)超大型三維場(chǎng)景的Sortfirst和Sort-last分布式渲染。

        1 傳統(tǒng)主從體系結(jié)構(gòu)

        傳統(tǒng)的分布式渲染系統(tǒng)體系結(jié)構(gòu)為主從(Master-Slave)結(jié)構(gòu),其結(jié)構(gòu)模型較為簡(jiǎn)單,整個(gè)執(zhí)行過程中任務(wù)量最大的繪制與渲染由從節(jié)點(diǎn)完成,并且根據(jù)任務(wù)量的需求大小或者用戶要求決定從節(jié)點(diǎn)的數(shù)量,實(shí)現(xiàn)系統(tǒng)的擴(kuò)展性。主從結(jié)構(gòu)的劣勢(shì)在于主節(jié)點(diǎn)職責(zé)過多,極易影響系統(tǒng)渲染效率;模型的計(jì)算渲染和圖像合成為串行關(guān)系,在從節(jié)點(diǎn)計(jì)算渲染時(shí),主節(jié)點(diǎn)處于空閑狀態(tài)。

        孫昭等[3]基于主從結(jié)構(gòu)實(shí)現(xiàn)了一種按場(chǎng)景內(nèi)容分布的渲染系統(tǒng),Master節(jié)點(diǎn)負(fù)責(zé)系統(tǒng)的管理和用戶的交互結(jié)果顯示,Slave節(jié)點(diǎn)負(fù)責(zé)子場(chǎng)景的渲染,該方式提升了場(chǎng)景渲染的整體時(shí)間。彭敏峰[4]提出將多任務(wù)并行圖形繪制系統(tǒng)節(jié)點(diǎn)分為三類:負(fù)責(zé)幾何運(yùn)算的應(yīng)用節(jié)點(diǎn)、執(zhí)行OpenGL指令的服務(wù)節(jié)點(diǎn)和負(fù)責(zé)與用戶交互的控制節(jié)點(diǎn),該結(jié)構(gòu)實(shí)現(xiàn)了多節(jié)點(diǎn)的并行計(jì)算和繪制,繪制結(jié)果可以多個(gè)屏幕顯示。湯敏[5]將分布式渲染的體系結(jié)構(gòu)改進(jìn)為Master-Slave-Collector,在主從結(jié)構(gòu)中加入了Collector節(jié)點(diǎn),通過添加任務(wù)池和結(jié)果池的方法實(shí)現(xiàn)系統(tǒng)的負(fù)載均衡。路石[6]在基于高性能并行可視化服務(wù)器上實(shí)現(xiàn)了多個(gè)系統(tǒng)內(nèi)部節(jié)點(diǎn),擴(kuò)充了系統(tǒng)中的節(jié)點(diǎn)角色,使系統(tǒng)邏輯更加清晰,但容易造成多個(gè)節(jié)點(diǎn)之間數(shù)據(jù)的往復(fù)傳輸,從而增加由于網(wǎng)絡(luò)傳輸所帶來的時(shí)間消耗。

        2 服務(wù)節(jié)點(diǎn)+主渲染節(jié)點(diǎn)+從渲染節(jié)點(diǎn)結(jié)構(gòu)

        2.1 系統(tǒng)節(jié)點(diǎn)角色

        基于主從結(jié)構(gòu),為減少主節(jié)點(diǎn)的任務(wù)壓力,并且在從節(jié)點(diǎn)渲染時(shí),主節(jié)點(diǎn)不處于空閑狀態(tài),增加第三類系統(tǒng)角色,該角色承載主節(jié)點(diǎn)中的部分任務(wù)模塊,減輕主節(jié)點(diǎn)任務(wù)量。系統(tǒng)角色為:服務(wù)節(jié)點(diǎn)、主渲染節(jié)點(diǎn)和從渲染節(jié)點(diǎn)。服務(wù)節(jié)點(diǎn)任務(wù)包含:系統(tǒng)環(huán)境部署、任務(wù)計(jì)算;主渲染節(jié)點(diǎn)任務(wù)包含:主渲染循環(huán)維護(hù)、用戶交互和事件處理(根據(jù)渲染需求,判斷系統(tǒng)是否進(jìn)行圖像合成);從渲染節(jié)點(diǎn)任務(wù)包含:被動(dòng)渲染執(zhí)行。

        2.2 系統(tǒng)工作流程

        本文設(shè)計(jì)的系統(tǒng)體系結(jié)構(gòu)工作流程如下:渲染任務(wù)執(zhí)行時(shí)由服務(wù)節(jié)點(diǎn)的環(huán)境資源部署開始,系統(tǒng)中的其他節(jié)點(diǎn)都會(huì)接收到來自服務(wù)節(jié)點(diǎn)的部署方案,此時(shí)實(shí)現(xiàn)所有節(jié)點(diǎn)角色的劃分。服務(wù)節(jié)點(diǎn)開始部署渲染任務(wù),首先根據(jù)渲染節(jié)點(diǎn)數(shù)量分配任務(wù)量到其他節(jié)點(diǎn)中,各渲染節(jié)點(diǎn)接受命令加載場(chǎng)景并開始渲染。渲染節(jié)點(diǎn)的工作大致相同,經(jīng)過清除、繪制、交換等,最后進(jìn)行顯示。在此期間,主節(jié)點(diǎn)還會(huì)接收新的事件命令,并提交到服務(wù)節(jié)點(diǎn),此時(shí)服務(wù)節(jié)點(diǎn)一并計(jì)算,進(jìn)行新的任務(wù)劃分,開始下一幀的渲染循環(huán)。

        2.3 并行機(jī)制

        在渲染中引入并行機(jī)制,在不改變單幀串行關(guān)系的情況下,使得多幀的渲染實(shí)現(xiàn)并行處理,以此實(shí)現(xiàn)多節(jié)點(diǎn)的分布式任務(wù)處理,減少單節(jié)點(diǎn)的渲染計(jì)算量,還可以實(shí)現(xiàn)流水線加速效果。

        當(dāng)采用并行機(jī)制執(zhí)行任務(wù)時(shí),假設(shè)全部在理想情況下,任務(wù)分配、渲染執(zhí)行、數(shù)據(jù)傳輸和圖像合成時(shí)間相等,忽略其他操作的時(shí)間,則理論上N幀的加速比可達(dá)到4N/(N+3)。在實(shí)際執(zhí)行過程中,模型繪制與渲染和圖像合成的時(shí)間會(huì)遠(yuǎn)遠(yuǎn)大于圖像數(shù)據(jù)傳輸?shù)臅r(shí)間,因此無法達(dá)到理想效果。并且當(dāng)流水線內(nèi)部包含的模塊操作越多時(shí),其渲染執(zhí)行和圖像合成的時(shí)間差越大,當(dāng)從節(jié)點(diǎn)渲染第k幀時(shí),此時(shí)的圖像合成顯示的是k-2幀,因此在負(fù)責(zé)圖像合成的主渲染節(jié)點(diǎn)中需進(jìn)行緩存處理。

        2.4 子任務(wù)劃分

        在Sort-first渲染方式中,子任務(wù)根據(jù)屏幕2D圖像的物理位置進(jìn)行劃分,因此子任務(wù)劃分可通過基于視錐體的圖元分割實(shí)現(xiàn),通過視錐體計(jì)算可以得出裁剪掉外部圖元[7],還可以得到投影到二維屏幕上的矩陣。

        首先選擇三維坐標(biāo)系,采用OpenGL右手坐標(biāo)系,X軸向前,Y軸向上,Z軸向右。以2個(gè)子視錐體為例,進(jìn)行坐標(biāo)和透視投影矩陣計(jì)算。視錐體切分如圖1所示。

        通過設(shè)置視錐體的fovy、Width、Height、zNear、zFar參數(shù)可以得出視錐體中的l、r、t、b、n和這幾f個(gè)變量值,再推導(dǎo)出視錐體透視投影矩陣。得到透視投影矩陣之后,便可以根據(jù)用戶自定義屬性切分視錐體,得到若干個(gè)子視錐體和它們各自的透視投影矩陣。

        在切分視錐體為2個(gè)子視錐體時(shí),變換相應(yīng)的變量便可獲得子視錐體的投影矩陣,例如當(dāng)r=0時(shí),即可得到左二分之一子視錐體;當(dāng)l=0時(shí),可得到右二分之一的子視錐體,當(dāng)?shù)玫蕉种蛔右曞F體后,重復(fù)上面的過程,可得到三分之一或四分之一視錐體,當(dāng)賦值為0時(shí)為均分。

        在分配渲染任務(wù)時(shí),需根據(jù)模型變換和新事件處理對(duì)子任務(wù)不斷進(jìn)行劃分,需進(jìn)行負(fù)載均衡處理,通過在視錐體內(nèi)部建立包圍盒的方式判斷子視錐體內(nèi)部頂點(diǎn)的數(shù)量是否趨于平衡,若某個(gè)子視錐體存在的頂點(diǎn)過多,則重新分配,使子視錐體內(nèi)部的頂點(diǎn)數(shù)量盡量保持一致,使渲染節(jié)點(diǎn)的任務(wù)量基本一致,渲染時(shí)間保持平衡。

        3 實(shí)驗(yàn)測(cè)試

        實(shí)驗(yàn)采用5臺(tái)PC機(jī)組成分布式渲染系統(tǒng),其中服務(wù)節(jié)點(diǎn)和主渲染節(jié)點(diǎn)各1臺(tái),從渲染節(jié)點(diǎn)3臺(tái),因此可進(jìn)行四分模型的渲染劃分。

        3.1 模型用例

        本文選取500米口徑球面射電望遠(yuǎn)鏡(FAST)模型作為測(cè)試用例,課題組已完成FAST模型的建模工作[8-11],如圖2所示。

        圖2 FAST模型

        FAST各部件模型在經(jīng)過整合并且添加上其他體量較小的模型之后,整體模型體量已超過千萬級(jí),見表1。

        表1 FAST整體模型體量

        3.2 測(cè)試結(jié)果

        實(shí)驗(yàn)測(cè)試中采取兩種方式驗(yàn)證本文設(shè)計(jì)的系統(tǒng)體系結(jié)構(gòu),一是Sort-first渲染及最終圖像不在主渲染節(jié)點(diǎn)合成的方式,該方式使用2.4節(jié)設(shè)計(jì)的劃分策略完成2D圖像分割;二是Sort-last渲染及最終圖像在主渲染節(jié)點(diǎn)合成的方式,該方式直接將模型數(shù)據(jù)范圍進(jìn)行劃分,各渲染節(jié)點(diǎn)占據(jù)等比例的模型數(shù)據(jù)。

        3.2.1 Sort-first圖像不合成方式

        根據(jù)子任務(wù)劃分方式,進(jìn)行視錐體的切分,將視錐體分為若干個(gè)不同的子視錐體,所有子視錐體渲染任務(wù)部署到不同的渲染節(jié)點(diǎn)中執(zhí)行渲染操作。如圖3所示,主渲染節(jié)點(diǎn)和3個(gè)從渲染節(jié)點(diǎn)各占1/4的模型渲染任務(wù),并通過視口的位置變換實(shí)現(xiàn)顯示拼接。

        圖3 四分FAST模型圖像不合成

        3.2.2 Sort-last圖像合成方式

        在該渲染方式中,沒有進(jìn)行基于視錐體的劃分,按照模型比例大小實(shí)現(xiàn)任務(wù)的分配,例如在四分模型中,將模型數(shù)據(jù)大小等分為4份,4個(gè)渲染節(jié)點(diǎn)各占1/4,并且由于Sort-last渲染實(shí)現(xiàn)的是模型的部分區(qū)域,無法進(jìn)行顯示拼接,因此在主渲染節(jié)點(diǎn)進(jìn)行圖像合成,在渲染窗口中直接輸出整體模型圖案,如圖4所示。

        圖4 四分FAST模型圖像合成

        3.3 結(jié)果分析

        在渲染節(jié)點(diǎn)數(shù)量分別是1~4的情況下,采集執(zhí)行1 000次渲染循環(huán)耗用的時(shí)間,其中包含圖像不合成和圖像合成兩種情況,如圖5所示。

        圖5 渲染耗時(shí)對(duì)比

        當(dāng)增加渲染節(jié)點(diǎn)時(shí),1 000幀的渲染耗時(shí)持續(xù)減少,繪制和渲染流暢度逐漸提升。當(dāng)增加到4個(gè)渲染節(jié)點(diǎn)時(shí),其渲染幀率也從22 fps分別增加到了47 fps和33 fps,能夠滿足實(shí)時(shí)渲染要求,驗(yàn)證了本文設(shè)計(jì)的分布式渲染系統(tǒng)體系結(jié)構(gòu)的有效性。

        在圖像的合成中,由于增加了圖像數(shù)據(jù)的傳輸和合成,因此在渲染耗時(shí)上,高于不合成的方式,并且在渲染節(jié)點(diǎn)逐漸增加的情況下,網(wǎng)絡(luò)傳輸和合成耗時(shí)逐漸增多。

        4 結(jié)束語

        本文提出一種基于服務(wù)節(jié)點(diǎn)+主渲染節(jié)點(diǎn)+從渲染節(jié)點(diǎn)的分布式渲染系統(tǒng)體系結(jié)構(gòu),將任務(wù)執(zhí)行過程中與渲染工作無關(guān)的模塊分離到服務(wù)節(jié)點(diǎn)中,使其承擔(dān)系統(tǒng)管理工作,與渲染相關(guān)的模塊任務(wù)全部分配給渲染節(jié)點(diǎn),并盡量使主節(jié)點(diǎn)與從節(jié)點(diǎn)的任務(wù)量趨于一致。以中國(guó)天眼FAST三維模型作為測(cè)試用例,測(cè)試結(jié)果表明,在保證實(shí)時(shí)渲染流暢度的前提下,本系統(tǒng)能夠有效減少三維模型的整體渲染時(shí)間,提高渲染效率。

        猜你喜歡
        錐體體系結(jié)構(gòu)繪制
        Art on coffee cups
        錐體上滾實(shí)驗(yàn)的力學(xué)分析
        放學(xué)后
        童話世界(2018年17期)2018-07-30 01:52:02
        基于粒計(jì)算的武器裝備體系結(jié)構(gòu)超網(wǎng)絡(luò)模型
        作戰(zhàn)體系結(jié)構(gòu)穩(wěn)定性突變分析
        進(jìn)動(dòng)錐體目標(biāo)平動(dòng)補(bǔ)償及微多普勒提取
        基于DODAF的裝備體系結(jié)構(gòu)設(shè)計(jì)
        基于云計(jì)算的航天器控制系統(tǒng)自組織體系結(jié)構(gòu)
        在轉(zhuǎn)變中繪制新藍(lán)圖
        電針針刺錐體區(qū)即時(shí)鎮(zhèn)痛發(fā)作期偏頭痛218例
        亚洲精品成人区在线观看| 国产亚洲熟妇在线视频| 亚洲国产精品天堂久久久| 国产av一级二级三级| 久久综合国产精品一区二区| 中文字幕人妻饥渴浪妇| 欧美老肥妇做爰bbww| 欧洲vat一区二区三区| 激情内射亚州一区二区三区爱妻| 国产精品视频一区国模私拍| 好爽受不了了要高潮了av| 久久亚洲国产精品五月天| 国产熟女乱综合一区二区三区| 亚洲国产高清一区av| 国产成人高清在线观看视频| 亚洲av无码专区国产不卡顿| 蜜臀色欲av在线播放国产日韩 | 日韩精品免费在线视频| 成人一区二区三区国产| 无码人妻少妇久久中文字幕蜜桃| 国内露脸中年夫妇交换| av毛片在线播放网址| 国产91人妻一区二区三区| 天堂国产一区二区三区| 女人被狂c躁到高潮视频| 九九99无码精品视频在线观看 | 夜爽8888视频在线观看| 亚洲在战AV极品无码| 亚洲一区二区三区在线激情| 欧美牲交a欧美牲交aⅴ免费下载| 性xxxx18免费观看视频| 福利一区视频| www.av在线.com| 亚洲av激情一区二区| 国色天香精品一卡2卡3卡4| 日子2020一区二区免费视频| 狠狠亚洲婷婷综合久久久| av天堂中文亚洲官网| 日本在线一区二区三区不卡| 精品无码av一区二区三区| 亚洲精品你懂的在线观看|