• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    一種基于流體動(dòng)力學(xué)模擬的水墨渲染方法

    2010-09-17 10:31:36趙凡張文俊王少波張族錦
    微型電腦應(yīng)用 2010年3期
    關(guān)鍵詞:外力水墨紋理

    趙凡,張文俊,王少波,張族錦

    0 引言

    長(zhǎng)久以來(lái),中國(guó)動(dòng)畫藝術(shù)家在國(guó)際上創(chuàng)立了中國(guó)動(dòng)畫學(xué)派,并且成功創(chuàng)作了水墨畫效果動(dòng)畫。但是憑借手工制作的水墨效果動(dòng)畫成本高,周期長(zhǎng),遠(yuǎn)無(wú)法滿足現(xiàn)代動(dòng)畫的制作和成本要求,在國(guó)際動(dòng)畫市場(chǎng)上也缺少有利的競(jìng)爭(zhēng)優(yōu)勢(shì)。因此,能夠用計(jì)算機(jī)有效的繪制出水墨畫效果,對(duì)于縮短水墨動(dòng)畫制作周期并降低成本,提高在國(guó)際動(dòng)畫市場(chǎng)上的競(jìng)爭(zhēng)力有著重要的意義。但是,從國(guó)際上來(lái)看,就中國(guó)傳統(tǒng)水墨藝術(shù)的數(shù)字化實(shí)現(xiàn)方面,人們所做的研究與開發(fā)還不是很多。

    國(guó)內(nèi)從事數(shù)字水墨的計(jì)算機(jī)生成研究,主要是通過基于粒子系統(tǒng)[1]、紋理合成[2]、動(dòng)態(tài)擴(kuò)散機(jī)理[3]和應(yīng)用分形[4]等方法來(lái)實(shí)現(xiàn)對(duì)水墨畫的仿真,這些方面雖然對(duì)數(shù)字水墨的實(shí)現(xiàn)取得較好的效果,但這些方法大多由于方法復(fù)雜和計(jì)算量大而不能達(dá)到實(shí)時(shí)的渲染效果。香港科技大學(xué)的MoXi交互繪畫系統(tǒng)[5],雖然可以實(shí)時(shí)地生成水墨效果,但只能在用戶畫出一筆的過程中實(shí)時(shí)生成一筆的水墨筆畫,而并不適用于水墨動(dòng)畫制作。本文在流體動(dòng)力學(xué)模擬技術(shù)的基礎(chǔ)上,通過交互施加外力,使用高級(jí)著色器語(yǔ)言(HLSL)和圖形處理單元(GPU)來(lái)處理紋理上的頂點(diǎn)和像素,對(duì)紋理進(jìn)行流體動(dòng)態(tài)模擬,從而實(shí)現(xiàn)對(duì)已知紋理的實(shí)時(shí)水墨效果渲染。

    1 流體動(dòng)力學(xué)模擬及在GPU上的實(shí)現(xiàn)

    流體動(dòng)力學(xué)模擬是模擬多種自然現(xiàn)象的基礎(chǔ),如流淌的河水、飄渺的青煙、升騰的水汽以及灌中混合的油漆等等。所有這些都是運(yùn)動(dòng)的流體,都是人們想要在交互式圖形應(yīng)用中逼真描繪的現(xiàn)象。

    在流體動(dòng)力學(xué)中,流體的速度 u(x,t)是最重要的量,其決定了流體本身的流動(dòng)狀態(tài),以及該流體中的物體的運(yùn)動(dòng)。流體的速度即隨時(shí)間又隨空間的變化而變化,通常將它表示

    為一個(gè)矢量場(chǎng)。流體的速度矢量場(chǎng)是對(duì)于每一個(gè)位置x=(x,y)而定義的,也存在與時(shí)間t相關(guān)的速度,即可描述成,

    流體動(dòng)力學(xué)模擬的狀態(tài)表示在一個(gè)M×N的網(wǎng)格上,箭頭代表速度,如圖1所示。流體動(dòng)態(tài)模擬的關(guān)鍵是正確及時(shí)地決定當(dāng)前的速度場(chǎng),這可以通過解一組方程式實(shí)現(xiàn)。

    圖1 流體速度的網(wǎng)格

    這組方程式描述的是多種力的相互作用,以及速度隨時(shí)間的變化。一點(diǎn)有了速度場(chǎng),就能用它移動(dòng)物體,改變流體的密度等。假定流體是不可壓縮的和均勻的,既在任何局部區(qū)域的體積不隨時(shí)間而改變,且密度在空間中是常數(shù)。則流體可由它的矢量速度場(chǎng)u(x,t)和標(biāo)量壓力場(chǎng)p(x,t)來(lái)表示,這些場(chǎng)既隨時(shí)間又隨空間而改變,且對(duì)于不可壓縮的流體,其速度和壓力在起始時(shí)間t = 0已知,那么流體狀態(tài)隨時(shí)間的變化可以用Navier-Stockes方程式[6]描述:

    其中,ρ是流體密度,v是動(dòng)力黏度,而F=(fx,fy)代表作用于流體的任何外力。

    由于圖形處理硬件的并行計(jì)算能力極強(qiáng),因此流體動(dòng)態(tài)模擬在圖形處理單元(GPU)上運(yùn)行起來(lái)要比CPU上快得多。比如,僅在一個(gè)二維的矩形區(qū)域進(jìn)行一個(gè)連續(xù)流動(dòng)的模擬,GPU的并行性使它很適合流體模擬所需的計(jì)算類型,模擬在單元的網(wǎng)格上執(zhí)行,把可編程GPU優(yōu)化為進(jìn)行像素計(jì)算,把單元的網(wǎng)格看作像素。GPU能夠同時(shí)處理多個(gè)頂點(diǎn)和像素,達(dá)到很高的運(yùn)行性能。因?yàn)榫W(wǎng)格是存儲(chǔ)在紋理中的,所以這種速度和并行性正是模擬時(shí)需要的。

    上述提及的流體動(dòng)態(tài)模擬表現(xiàn)二維網(wǎng)格上的數(shù)據(jù),在CPU上這個(gè)網(wǎng)格的自然表達(dá)是一個(gè)數(shù)組,而對(duì)應(yīng)到GPU上是紋理。紋理通常有3或4個(gè)彩色通道,所以對(duì)有2到4個(gè)分量的矢量數(shù)據(jù)類型,它們可以提供一個(gè)數(shù)據(jù)結(jié)構(gòu)。一般至少需要兩個(gè)紋理來(lái)表現(xiàn)流體的狀態(tài),一個(gè)用于速度,一個(gè)用于壓力。

    2 水墨渲染效果的實(shí)現(xiàn)

    隨著可編程像素著色器的出現(xiàn),用一種逼真、精確的方法實(shí)現(xiàn)真實(shí)感渲染成為可能。同時(shí),在渲染過程中對(duì)正確反映事物物理性質(zhì)的要求,也需要進(jìn)一步提高渲染的精度,例如凹凸映射就需要反映物體表面及光照的真實(shí)行為。Kevin Myers借鑒了逐像素光照[8],即基于每個(gè)像素上對(duì)光照方程進(jìn)行估算的這種概念后,提出了一種通過計(jì)算,定義每點(diǎn)的重力物理屬性,來(lái)實(shí)現(xiàn)模擬流體動(dòng)態(tài)經(jīng)過任意物體表面的模型[9]。在此模型中,著色器使用法線貼圖(Normal Map)計(jì)算出逐像素重力值,該值存儲(chǔ)在高度貼圖(Height Map)中,用來(lái)模擬流體。在生成重力體貼圖(Gravity Map)的過程中,假設(shè)已經(jīng)存在法線貼圖,它由各像素的法線組成,存儲(chǔ)在RGB紋理中。對(duì)于每一個(gè)點(diǎn),有關(guān)于方向的描述。由于流體在平面上運(yùn)動(dòng),z分量可以忽略,因此將重力定義為不含z方向的二維向量,即由法線的x和y分量定義經(jīng)過紋理空間的重力。使用法線貼圖計(jì)算出重力需要將重力向量變換到切線空間中,x和y分量描述每一點(diǎn)上的重力。為了確定某一點(diǎn)最終的方向向量,需要求出該點(diǎn)二維重力向量及x與y分量在該點(diǎn)的切線向量之和。所得二維向量將決定在切線空間中流體經(jīng)過表面時(shí)的方向,如圖2所示。

    圖2 流體經(jīng)過表面時(shí)某點(diǎn)的最終方向生成

    在上述模型中,最終得到的方向向量可看作是式(2)中作用于流體的外力F。而水墨在宣紙內(nèi)部進(jìn)行擴(kuò)散和滲化的過程可近似的看作流體在紙上經(jīng)過的動(dòng)態(tài)過程。因此,應(yīng)用于水墨渲染的過程,類似于上述液體動(dòng)態(tài)流經(jīng)物體表面的過程。不同的是,水墨的流動(dòng)不單單靠重力作用,還包括紙纖維的吸水作用和墨粒子的粘附作用,進(jìn)而產(chǎn)生擴(kuò)散紋理,這些效果的產(chǎn)生,除了與墨的濃度(即顏色的深淺)有關(guān)之外,還與紙纖維的吸水性、用水量的多少、用筆的角度以及紙紋理的情況有關(guān),有時(shí)候甚至完全是隨機(jī)出現(xiàn)的效果[1]。為了達(dá)到這種效果,可將作用于水墨的外力進(jìn)行修改,用比較簡(jiǎn)單的方法來(lái)計(jì)算外力和由它所引起的加速度。即,通過設(shè)定鼠標(biāo)的位置來(lái)確定外力的大小和方向。通過鼠標(biāo)的點(diǎn)擊和拖拽,把外力添加到水墨紋理中,使它在宣紙紋理上“流動(dòng)”,模擬水墨在宣紙上的擴(kuò)散和暈化。具體過程如下:點(diǎn)擊水墨紋理內(nèi)的一點(diǎn),該點(diǎn)的顏色給外力的方向和大小編碼,紅色的通道包含x上的量,而綠色的通道包含y上的量。該點(diǎn)實(shí)際上是一個(gè)二維的高斯“條”(Gaussian “splat”)。使用一個(gè)片元(fragment)程序檢查每個(gè)片元與外力位置的距離。然后把量c添加到顏色中去:

    其中,F(xiàn)是根據(jù)方向和鼠標(biāo)拖拽的長(zhǎng)度計(jì)算出來(lái)的力,r是所要求的外力作用半徑,而(x,y)和 ),(ppyx 分別是在窗口坐標(biāo)中的片元位置和外力(點(diǎn)擊)位置。

    3 實(shí)驗(yàn)結(jié)果分析

    本實(shí)驗(yàn)是在CUP為2x2666MHz Pentium III Xeon,顯卡為NVIDIA Quadro FX 3700的硬件基礎(chǔ)上進(jìn)行的。通過使用高級(jí)著色器語(yǔ)言(HLSL),PS (Pixel Shader)2.0和Cg語(yǔ)言來(lái)實(shí)現(xiàn)水墨渲染的效果。并且對(duì)于不同類型的紋理,包括單點(diǎn)(圓形)、多點(diǎn)、文字及待處理的照片圖像等等進(jìn)行了水墨渲染效果的實(shí)驗(yàn)。

    對(duì)于點(diǎn)單(圓形)紋理來(lái)講,如圖3所示,可以看出,其水墨渲染仿真過程可以做到由中心向四周依次減弱色度和純度,可以較真實(shí)地模擬水墨在宣紙上的暈化過程。

    圖3 對(duì)圓型紋理圖的水墨渲染

    圖4 對(duì)文字紋理圖的水墨渲染

    對(duì)于文字紋理來(lái)說(shuō),如圖4所示,通過類似于單點(diǎn)的擴(kuò)散暈化過程,同樣可以實(shí)現(xiàn)仿真水墨書法的效果。由于水墨的擴(kuò)散和滲透過程除了與墨的濃度有關(guān)以外,還與紙的吸水力和致密度有關(guān)。因此,對(duì)于不同的宣紙紋理,其渲染的效果也會(huì)不同,比如,如圖5所示,該圖像紋理采用的宣紙紋理與以上兩圖不同,其渲染效果也略有不同。

    圖5 對(duì)圖紋理圖的水墨渲染

    以上實(shí)驗(yàn)結(jié)果表明,無(wú)論是單點(diǎn)(圓形)紋理,文字紋理還是圖像紋理,對(duì)于它們的水墨渲染效果都可達(dá)到比較滿意的程度。較真實(shí)地反映了中國(guó)水墨畫的擴(kuò)散、暈化和滲透的基本特點(diǎn)。該水墨渲染過程可以快速地實(shí)時(shí)展示,用戶可通過點(diǎn)擊鼠標(biāo),通過交互對(duì)待處理紋理的渲染效果進(jìn)行控制和干預(yù),從而可以達(dá)到自認(rèn)為滿意的渲染效果。

    4 結(jié)論

    本文提出了一種基于流體動(dòng)力學(xué)模擬的水墨渲染方法,通過人機(jī)交互,計(jì)算出待處理紋理中每個(gè)像素的所受外力值,以實(shí)現(xiàn)對(duì)水墨動(dòng)態(tài)模擬的效果,且能依附于所選的不同宣紙紋理之上。此方法簡(jiǎn)化了對(duì)紙纖維的吸水性、用水量的多少、用筆的角度等因素的模擬,取而代之是用流體動(dòng)力學(xué)模擬較快且真實(shí)地仿真水墨在宣紙紋理上流動(dòng)過程。實(shí)驗(yàn)結(jié)果表明,此方法對(duì)于文字和圖像的水墨渲染等都的較理想的效果,且其渲染過程可以快速地實(shí)時(shí)交互顯示,用戶可以交互控制和干預(yù)待處理紋理的渲染效果。此方法為水墨渲染提供了一種新的途徑,但仍然存在著一些不足,如對(duì)外力施加的方向還沒有明確的定量分析,讓水墨渲染達(dá)到完美效果還有一定差距。目前,主要是憑借經(jīng)驗(yàn)和觀測(cè)實(shí)時(shí)效果來(lái)決定外力的方向,這有待于在今后的研究中進(jìn)一步改進(jìn)和完善。

    [1]石永鑫,孫濟(jì)洲,張海江,賈文麗.基于粒子系統(tǒng)的中國(guó)水墨畫仿真算法[J].計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)報(bào),2003,(6):667-672.

    [2]孫美君,李丹,孫濟(jì)洲.基于紋理合成的中國(guó)山水畫系統(tǒng)仿真[J].系統(tǒng)仿真學(xué)報(bào),2004,(10):2317-2320

    [3]陳鋒,張文俊,張目.一種基于動(dòng)態(tài)擴(kuò)散機(jī)理的水墨仿真模型[J].上海大學(xué)學(xué)報(bào),2006,(4):136-140.

    [4]張海江,王秀錦,孫濟(jì)洲等.應(yīng)用分形仿真水墨擴(kuò)散輪廓[J].計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報(bào),2004,(4):555-558.

    [5]Nelson S.-H. Chu and C.-L.Tai,MoXi: Real-Time Ink Dispersion in Absorbent Paper [J].ACM Transactions on Graphics(SIGGRAPH 2005 issue), 2005,24(3)

    [6]Stam J. Stable Fluids [C]//Proceedings of SIGGRAPH 1999,1999

    [7]Harris M J. Real-Time Cloud Simulation and Rendering[D].University of North Carolina Technical Report #TR03-040. 2003.

    [8]Dietrich S. Texture Space Bump Mapping [C]// NVIDIA Corporation, November 2000.

    [9]Myers K. Next-Gen Special Effects Showcase:BloodShader - Real-Time Adaptive Animation[C]//NVIDIA GDC Presentations, 2004.

    猜你喜歡
    外力水墨紋理
    水墨
    基于BM3D的復(fù)雜紋理區(qū)域圖像去噪
    軟件(2020年3期)2020-04-20 01:45:18
    帶低正則外力項(xiàng)的分?jǐn)?shù)次阻尼波方程的長(zhǎng)時(shí)間行為
    使用紋理疊加添加藝術(shù)畫特效
    TEXTURE ON TEXTURE質(zhì)地上的紋理
    Coco薇(2017年8期)2017-08-03 15:23:38
    潑盡水墨是生平
    文史春秋(2017年12期)2017-02-26 03:16:19
    消除凹凸紋理有妙招!
    Coco薇(2015年5期)2016-03-29 23:22:15
    當(dāng)代水墨邀請(qǐng)展
    常見運(yùn)動(dòng)創(chuàng)傷的簡(jiǎn)單處理方法(二)
    水墨青花
    胶南市| 潮安县| 金塔县| 连山| 哈密市| 桦甸市| 井冈山市| 通城县| 余江县| 丽水市| 德令哈市| 甘德县| 吉首市| 宕昌县| 镶黄旗| 兴仁县| 遂平县| 普格县| 额敏县| 长子县| 弋阳县| 来凤县| 泸西县| 理塘县| 中江县| 松滋市| 云和县| 原阳县| 云龙县| 安仁县| 航空| 黄山市| 外汇| 潮安县| 山阳县| 永平县| 邻水| 郸城县| 阿鲁科尔沁旗| 中宁县| 南阳市|