基于延遲與體粒子的電磁態(tài)勢混合渲染方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及一種混合渲染方法,特別是涉及一種基于延遲與體粒子的電磁態(tài)勢混 合植染方法。
【背景技術(shù)】
[0002] 文南犬"Visualization 3D atmospheric data with spherical volume texture on virtual globes Liang Jianming Computers&Geosciences 2014年68卷81-91 頁''公開 了一種運(yùn)用延遲渲染技術(shù)結(jié)合光線投射算法的混合渲染方法,該方法在渲染三維場景的基 礎(chǔ)上,采用延遲渲染技術(shù)將三維場景存儲到位置緩存與顏色緩存中,然后根據(jù)光線投射體 繪制結(jié)果的位置、顏色信息進(jìn)行混合繪制,能夠較好的實(shí)現(xiàn)三維場景與體數(shù)據(jù)的混合繪制。 文獻(xiàn)所述方法通過光線投射算法進(jìn)行體繪制,當(dāng)所需繪制數(shù)據(jù)量大、近距離觀察體數(shù)據(jù)、或 三維場景變化時,渲染幀率急劇下降,無法實(shí)時繪制。
【發(fā)明內(nèi)容】
[0003] 為了克服現(xiàn)有混合渲染方法實(shí)時性差的不足,本發(fā)明提供一種基于延遲與體粒子 的電磁態(tài)勢混合渲染方法。該方法首先建立空間電磁態(tài)勢模型,得到電磁態(tài)勢三維體數(shù)據(jù); 采用基于半角切片的紋理映射體繪制算法,同時繪制視點(diǎn)和光照模型;然后將粒子系統(tǒng)與 基于半角切片的紋理映射體繪制算法相結(jié)合,實(shí)現(xiàn)體粒子繪制;最終利用延遲渲染管線與 體粒子渲染管線相結(jié)合的方法,并將電磁態(tài)勢體數(shù)據(jù)映射到體粒子系統(tǒng),實(shí)現(xiàn)了三維場景 與電磁態(tài)勢體數(shù)據(jù)的實(shí)時混合繪制。由于采用基于半角切片的紋理映射體繪制算法,同時 繪制視點(diǎn)和光照模型,解決了【背景技術(shù)】方法無法考慮光照模型的缺陷,提高了體繪制的真 實(shí)感效果;將粒子系統(tǒng)與基于半角切片的紋理映射體繪制算法相結(jié)合實(shí)現(xiàn)體粒子繪制,大 幅提升了粒子系統(tǒng)的渲染效果和性能。
[0004] 本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是:一種基于延遲與體粒子的電磁態(tài)勢 混合渲染方法,其特點(diǎn)是包括以下步驟:
[0005] 步驟一、根據(jù)電磁態(tài)勢模型計算并生成電磁態(tài)勢體數(shù)據(jù)。
[0006] 距離輻射源R位置處的電場強(qiáng)度為:
[0008]式中,Ρτ為功率密度,GT為天線增益,E為電場強(qiáng)度,Η為磁場強(qiáng)度,Zw為波阻抗;
[0009 ]步驟二、運(yùn)用基于半角切片的紋理映射體繪制算法。
[0010]通過半角切片算法,考慮視點(diǎn)和光照模型,當(dāng)光源和視點(diǎn)方向的點(diǎn)積為正時,切片 方向取光源方向和視點(diǎn)方向的中間值,運(yùn)用下算子算法從視點(diǎn)的前面到背面渲染:
[0012] 其中,0,.和為分別是從體前面到背面累加的顏色和不透明度。
[0013] 當(dāng)點(diǎn)積為負(fù)時,切片方向取光源方向和視點(diǎn)反方向的中間值,運(yùn)用上算子算法從 視點(diǎn)的背面到前面渲染體:
[0015] 步驟三、體粒子繪制算法。
[0016] 首先根據(jù)電磁態(tài)勢模型計算得到空間電磁態(tài)勢體數(shù)據(jù),將每個采樣點(diǎn)上的位置與 場強(qiáng)信息與粒子系統(tǒng)中每個粒子進(jìn)行映射;然后按照半角向量對粒子系統(tǒng)進(jìn)行排序;最后 結(jié)合基于紋理映射的體繪制算法實(shí)現(xiàn)電磁態(tài)勢體數(shù)據(jù)的繪制。
[0017] 步驟四、將體粒子繪制管線與延遲渲染管線相結(jié)合,實(shí)現(xiàn)電磁環(huán)境體數(shù)據(jù)與三維 場景的混合繪制,渲染的具體步驟是:
[0018] (a)繪制場景中所有三維物體,并將繪制結(jié)果分別保存到位置緩存和顏色緩存中。 根據(jù)半角向量計算得到體粒子繪制中的光線入射點(diǎn)和出射點(diǎn)位置信息并以紋理的形式存 入緩存。
[0019] (b)根據(jù)得到的三維場景位置緩存與光線入射點(diǎn)和出射點(diǎn)位置信息,得到最終光 線的入射點(diǎn)與出射點(diǎn)位置信息。將電磁態(tài)勢體數(shù)據(jù)映射到體粒子系統(tǒng)實(shí)現(xiàn)空間電磁態(tài)勢的 體繪制,得到電磁態(tài)勢體粒子渲染結(jié)果,并保存到緩存。
[0020] (c)根據(jù)位置信息將步驟(a)得到的顏色緩存與電磁態(tài)勢體粒子渲染結(jié)果進(jìn)行疊 加,得到繪制結(jié)果。
[0021] 本發(fā)明的有益效果是:該方法首先建立空間電磁態(tài)勢模型,得到電磁態(tài)勢三維體 數(shù)據(jù);采用基于半角切片的紋理映射體繪制算法,同時繪制視點(diǎn)和光照模型;然后將粒子系 統(tǒng)與基于半角切片的紋理映射體繪制算法相結(jié)合,實(shí)現(xiàn)體粒子繪制;最終利用延遲渲染管 線與體粒子渲染管線相結(jié)合的方法,并將電磁態(tài)勢體數(shù)據(jù)映射到體粒子系統(tǒng),實(shí)現(xiàn)了三維 場景與電磁態(tài)勢體數(shù)據(jù)的實(shí)時混合繪制。由于采用基于半角切片的紋理映射體繪制算法, 同時繪制視點(diǎn)和光照模型,解決了【背景技術(shù)】方法無法考慮光照模型的缺陷,提高了體繪制 的真實(shí)感效果;將粒子系統(tǒng)與基于半角切片的紋理映射體繪制算法相結(jié)合實(shí)現(xiàn)體粒子繪 制,大幅提升了粒子系統(tǒng)的渲染效果和性能。經(jīng)測試,本發(fā)明方法繪制幀率始終大于40幀每 秒,較【背景技術(shù)】方法效率提升51.5%,隨著采樣切片個數(shù)的增加達(dá)到147.1 %。
[0022]下面結(jié)合【具體實(shí)施方式】對本發(fā)明作詳細(xì)說明。
【具體實(shí)施方式】
[0023]本發(fā)明基于延遲與體粒子的電磁態(tài)勢混合渲染方法具體步驟如下:
[0024] 1.計算得到區(qū)域電磁環(huán)境體數(shù)據(jù)。
[0025]根據(jù)電磁態(tài)勢模型計算三維地球上所需要表征的體數(shù)據(jù)位置。將采樣點(diǎn)坐標(biāo)(Xl, yi,Zl)帶入公式(1)后計算得到電場強(qiáng)度集Ε={Ε^},如表1所示。
[0027]式中,Ρτ為功率密度,Gt為天線增益,Ε為電場強(qiáng)度,Η為磁場強(qiáng)度,Zw為波阻抗;
[0028]表 1
[0030] 2 ·體數(shù)據(jù)繪制。
[0031]①首先計算半角向量,當(dāng)光源和視點(diǎn)方向的點(diǎn)積為正時,切片方向取光源方向和 視點(diǎn)方向的中間值,運(yùn)用下算子算法(Under Operator),根據(jù)公式(2)計算半角向量;當(dāng)點(diǎn) 積為負(fù)時,切片方向取光源方向和視點(diǎn)反方向的中間值,運(yùn)用上算子算法(Over Operator),根據(jù)公式(3)計算半角向量,根據(jù)半角向量排列粒子并運(yùn)用透明度混合的方式 渲染粒子,取代了傳統(tǒng)渲染多邊形切片的方法。
[0033]其中,0,和為分別是從體前面到背面累加的顏色和不透明度。
[0035]②然后根據(jù)半角方向整理粒子,由于電磁態(tài)勢體數(shù)據(jù)維度為128*128*64,因此空 間中總共有1048576個數(shù)據(jù),每個數(shù)據(jù)對應(yīng)一個粒子,根據(jù)采樣間隔計算得到共有64個切 片,我們便沿著半角方向?qū)⒘W诱沓擅總€切片有16384個粒子的64個切片。
[0036]③最后在GPU上分別開辟兩個幀緩存用于存儲視點(diǎn)緩存和光照緩存,然后將得到 的緩存融合,主要由以下4步組成:
[0037] (1)運(yùn)用光源的觀察模型和投影矩陣將切片頂點(diǎn)投影到光照緩存,根據(jù)光源的視 窗大小和光照緩存將頂點(diǎn)坐標(biāo)轉(zhuǎn)換為二維紋理坐標(biāo)。
[0038] (2)根據(jù)步驟(1)計算得到的二維紋理坐標(biāo),把光源緩存以紋理的形式保存到一個 紋理單元。
[0039] (3)在片段著色器中,通過傳遞函數(shù)計算得到顏色C和不透明度A。用光源緩沖中的 顏色α乘C,然后根據(jù)相應(yīng)的混合算子將C和A存儲到到視點(diǎn)緩存中。
[0040] (4)使用公式(3)渲染切片并存儲到光照緩存。在片段著色器中通過傳遞函數(shù)計算 得到透明度值。
[0041 ] 3 ·混合繪制。
[0042]①繪制場景中所有三維物體(三維地球、地形、模型等),并將繪制結(jié)果分別保存到 位置緩存和顏色緩存中,為后續(xù)混合繪制提供場景數(shù)據(jù)。
[0043]②由半角切片算法計算得到半角向量,根據(jù)半角向量計算得到體粒子繪制中的光 線入射點(diǎn)和出射點(diǎn)位置信息以紋理的形式存入緩存。
[0044] ③根據(jù)第一步得到的三維場景位置緩存與第二步得到的光線入射點(diǎn)和出射點(diǎn)位 置信息,得到最終光線的入射點(diǎn)與出射點(diǎn)位置信息。
[0045] ④將電磁態(tài)勢體數(shù)據(jù)映射到體粒子系統(tǒng)實(shí)現(xiàn)空間電磁態(tài)勢的體繪制,得到了電磁 態(tài)勢體粒子渲染結(jié)果,并保存到緩存。
[0046] ⑤根據(jù)位置信息將第①步得到的顏色緩存和第④步得到的體粒子渲染結(jié)果進(jìn)行 疊加,得到繪制結(jié)果。
【主權(quán)項(xiàng)】
1. 一種基于延遲與體粒子的電磁態(tài)勢混合擅染方法,其特征在于包括W下步驟: 步驟一、根據(jù)電磁態(tài)勢模型計算并生成電磁態(tài)勢體數(shù)據(jù); 距離福射源R位置處的電場強(qiáng)度為:(1) 式中,Ρτ為功率密度,Gt為天線增益,E為電場強(qiáng)度,Η為磁場強(qiáng)度,Zw為波阻抗; 步驟二、運(yùn)用基于半角切片的紋理映射體繪制算法; 通過半角切片算法,考慮視點(diǎn)和光照模型,當(dāng)光源和視點(diǎn)方向的點(diǎn)積為正時,切片方向 取光源方向和視點(diǎn)方向的中間值,運(yùn)用下算子算法從視點(diǎn)的前面到背面擅染:其中,?和4分別是從體前面到背面累加的顏色和不透明度; 當(dāng)點(diǎn)積為負(fù)時,切片方向取光源方向和視點(diǎn)反方向的中間值,運(yùn)用上算子算法從視點(diǎn) 的背面到前面擅染體:步驟Ξ、體粒子繪制算法; 首先根據(jù)電磁態(tài)勢模型計算得到空間電磁態(tài)勢體數(shù)據(jù),將每個采樣點(diǎn)上的位置與場強(qiáng) 信息與粒子系統(tǒng)中每個粒子進(jìn)行映射;然后按照半角向量對粒子系統(tǒng)進(jìn)行排序;最后結(jié)合 基于紋理映射的體繪制算法實(shí)現(xiàn)電磁態(tài)勢體數(shù)據(jù)的繪制; 步驟四、將體粒子繪制管線與延遲擅染管線相結(jié)合,實(shí)現(xiàn)電磁環(huán)境體數(shù)據(jù)與Ξ維場景 的混合繪制,擅染的具體步驟是: (a) 繪制場景中所有Ξ維物體,并將繪制結(jié)果分別保存到位置緩存和顏色緩存中;根據(jù) 半角向量計算得到體粒子繪制中的光線入射點(diǎn)和出射點(diǎn)位置信息并W紋理的形式存入緩 存; (b) 根據(jù)得到的Ξ維場景位置緩存與光線入射點(diǎn)和出射點(diǎn)位置信息,得到最終光線的 入射點(diǎn)與出射點(diǎn)位置信息;將電磁態(tài)勢體數(shù)據(jù)映射到體粒子系統(tǒng)實(shí)現(xiàn)空間電磁態(tài)勢的體繪 審IJ,得到電磁態(tài)勢體粒子擅染結(jié)果,并保存到緩存; (C)根據(jù)位置信息將步驟(a)得到的顏色緩存與電磁態(tài)勢體粒子擅染結(jié)果進(jìn)行疊加,得 到繪制結(jié)果。
【專利摘要】本發(fā)明公開了一種基于延遲與體粒子的電磁態(tài)勢混合渲染方法,用于解決現(xiàn)有混合渲染方法實(shí)時性差的技術(shù)問題。技術(shù)方案是首先建立空間電磁態(tài)勢模型,得到電磁態(tài)勢三維體數(shù)據(jù);采用基于半角切片的紋理映射體繪制算法,同時繪制視點(diǎn)和光照模型;然后將粒子系統(tǒng)與基于半角切片的紋理映射體繪制算法相結(jié)合,實(shí)現(xiàn)體粒子繪制;最終利用延遲渲染管線與體粒子渲染管線相結(jié)合的方法,并將電磁態(tài)勢體數(shù)據(jù)映射到體粒子系統(tǒng),實(shí)現(xiàn)了三維場景與電磁態(tài)勢體數(shù)據(jù)的實(shí)時混合繪制。由于采用基于半角切片的紋理映射體繪制算法,提高了體繪制的真實(shí)感效果;將粒子系統(tǒng)與基于半角切片的紋理映射體繪制算法相結(jié)合實(shí)現(xiàn)體粒子繪制,大幅提升了粒子系統(tǒng)的渲染效果和性能。
【IPC分類】G06T15/08
【公開號】CN105574923
【申請?zhí)枴緾N201510995924
【發(fā)明人】高穎, 郭淑霞, 葛飛, 王亞鋒, 陳旭, 于學(xué)偉, 董文華, 劉瑞兵, 李瑛
【申請人】西北工業(yè)大學(xué)
【公開日】2016年5月11日
【申請日】2015年12月28日