李勛祥,陳自乙,黃瑜芳,鄭敬玉,鄧詩(shī)雨
(溫州大學(xué)美術(shù)與設(shè)計(jì)學(xué)院,浙江 溫州 325035)
近年來(lái),隨著數(shù)字技術(shù)的發(fā)展,關(guān)于數(shù)字水墨的研究和探討越來(lái)越多,數(shù)字水墨的展現(xiàn)形式和繪制模式也變得多樣化.學(xué)者們利用圖形學(xué)算法模擬傳統(tǒng)水墨畫在筆、紙、墨相互作用下的物理洇化和效果,以更好地模擬傳統(tǒng)水墨畫的精髓,如文獻(xiàn)[1]提到的交互式三維虛擬毛筆模型,是一種模擬傳統(tǒng)水墨畫的繪制模式,可以模擬毛筆的筆觸、筆劃、筆芯等特性,從而更好地模擬傳統(tǒng)水墨畫的精髓;文獻(xiàn)[2]提到的仿真水墨繪畫分層紙張模型是一種模擬傳統(tǒng)水墨畫的繪制模式,可以模擬紙張的層次、紋理等特性,從而更好地模擬傳統(tǒng)水墨畫的精髓;國(guó)內(nèi)天津大學(xué)的課題組也有過(guò)相關(guān)課題的研究,他們提出了一種基于深度學(xué)習(xí)的水墨畫風(fēng)格遷移技術(shù),運(yùn)用該技術(shù)可以將傳統(tǒng)水墨畫的風(fēng)格轉(zhuǎn)換到數(shù)字水墨畫中[3-4].然而,這些圖形學(xué)領(lǐng)域的研究主要是從二維形態(tài)的角度模擬傳統(tǒng)水墨畫的筆墨效果,較少涉及三維形態(tài)的水墨特效研究,因而未能真正解決三維寫意水墨畫的實(shí)時(shí)繪制問(wèn)題.
影視藝術(shù)領(lǐng)域則有自己的另一套解決方案,如早年的數(shù)字水墨動(dòng)畫是通過(guò)對(duì)傳統(tǒng)水墨畫稿進(jìn)行電子掃描處理或拍照而合成的,特偉、錢家駿等老一輩動(dòng)畫大師引領(lǐng)的經(jīng)典水墨動(dòng)畫《小蝌蚪找媽媽》《山水情》等屬于該類[5-8];或是前期通過(guò)攝影攝像獲得視頻或圖像素材,后期利用數(shù)字影像合成技術(shù)處理水墨效果完成的,中央電視臺(tái)的某些水墨元素的片頭就屬于此類[9];或是利用數(shù)位板手繪模擬傳統(tǒng)水墨藝術(shù)效果的卡通動(dòng)畫[10].這些創(chuàng)作方式主要依賴傳統(tǒng)的水墨繪畫素材和攝影資料,或采用數(shù)位畫筆代替?zhèn)鹘y(tǒng)毛筆繪制,制作周期長(zhǎng),效率低,最大的問(wèn)題是二維繪制形式的居多,缺乏三維的水墨繪制形態(tài)是其短板.
當(dāng)今絕大多數(shù)三維水墨動(dòng)畫作品的制作基本上屬于3D網(wǎng)格建模和傳統(tǒng)手繪寫意水墨紋理貼圖合成,這類代表性作品有《夏·荷》[11]、上海世博會(huì)的3D版《清明上河圖》[12]等.與上述的二維水墨動(dòng)畫制作效率相比,該制作模式是一大進(jìn)步,屬于真正意義上的純數(shù)字水墨動(dòng)畫.但完全依賴實(shí)體網(wǎng)格建模和水墨貼圖的制作方式,無(wú)法在三維的元宇宙形態(tài)空間自由揮灑,缺乏建模的靈活性,一旦需要改變制作內(nèi)容和形態(tài)特征,必須重新建模和貼圖,而繁瑣的建模過(guò)程同樣影響制作效率.
針對(duì)當(dāng)今炙手可熱的元宇宙形態(tài)空間,如果能使變化無(wú)常,下筆成型無(wú)可改動(dòng)的寫意水墨繪制模式在虛擬三維空間達(dá)到隨心所欲、自由揮灑,創(chuàng)造一種水墨淋漓、意趣盎然的元宇宙水墨世界,那將會(huì)為我們帶來(lái)另外一種獨(dú)特的水墨世界鑒賞空間.本文采用腳本化、參數(shù)化的“三維數(shù)字毛筆”或“數(shù)字筆刷”可以直接快速(最快可以在幾分鐘之內(nèi))地在虛擬三維元宇宙空間進(jìn)行動(dòng)態(tài)繪制、創(chuàng)作,媲美傳統(tǒng)水墨藝術(shù)下筆成型、水墨淋漓的效果.有別于常規(guī)三維網(wǎng)格模型的數(shù)字水墨動(dòng)畫制作模式,該方法可以讓數(shù)字藝術(shù)創(chuàng)作人員超越低效、繁瑣的網(wǎng)格建模方式,快速制作,展現(xiàn)動(dòng)態(tài)、逼真的數(shù)字寫意水墨動(dòng)畫效果,呈現(xiàn)一種水墨淋漓的元宇宙世界.
眾所周知,傳統(tǒng)中國(guó)水墨山水畫是依賴毛筆和水墨,一筆一劃從無(wú)到有,從少到多進(jìn)行繪制的[13].然而,在三維的元宇宙空間,數(shù)字水墨畫的創(chuàng)作則無(wú)法以這種方式進(jìn)行,因?yàn)槌绦虻纳煽刂坪茈y落實(shí)到每一筆,而基于模塊化、組件化的山水畫元素程序筆刷則可以比較容易地進(jìn)行水墨山水畫的局部繪制.筆者通過(guò)基于程序的數(shù)字建模理念,以腳本編程語(yǔ)言,編寫山石、樹(shù)木、云水等元素的程序筆刷,接著在虛擬的元宇宙數(shù)字三維空間進(jìn)行組合繪制,使水墨山水畫創(chuàng)作變得輕而易舉[14-15].本文探討了傳統(tǒng)山水畫的“散點(diǎn)透視”“三遠(yuǎn)法”構(gòu)圖理論在計(jì)算機(jī)三維的元宇宙空間的表達(dá)模式,即數(shù)字水墨動(dòng)畫制作中,落筆“定位”和分間布白的“構(gòu)圖”方式如何在元宇宙虛擬空間坐標(biāo)中體現(xiàn)的問(wèn)題.
本文旨在通過(guò)數(shù)字程序參與創(chuàng)作的方式,讓人們?cè)谠钪姝h(huán)境中體現(xiàn)一種中國(guó)南派寫意山水畫美學(xué)理論中的“意境”美,即山水畫大師賓虹先生所說(shuō)的“渾厚華滋”之大美[16].
元宇宙形態(tài)下的數(shù)字水墨創(chuàng)作,首先需要解決山石、樹(shù)木、云水等物象的建模問(wèn)題,我們稱之為“程序自動(dòng)生成的建?!?數(shù)字水墨畫的樹(shù)木、山石及其他眾多的配景物件,實(shí)際上都是由L 系統(tǒng)創(chuàng)建的筆刷通過(guò)綜合建模機(jī)制繪制而成的[17].L 系統(tǒng)最初為美國(guó)科學(xué)家Aristid Lindenmayer[18]于1968 年提出,后由Smith 為模擬植物生長(zhǎng)而將其引入計(jì)算機(jī)圖形學(xué)[19].L 系統(tǒng)是基礎(chǔ),是主要的底層支撐技術(shù),但該技術(shù)的建模適用范圍比較單一,只適合于樹(shù)木植被類的生長(zhǎng)建模.為了解決樹(shù)木之外的其他山水物象的自動(dòng)生長(zhǎng)建模,文獻(xiàn)[20-21]通過(guò)關(guān)系增長(zhǎng)語(yǔ)法(Relational Growth Grammars, RGG),結(jié)合一個(gè)相關(guān)性的編程語(yǔ)言——擴(kuò)展L 系統(tǒng)語(yǔ)言(Extended L-Systems Language, XL),實(shí)現(xiàn)了一種基于RGG 綜合特征建模理念的擴(kuò)展L 系統(tǒng).通過(guò)該技術(shù)內(nèi)核的腳本編程語(yǔ)言,類型眾多、紛繁蕪雜的各種水墨山水畫的物象內(nèi)容可通過(guò)模塊化的腳本筆刷和程序繪制的方式繪制出來(lái).
我們的元宇宙形態(tài)的數(shù)字水墨山石、樹(shù)木的生成方式是采用L 系統(tǒng)的筆刷綜合建模機(jī)制進(jìn)行的,L 系統(tǒng)屬于一個(gè)串復(fù)寫系統(tǒng),它通過(guò)編寫一系列字符串來(lái)進(jìn)行樹(shù)模型的構(gòu)造.在描述樹(shù)模型初始狀態(tài)字符串的基礎(chǔ)上,按照一定的替換規(guī)則,對(duì)初始狀態(tài)字符串中的每一個(gè)字符進(jìn)行相關(guān)性替換,重新產(chǎn)生新字符串,并按設(shè)定的循環(huán)次數(shù),重復(fù)這一替換過(guò)程,從而產(chǎn)生樹(shù)模型形態(tài)描述的最終字符串.簡(jiǎn)而言之,L 系統(tǒng)采用了一個(gè)三元式來(lái)表示所需構(gòu)造的樹(shù)模型,即:
其中,V屬于一個(gè)字符集,由字母及其特定符號(hào)組成,W是V中的字符所描述的樹(shù)模型的初始狀態(tài),P表示樹(shù)木生長(zhǎng)的規(guī)則集.
由于L 系統(tǒng)屬于字符串復(fù)寫系統(tǒng),所以可以把字符串解讀成圖元,只要能生成字符串就能生成圖形.在生成樹(shù)等植被模型時(shí),如果給不同字符賦予不同的圖形,最終就可以生成不同形態(tài)的樹(shù)或其他類型的植物.根據(jù)L 系統(tǒng)的定義模式,采用L 系統(tǒng)生成的樹(shù)木模型可以描述為:
其中,A和B屬于字符集合V的構(gòu)成,W為A的初始狀態(tài),P1 和P2 都是生長(zhǎng)規(guī)則,[]為樹(shù)枝生長(zhǎng)方向的角度值.在樹(shù)木模型的生成過(guò)程中,P1、P2 的值始終保持不變,當(dāng)遇到A時(shí),樹(shù)木模型就按照P1 的規(guī)則生成;當(dāng)遇到B 時(shí),樹(shù)木模型就按照P2 的規(guī)則生成.
對(duì)所建立的模型生成方式進(jìn)行更進(jìn)一步的研究,可以發(fā)現(xiàn)樹(shù)模型生成的過(guò)程實(shí)際上是一個(gè)遞歸的過(guò)程.如果用Si表示模型各階段的狀態(tài),Bi表示B變換后的各階段狀態(tài),假設(shè)f(B)=BB,則該樹(shù)木模型可表示為:
綜上所述,采用編程實(shí)現(xiàn)基于L 系統(tǒng)的樹(shù)木模型生成時(shí)可采用遞歸的方法,步驟可分為:
1)通過(guò)判斷遞歸次數(shù)確定是否退出遞歸過(guò)程;
2)確定下一段樹(shù)模型的偏轉(zhuǎn)角度;
3)對(duì)已生成的樹(shù)枝再次以一定的方向和位移量進(jìn)行旋轉(zhuǎn)和移動(dòng),進(jìn)行新樹(shù)枝的生成;
4)以上述幾個(gè)步驟生成的所有樹(shù)模型為整體基準(zhǔn),重新執(zhí)行步驟2)的任務(wù).
樹(shù)模型的生長(zhǎng)過(guò)程是從最初一個(gè)枝干向四周長(zhǎng)出一些小枝,再?gòu)拇蠖鄶?shù)小枝上生出一些更小的嫩枝,如此反復(fù)迭代下去,并在最未端的小嫩枝上長(zhǎng)出形狀相似、方向各異的樹(shù)葉的過(guò)程.因此,不論樹(shù)木的生長(zhǎng)規(guī)則如何,它都可抽象為由樹(shù)干、樹(shù)枝、小枝條、樹(shù)葉、花等部分組成,而樹(shù)葉和花則由多邊網(wǎng)格形來(lái)構(gòu)成.
參數(shù)化建模和筆刷建模,其程序原理大致相同,差異之處在于,筆刷建模是先按照預(yù)設(shè)參數(shù)和隨機(jī)值進(jìn)行預(yù)建模,然后再根據(jù)需要進(jìn)行下一步調(diào)整,參數(shù)化建模是先對(duì)樹(shù)木的各種參數(shù)進(jìn)行初始化設(shè)定然后再開(kāi)始建模.建模的流程如圖1 所示.樹(shù)木的建模有兩種主要模擬方式:拓?fù)浣Y(jié)構(gòu)的模擬和幾何形態(tài)結(jié)構(gòu)的模擬[22].拓?fù)湫螒B(tài)結(jié)構(gòu)的模擬用于表述組成植物各部分之間的關(guān)系以及分布狀況(類似于表達(dá)植物形狀、位置的線框圖);幾何形態(tài)結(jié)構(gòu)的模擬用于表述植物各器官外觀的尺寸、形狀以及角度(類似于表達(dá)植物的實(shí)際三維外觀和形狀效果).L 系統(tǒng)中,植物的創(chuàng)建規(guī)則決定了樹(shù)木的外觀,為了便于論述綜合特征建模,將L系統(tǒng)的建模流程分為三步:
1)采用一般的L 系統(tǒng)規(guī)則表達(dá)樹(shù)木的拓?fù)浣Y(jié)構(gòu);
2)采用擴(kuò)展的L 系統(tǒng)表達(dá)樹(shù)木的幾何特征;
3)將幾何特征的表達(dá)式組合到拓?fù)浣Y(jié)構(gòu)的表達(dá)式中.
以二叉樹(shù)的建模為例進(jìn)一步說(shuō)明:A)建立可描述二叉特點(diǎn)的規(guī)則;B)采用擴(kuò)展的L 系統(tǒng)符號(hào)修改規(guī)則;C)把葉子規(guī)則應(yīng)用于拓?fù)湟?guī)則上.
通過(guò)對(duì)規(guī)則的抽象,容易從外界各種復(fù)雜的形態(tài)中發(fā)現(xiàn)樹(shù)的自身規(guī)律性特征.圖2 所示是筆者繪制的一顆國(guó)畫水墨效果樹(shù)的兩種表達(dá)形態(tài):拓?fù)浣Y(jié)構(gòu)(a)和幾何形態(tài)結(jié)構(gòu)(b).
圖2 元宇宙形態(tài)下的水墨效果樹(shù)的拓?fù)浣Y(jié)構(gòu)(a)和幾何結(jié)構(gòu)(b)
就編程語(yǔ)言的理論研究而言,L 系統(tǒng)已在生動(dòng)逼真的植物形態(tài)創(chuàng)建方面取得了重要成果.不過(guò)L 系統(tǒng)仍然存在諸多不足之處,在解釋L 系統(tǒng)和分支括號(hào)時(shí),模擬的對(duì)象之間只存在兩種可能性關(guān)系,即A 既可直接成為B 的繼承者,也可作為一個(gè)分支被B 引用,但在現(xiàn)實(shí)環(huán)境中,存在諸多種類對(duì)象之間的相互關(guān)系,而且這些關(guān)系都是需要建模的.從2D 或者3D 的創(chuàng)建方面看,L 系統(tǒng)并不是一個(gè)最合適最完善的程序建模工具,尤其是在鑲嵌式細(xì)分建模技術(shù)方面存在先天的不足,這影響了模型面的精細(xì)化和外表皮的豐富性.究其原因,海龜編程括號(hào)內(nèi)的字符串的經(jīng)典解釋充其量也只能在本地產(chǎn)生一個(gè)一維的拓?fù)浣Y(jié)構(gòu),尤其是只有在滿足一定的條件下,拓?fù)浜途W(wǎng)絡(luò)才能被創(chuàng)建.在不同的對(duì)象級(jí)別或者在不同的層級(jí)結(jié)構(gòu)的解算與同步規(guī)范方面,不支持多尺度、多形態(tài)的建模L 系統(tǒng)的是一大缺陷,譬如,對(duì)于生物學(xué)家而言,表現(xiàn)型和基因型的生物機(jī)體不能在同一個(gè)正式的框架中建模.從軟件開(kāi)發(fā)的角度而言,L 系統(tǒng)的編程語(yǔ)言系統(tǒng)不夠直觀,尤其是不支持面向?qū)ο蟮木幊蹋∣OP)風(fēng)格,其代碼的基本形式主要是一些字符串或運(yùn)算符(或一些額外的數(shù)值參數(shù)),無(wú)法提供一種面向?qū)ο蟮牟僮鞲?這正是一種新的“關(guān)系增長(zhǎng)語(yǔ)法(RGG)”和一個(gè)相應(yīng)的編程語(yǔ)言——擴(kuò)展L 系統(tǒng)語(yǔ)言(XL)設(shè)計(jì)的初衷[17].
RGG 是一個(gè)在圖上的替代字符串的重寫系統(tǒng)操作.一個(gè)圖既是一個(gè)結(jié)構(gòu)構(gòu)成的節(jié)點(diǎn),也是連接這些節(jié)點(diǎn)的?。ㄒ喾Q為“邊”),它有循環(huán)子結(jié)構(gòu),之所以被稱為“關(guān)系”語(yǔ)法,是因?yàn)樗试S有幾種類型的邊(關(guān)系).這種擴(kuò)展L 系統(tǒng)的理念基本上解決了上述常規(guī)L 系統(tǒng)存在的問(wèn)題.面向?qū)ο蟮木幊蹋∣OP),是把RGG 作為一種擴(kuò)展的L 系統(tǒng)編程語(yǔ)言,同時(shí)它也是一個(gè)面向?qū)ο蟮腏ava 擴(kuò)展語(yǔ)言,允許Java 對(duì)象作為被改寫的圖節(jié)點(diǎn).一個(gè)擴(kuò)展的L 系統(tǒng)語(yǔ)言程序改寫的圖也可以被視為一般化的場(chǎng)景圖,如大家所熟知的VRML、Java 3D 和Maya 等三維建模語(yǔ)言和建模工具軟件,已經(jīng)可以達(dá)到通用化和綜合性的建模要求,亦即理論上幾乎可以創(chuàng)建所有類型的生物體或非生物體,更有甚者,他們的節(jié)點(diǎn)也可以支持幾何對(duì)象及其變換操作(如平移,旋轉(zhuǎn),縮放等),與三維建模軟件非常類似.一個(gè)擴(kuò)展的L 系統(tǒng)語(yǔ)言規(guī)則的代表是:
類似于L 系統(tǒng)的語(yǔ)言規(guī)則,一個(gè)RGG 通常由這些被運(yùn)用于給定的并行圖規(guī)則組成.一個(gè)基本的RGG 規(guī)則應(yīng)用于特定圖的例子如圖3 所示.圖3 的上半部分介紹了規(guī)則,下半部分描述了規(guī)則的使用方式,這種規(guī)則案例中沒(méi)有上下文,也沒(méi)有條件E和程序編碼P.
圖3 關(guān)系增長(zhǎng)的語(yǔ)法規(guī)則應(yīng)用于一個(gè)圖的情況
基于RGG的應(yīng)用范圍已經(jīng)超越了常規(guī)植物造型的限制,它實(shí)際上就是一種綜合的建模系統(tǒng).除了植物類的建模,它還可以進(jìn)行各種宏觀或微觀的動(dòng)、植物以及其它對(duì)象類型的建模.圖4所示為同一L系統(tǒng)樹(shù)的各種建模形態(tài)——多樹(shù)種的分支仿真建模.在這種框構(gòu)下,把上述基于RGG的擴(kuò)展L系統(tǒng)通過(guò)筆刷建模理論重新進(jìn)行程序上的封裝,編寫出一種繪制式建模的筆刷插件,可以應(yīng)用于水墨山水畫模擬甚至其它領(lǐng)域的仿真模擬.一個(gè)簡(jiǎn)單RGG規(guī)則可運(yùn)用于多模態(tài)建模,如圖5,通過(guò)修改簡(jiǎn)單的語(yǔ)法規(guī)則和相關(guān)參數(shù)就可以快速生成蘑菇、銅鍋、風(fēng)車、酒杯、雨篷傘、海星、海膽、石頭等造型,其可塑性、靈活性不可思議,正是符合了元宇宙形態(tài)下的“萬(wàn)物共生”之理念.
圖4 同一個(gè)L 系統(tǒng)樹(shù)的各種變化——多樹(shù)種的分支建模(基于水墨風(fēng)格)
圖5 一個(gè)簡(jiǎn)單RGG 規(guī)則運(yùn)用于多模態(tài)建模示例
三維綜合特征建模理念的含義是,不僅可以創(chuàng)建各種品類的植物,甚至還可以創(chuàng)建大自然中除了植物以外的幾乎所有物品,這是非常具有吸引力和挑戰(zhàn)性的理念.在該模式下,水墨山水畫創(chuàng)作過(guò)程的一切都在創(chuàng)作者的自由揮灑中成就,如人物、建筑、山、石、樹(shù)、云水和舟車等,在畫者控制的程序筆刷馳騁下,依次呈現(xiàn).某種程度而言,在這個(gè)虛擬三維空間里,人成了三維虛擬環(huán)境中的造物主.正如宇宙大爆炸理論所說(shuō),始于奇點(diǎn),通過(guò)爆炸而萬(wàn)物演化,乃至萬(wàn)物共生,萬(wàn)物生化.老子在《道德經(jīng)》中昭示:“道生一,一生二,二生三,三生萬(wàn)物”[23],正所謂萬(wàn)物之始,莫不始于一,千筆萬(wàn)筆,始于第一筆[13].在元宇宙形態(tài)下,采用數(shù)字化技術(shù)仿真中國(guó)水墨山水畫亦然,亦是始于一點(diǎn),綜合調(diào)整,逐步完善,如通過(guò)定義初始筆刷的位置及其半徑大小、植物的管狀形態(tài)、葉子和花蕊特征等,添加樹(shù)木生長(zhǎng)特征和動(dòng)力學(xué)特征,可以創(chuàng)建元宇宙形態(tài)下的二維和三維世界的絕大多數(shù)物象,這就是萬(wàn)物共生理念的來(lái)源.
基于RGG 的擴(kuò)展L 系統(tǒng)綜合特征建模要解決的問(wèn)題是如何通過(guò)編程或編寫腳本程序語(yǔ)言,把種類眾多、紛繁復(fù)雜的水墨山水畫物象內(nèi)容通過(guò)簡(jiǎn)潔的程序筆刷以簡(jiǎn)便的方式繪制出來(lái).圖6所示為基于綜合特征建模構(gòu)架的“萬(wàn)物共生”的程序筆刷創(chuàng)建流程圖,圖7 所示為綜合建模體系應(yīng)用案例,從左到右依次為樹(shù)和路燈的創(chuàng)建流程.總而言之,綜合建模體系可以高效地創(chuàng)建眾多物象:山石、樹(shù)木、建筑以及各種海洋生物,無(wú)所不能.
圖6 基于綜合特征建模構(gòu)架體系的“萬(wàn)物共生”筆刷創(chuàng)建流程圖
圖7 綜合建模體系應(yīng)用案例(樹(shù)和路燈的創(chuàng)建流程)
為了滿足在三維的元宇宙形態(tài)空間進(jìn)行水墨山水畫的自由揮灑繪制,我們以傳統(tǒng)的寫意水墨藝術(shù)效果為導(dǎo)向,進(jìn)行了數(shù)字水墨山水畫的組件化、模塊化繪制筆刷腳本的編寫,結(jié)合Maya 軟件中的Mel 腳本程序語(yǔ)言編寫水墨特征紋理的樹(shù)木、山石以及包含各種皴法與點(diǎn)法的程序筆刷,最終用粒子冷畫技術(shù)進(jìn)行自定義水墨效果的樹(shù)木、山石的渲染生成.在Maya中,基于Mel 腳本程序語(yǔ)言的筆刷繪制模塊相當(dāng)于一個(gè)水墨效果的繪制容器,在編寫筆刷時(shí),所有變量和參數(shù)都可以儲(chǔ)存該容器中.
編寫Mel 腳本語(yǔ)言格式的繪制筆刷時(shí),須盡量考慮到繪制過(guò)程中可能發(fā)生的各種布爾值或變量,如筆刷的類型及寬度大小、繪制對(duì)象的初始值、是否啟用光照、是否開(kāi)啟紋理等等.以下為筆刷的控制參數(shù)示例:
生成樹(shù)木筆刷的控制參數(shù)可分為樹(shù)干、樹(shù)枝、小枝、樹(shù)葉、花、芽等6 個(gè)樹(shù)木器官模塊,這些模塊可根據(jù)實(shí)際需要而靈活調(diào)用.通常,除了花、草以外,樹(shù)木生成的流程最多用到樹(shù)葉為止,芽、花模塊較少啟用.每個(gè)模塊又可以根據(jù)需要進(jìn)行顏色、形狀、大小、疏密和扭曲度等各種值的設(shè)定.以下為樹(shù)木生成筆刷的程序參數(shù)示例:
山石的生成筆刷主要解決數(shù)字水墨山水畫繪制中的山石造型和渲染問(wèn)題.首先定義粒子筆劃“管狀”的啟用狀態(tài)及繪制筆刷的長(zhǎng)度和寬度,然后根據(jù)水墨藝術(shù)效果(小寫意或大寫意水墨效果)的需要,設(shè)定粒子“管狀”的軟度、密度、邊緣的濃淡變化(淡入淡出),再根據(jù)水墨山石的皴法特征,適當(dāng)調(diào)用合成紋理.以下為山石生成的筆刷程序參數(shù)示例:
以上列舉了Mel 筆刷腳本程序中的山石、樹(shù)木等各種程序控制參數(shù),這些參數(shù)通常都包含在一個(gè)稱之為“PaintEffects”(筆刷效果)的打包筆刷容器里,暫時(shí)不需要使用或尚未使用的參數(shù)就用布爾值關(guān)閉,需要使用的才開(kāi)啟.根據(jù)水墨山水各種樹(shù)木、山石的造型和渲染需要,把某些水墨效果特征的樹(shù)木或山石進(jìn)行單獨(dú)“打包”,形成一組組水墨筆刷插件,采用這些編譯和打包以后的筆刷插件就可以在虛擬的元宇宙數(shù)字三維空間進(jìn)行自由繪制、創(chuàng)作.繪制時(shí),這些程序筆刷可以根據(jù)藝術(shù)創(chuàng)作的需要進(jìn)行單獨(dú)或組合使用.圖8 所示為筆者開(kāi)發(fā)的山水畫各種水墨效果的構(gòu)成——樹(shù)木、山石、點(diǎn)、皴等諸多要素的筆刷插件.
傳統(tǒng)的山水畫空間營(yíng)構(gòu)理論最精辟的莫過(guò)于宋代沈括的“以大觀小”.沈括認(rèn)為中國(guó)山水畫畫家在描繪山水時(shí),并非站在一個(gè)固定點(diǎn)來(lái)觀察山峰,而是用畫家的心靈之眼籠罩全景,審視全境,以整體大局的視野來(lái)統(tǒng)帥局部視角.所謂的“以大觀小”,用現(xiàn)代繪畫語(yǔ)境來(lái)描述就是“散點(diǎn)透視”法,“畫家的眼睛不是從固定角度集中于一個(gè)透視的焦點(diǎn),而是流動(dòng)著飄瞥上下四方,一目千里,把握全境的陰陽(yáng)開(kāi)闔、高下起伏的節(jié)奏”[6].
在元宇宙虛擬三維空間,要完全模擬傳統(tǒng)山水畫的“散點(diǎn)透視”法構(gòu)圖和靈活處理山水畫的空間透視關(guān)系,采用平行投影的相機(jī)視圖進(jìn)行山水畫的空間構(gòu)圖是一個(gè)較有可行性的解決方案.平行投影屬于正交視圖,沒(méi)有透視變化.根據(jù)投影方向的不同,平行投影可分為正投影和斜投影兩大類.假設(shè)投影方向與投影平面垂直,即投影平面與投影方向的法向量方向相同,那么這種投影就稱之為正平行投影,簡(jiǎn)稱正投影.正投影通常用于表示物體的三視圖.三視圖能準(zhǔn)確地反映物體的角度和長(zhǎng)度.三視圖的投影方向分別取x、y、z軸方向,投影平面分別垂直于x、y、z軸的正投影,分為前視圖、側(cè)視圖和頂視圖三種.由于三視圖屬于正投影視圖,投影方向不與投影平面相交,因而無(wú)法產(chǎn)生3D 縱深感.斜投影視圖則正好可以彌補(bǔ)以上不足.根據(jù)實(shí)際應(yīng)用需要,斜投影的調(diào)整角度可以在5 到30 度之間任意調(diào)整,通過(guò)調(diào)整y軸的左右旋轉(zhuǎn)角度,可最終達(dá)到斜投影視圖要求.圖9 為同一畫面內(nèi)容在不同視圖的呈現(xiàn).左上和右上為斜投影相機(jī)視圖,左下和右下為透視圖.由圖9 可知,斜投影視圖不產(chǎn)生近大遠(yuǎn)小的透視變化,也缺乏空間縱深感.
圖9 斜投影視圖和透視圖的渲染對(duì)比
把投影方向定義為斜投影視圖的相機(jī)中心線,把投影平面定義為經(jīng)過(guò)世界坐標(biāo)系X軸和Y軸的平面.假設(shè)有兩組數(shù)量、大小都一致的樹(shù),左邊的樹(shù)采用透視圖原理成像,右邊的樹(shù)采用斜投影視圖原理成像,可以發(fā)現(xiàn),采用斜投影視圖繪制的樹(shù)木由于沒(méi)有消失點(diǎn)現(xiàn)象,物體前后之間的大小完全一致,沒(méi)有變化.由此可見(jiàn),只要控制好樹(shù)木之間的間距,完全可以克服因透視圖的“近大遠(yuǎn)小”現(xiàn)象而產(chǎn)生的前面樹(shù)木遮擋后面樹(shù)木的問(wèn)題,因此斜投影視圖完全可以滿足傳統(tǒng)山水畫“散點(diǎn)透視”的空間營(yíng)構(gòu)理論要求.通過(guò)斜投影成像的物體與通過(guò)透視成像的物體的對(duì)照見(jiàn)圖10.圖10的左側(cè)為透視視圖,產(chǎn)生“近大遠(yuǎn)小”變化,不適用于山水畫構(gòu)圖;右側(cè)為斜投影視圖,不產(chǎn)生“近大遠(yuǎn)小”的透視變化,適于山水畫構(gòu)圖.
圖10 通過(guò)斜投影成像的物體與通過(guò)透視成像的物體的對(duì)照?qǐng)D
以上是利用投影視圖中的斜投影相機(jī)模式在元宇宙空間進(jìn)行數(shù)字山水畫繪制的例子.此外,還有一種比較常規(guī)的方法是直接在元宇宙空間進(jìn)行三維數(shù)字水墨山水畫創(chuàng)作,實(shí)質(zhì)上,這是一種以透視圖模擬斜投影視圖的創(chuàng)作方式,采用這種方法需要解決2個(gè)難題:一是為了解決“近大遠(yuǎn)小”的透視現(xiàn)象,在視覺(jué)上大小近似的物體,如果有前、后距離上的差別,必須把后面的物體等比放大一些;二是為了模擬山水畫中的山石或樹(shù)木前后放置、層層堆疊的效果,必須把縱深的物體從近到遠(yuǎn)依次抬高放置,從而達(dá)到山水畫“三遠(yuǎn)”中的“高遠(yuǎn)”視覺(jué)效果.如圖11所示,為了讓圖11(b)(透視圖)中的樹(shù)木前后看起來(lái)大小一致,必須把后面的樹(shù)木依次放大,結(jié)果如圖11(a)(正投影左視圖)所示,亦即,要讓有前后關(guān)系排列的物體在透視圖中看起來(lái)大小一致,必須根據(jù)“近小遠(yuǎn)大”的原則縮放物體.
圖11 在元宇宙空間中模擬斜投影相機(jī)視圖(按“近小遠(yuǎn)大”的原則排列內(nèi)容)
傳統(tǒng)的水墨山水畫繪制分為構(gòu)思、繪制、落款三大步驟.構(gòu)思旨在規(guī)劃創(chuàng)作題材、內(nèi)容、構(gòu)圖、預(yù)期意境設(shè)想等;繪制是按勾、皴、擦、染、點(diǎn)等順序下筆作畫;落款是指在畫面適當(dāng)?shù)目瞻滋庮}上詩(shī)詞、創(chuàng)作時(shí)間、作者姓名等,并蓋上印章.其中,構(gòu)思、繪制是最重要的兩大步驟.一幅山水畫作品的成敗往往取決于形式、內(nèi)容、題材與風(fēng)格.形式亦稱表現(xiàn),即上述勾、擦、染、點(diǎn)等與作品內(nèi)容表達(dá)相關(guān)的視覺(jué)表現(xiàn)手法.山水畫的繪制對(duì)象或內(nèi)容不外乎樹(shù)木、山石、云水、人物、舟車、建筑等.風(fēng)格則是內(nèi)容與形式相互影響、相互作用,加上繪制者個(gè)人主觀意愿和審美傾向而產(chǎn)生的一種表現(xiàn)形式上的總體審美意蘊(yùn).
三維數(shù)字水墨山水畫的繪制基本上也是遵循傳統(tǒng)山水畫的創(chuàng)作流程,但由于數(shù)字三維圖形的最終顯示完全依賴于渲染技術(shù),因此我們結(jié)合傳統(tǒng)水墨山水畫的創(chuàng)作步驟,提出了三維數(shù)字水墨山水畫創(chuàng)作的四大流程:構(gòu)思、三維繪制、渲染、落款,如圖12 所示.然而,在實(shí)際進(jìn)行數(shù)字藝術(shù)創(chuàng)作時(shí)不能完全按照傳統(tǒng)的勾、擦、染、點(diǎn)繪制,只能根據(jù)需要,按照勾、皴、擦、染、點(diǎn)的技法特征,把繪制內(nèi)容(如樹(shù)木、山石、云水、人物、舟車、建筑等)進(jìn)行模塊化處理,并對(duì)形式、內(nèi)容、風(fēng)格進(jìn)行統(tǒng)籌整合處理,以編寫成模塊化筆刷插件的方式進(jìn)行三維繪制.
圖12 三維數(shù)字水墨山水畫的繪制流程
有一定的傳統(tǒng)中國(guó)畫創(chuàng)作經(jīng)歷,又有一些計(jì)算機(jī)操作經(jīng)驗(yàn)的人,采用筆者研制的三維數(shù)字水墨山水畫的模塊化繪制組件,就可以較為快速和成功地完成一幅三維數(shù)字水墨山水畫的創(chuàng)作.對(duì)于缺乏傳統(tǒng)中國(guó)畫創(chuàng)作經(jīng)歷,也沒(méi)有電腦操作經(jīng)驗(yàn)的人,筆者開(kāi)發(fā)了一系列基于腳本筆刷集合的數(shù)字水墨山水畫的作品樣例或模板,其中包含了完整的主題構(gòu)思和繪畫內(nèi)容,他們通過(guò)該模板,只要簡(jiǎn)單改變樹(shù)木山石的形狀外觀、分布數(shù)量、體積大小等變量值,調(diào)整模板中的樹(shù)木品種類型和山石皴法紋理,以及調(diào)整濃、淡、輕、重和洇化等水墨渲染效果的參數(shù)值,就可以在元宇宙空間創(chuàng)作出與模板完全不一樣的三維數(shù)字水墨山水畫.圖13 為三維數(shù)字水墨山水畫系列模板.圖14 是采用模塊化程序筆刷完整繪制的一幅基于小寫意風(fēng)格的三維數(shù)字水墨山水畫小品.
圖13 三維數(shù)字水墨山水畫的系列模板(成品或半成品)
圖14 一幅完整的三維數(shù)字水墨山水畫作品
本文提出了基于RGG 擴(kuò)展L 系統(tǒng)的“萬(wàn)物建?!迸c元宇宙的“萬(wàn)物共生”的理念,以及三維數(shù)字水墨山水畫在三維虛擬的元宇宙空間繪制的思路.提出了基于模塊化程序筆刷理念的水墨山水畫繪制解決方案,并開(kāi)發(fā)了一系列基于程序腳本語(yǔ)言的樹(shù)木、山石及若干皴法紋理特征的三維筆刷庫(kù),成功解決了寫意水墨山水畫在三維數(shù)字空間繪制的難題,并取得了極佳的實(shí)時(shí)渲染與仿真效果.此外,采用斜投影視圖原理對(duì)傳統(tǒng)中國(guó)山水畫的空間營(yíng)構(gòu)理論(透視空間問(wèn)題)進(jìn)行了分析和研究,較好地解決了在虛擬的三維元宇宙空間無(wú)法模擬傳統(tǒng)山水畫的“散點(diǎn)透視”問(wèn)題.最后介紹了三維數(shù)字水墨山水畫的繪制流程,把繪制內(nèi)容按勾、皴、擦、染、點(diǎn)等技法特征進(jìn)行模塊化處理,從而以模塊化的方式把風(fēng)格、內(nèi)容、形式統(tǒng)一起來(lái),呈現(xiàn)一個(gè)元宇宙形態(tài)的三維數(shù)字水墨空間.從萬(wàn)物互聯(lián)走向萬(wàn)物共生是元宇宙的未來(lái)發(fā)展趨勢(shì),數(shù)字水墨山水畫所呈現(xiàn)之山山水水,本身就是現(xiàn)實(shí)世界在藝術(shù)家或技術(shù)專家內(nèi)心的意象化、理想化的投影,這種“萬(wàn)物共生”的水墨畫繪制理念正是元宇宙形態(tài)下的未來(lái)藝術(shù)創(chuàng)作、體驗(yàn)的趨勢(shì)和模式.