基于超算的三維可視化系統(tǒng),其主要的技術(shù)難點(diǎn)可歸結(jié)如下:
(1)建模。 建模過程要保證效率與效果的優(yōu)化折中,盡量在較好地解析模型信息細(xì)節(jié)的前提下快速解算控制方程。固體方面,在目前較為流行的實(shí)時(shí)仿真庫中,多數(shù)是針對剛體和關(guān)節(jié)性剛體的。而本系統(tǒng)加入了各種類型的可變形體(非牛頓流體、布料型輕薄固體、顆粒型固體等),要解決剛體與可變形體的運(yùn)動(dòng)耦合,它們之間的碰撞檢測與可變形體的應(yīng)力形變是技術(shù)難點(diǎn)。在流體(主要是空氣、液體動(dòng)力仿真)方面,當(dāng)前 CFD 的仿真軟件基本都是解算歐拉流體模型,中間在求解大型線性方程時(shí)難以實(shí)時(shí),由于實(shí)時(shí)性的限制,本系統(tǒng)需要并行化比較高的方式來解算 Navier-Stokes 方程,因此本系統(tǒng)使用當(dāng)前的新興流體技術(shù),即實(shí)時(shí)的歐拉流體方法,并且耦合 SPH(Smoothed Particle Hydrodynamics)模型來增加小規(guī)模細(xì)節(jié),使三維可視化的結(jié)果盡量再現(xiàn)真實(shí)的物理結(jié)果。此外,還有一個(gè)較大的技術(shù)難點(diǎn)就是流/固耦合模塊,這里需要將基于歐拉網(wǎng)格的流體與基于拉格朗日的固體進(jìn)行統(tǒng)一的求解,這需要建立一個(gè)耦合不同類型固體的流體泊松方程,并用快速、穩(wěn)定的數(shù)值方法求解。
(2) 渲染。可視化數(shù)據(jù)的提取過程中,技術(shù)難點(diǎn)是根據(jù)離散點(diǎn)云(粒子)來構(gòu)建沒有斑點(diǎn)的平滑三角化曲面,以及適應(yīng)性的 Marching 算法,這些都集中在構(gòu)建面數(shù)據(jù)的方面。基于點(diǎn)云構(gòu)建曲面,本系統(tǒng)使用了 Delaunay 三角剖分與拉格朗日濾波相結(jié)合的幾何算法來優(yōu)化操作,成可供高質(zhì)量渲染的曲面數(shù)據(jù);而適應(yīng)性 Marching 算法主要是用于在建模時(shí)采樣生成的隱式表面數(shù)據(jù)場上提取顯式面數(shù)據(jù),要求是不能過分地抹平一些高頻的細(xì)節(jié)。此外,本系統(tǒng)的渲染模塊也支持對隱式數(shù)據(jù)場的渲染,這要看具體的應(yīng)用需求。在生成圖像的過程中,并行加速
模塊起到了至關(guān)重要的作用,基于 GPU 的矩陣解算與光線追蹤是本系統(tǒng)的一大特色。